Anda di halaman 1dari 36

Pertemuan 9

Pertemuan 10
KONSEP INTERAKSI
• Definisi, Implementasi, Contoh kasus
• Interaksi dalam konteks sistem operasi mengacu pada proses komunikasi dan
pertukaran informasi antara komponen sistem operasi, baik itu proses (program
yang sedang berjalan), pengguna, atau perangkat keras yang terhubung dengan
sistem operasi. Interaksi ini penting dalam memastikan kerja yang efisien,
koordinasi, dan komunikasi yang tepat antara berbagai elemen sistem operasi.
Dalam konteks sistem operasi, interaksi dapat terjadi dalam beberapa bentuk:
1. Interaksi Antar proses: Ini merujuk pada komunikasi dan pertukaran
data antara proses yang berjalan dalam sistem operasi. Proses dapat berbagi data melalui
variabel bersama (shared variables), menggunakan pipes untuk mengirim data secara
sekuensial, atau menggunakan mekanisme message passing untuk mengirim pesan antar
proses.
2. Interaksi Pengguna dengan Sistem Operasi: Ini melibatkan komunikasi antara
pengguna dan sistem operasi. Pengguna dapat berinteraksi dengan sistem operasi
melalui antarmuka pengguna seperti antarmuka baris perintah (command-line
interface) atau antarmuka pengguna grafis (graphical user interface). Pengguna
dapat memasukkan perintah, mengakses file, mengelola proses, atau melakukan
tindakan lainnya menggunakan interaksi ini.
3. Interaksi Antar perangkat Keras dengan Sistem Operasi: Ini mencakup
komunikasi antara perangkat keras yang terhubung dengan sistem operasi, seperti
printer, keyboard, mouse, monitor, dan lain-lain. Sistem operasi harus dapat
mengenali perangkat keras yang terhubung, menggunakan driver perangkat keras
yang sesuai, dan menyediakan antarmuka aplikasi perangkat keras (hardware
application interface) agar perangkat keras dapat berinteraksi dengan sistem
operasi dan aplikasi yang berjalan di atasnya.
Interaksi dalam system operasi sangat penting untuk mengkoordinasikan operasi dan
memastikan kosistensi keamanan, dan efisiensi dalam penggunaan sumber daya sistem.
Melalui interaksi ini, sistem operasi dapat mengelola proses, mengoordinasikan akses ke
perangkat keras, dan menyediakan lingkungan yang interaktif bagi pengguna untuk
berinteraksi dengan sistem.
Tujuan interaksi dalam sistem operasi
 Tujuan interaksi dalam sistem operasi adalah untuk memungkinkan komunikasi
yang efektif dan koordinasi yang baik antara komponen-komponen yang terlibat
dalam sistem operasi. Berikut adalah beberapa tujuan kunci dari interaksi dalam
sistem operasi:
Berikut adalah beberapa tujuan kunci dari interaksi dalam sistem operasi:
1. Efisiensi: Interaksi dalam sistem operasi bertujuan untuk mencapai efisiensi dalam
penggunaan sumber daya. Sistem operasi harus dapat mengelola alokasi sumber
daya seperti CPU, memori, dan perangkat keras dengan efisien. Melalui interaksi
yang baik antarproses dan antara perangkat keras dengan sistem operasi,
penggunaan sumber daya dapat dioptimalkan untuk meningkatkan kinerja sistem
secara keseluruhan.
2. Koordinasi: Interaksi dalam sistem operasi diperlukan untuk mencapai koordinasi
yang baik antara proses-proses yang berjalan. Sistem operasi harus dapat mengatur
dan mengendalikan akses bersama terhadap sumber daya yang dibutuhkan oleh
proses-proses tersebut. Selain itu, interaksi juga memungkinkan proses-proses
untuk berkomunikasi dan berbagi informasi, sehingga koordinasi tugas-tugas
dapat dilakukan dengan efektif.
3. Komunikasi: Salah satu tujuan utama interaksi dalam sistem operasi adalah
memungkinkan komunikasi yang efektif antara pengguna dengan sistem operasi
dan antara proses-proses yang berjalan. Pengguna dapat memberikan perintah
dan menerima tanggapan dari sistem operasi melalui antarmuka pengguna. Selain
itu, proses-proses dalam sistem operasi juga dapat berkomunikasi satu sama lain
melalui mekanisme interaksi yang disediakan oleh sistem operasi, seperti shared
memory, message passing, atau pipes.
4. Keamanan: Tujuan interaksi dalam sistem operasi juga mencakup keamanan.
Sistem operasi harus dapat menjaga keamanan informasi dan sumber daya dengan
memastikan bahwa hanya entitas yang berwenang yang dapat mengakses dan
menggunakan sumber daya tersebut. Interaksi dalam sistem operasi melibatkan
mekanisme autentikasi, otorisasi, dan pengelolaan hak akses untuk melindungi
sistem dari ancaman keamanan.
5. Ketergantungan: Interaksi dalam sistem operasi juga bertujuan untuk mengelola
ketergantungan antara komponen-komponen sistem. Misalnya, sistem operasi
harus dapat mengelola ketergantungan antara proses-proses yang saling
membutuhkan, antara aplikasi dengan perangkat keras, dan antara perangkat
keras dengan driver yang sesuai. Dengan mengelola ketergantungan ini, sistem
operasi dapat menjaga integritas dan konsistensi sistem secara keseluruhan
Dalam sistem operasi, terdapat beberapa jenis interaksi yang terjadi antara komponen-
komponen yang terlibat. Berikut adalah beberapa jenis interaksi utama dalam sistem
operasi:
1. Interaksi Antarproses: Ini melibatkan komunikasi dan pertukaran data antara
proses- proses yang berjalan dalam sistem operasi. Interaksi antarproses
memungkinkan proses-proses untuk berbagi informasi, berkoordinasi, dan saling
berkomunikasi. Beberapa mekanisme interaksi antarproses yang umum digunakan
adalah shared memory (memori bersama), message passing (pengiriman pesan),
dan pipes (saluran komunikasi).
2. Interaksi Pengguna dengan Sistem Operasi: Ini mencakup interaksi antara
pengguna dan sistem operasi melalui antarmuka pengguna. Pengguna dapat
memberikan perintah, mengakses file dan direktori, menjalankan program, atau
melakukan tindakan lainnya menggunakan antarmuka pengguna. Antarmuka
pengguna dapat berupa command-line interface (CLI) yang menggunakan
perintah teks atau graphical user interface (GUI) yang menggunakan elemen visual
seperti ikon, menu, dan jendela.
3. Interaksi Antarperangkat Keras dengan Sistem Operasi: Ini melibatkan
komunikasi antara perangkat keras yang terhubung dengan sistem operasi.
Sistem operasi harus dapat mendeteksi perangkat keras yang terhubung, mengatur
penggunaan sumber daya perangkat keras, dan menyediakan antarmuka yang
sesuai untuk berinteraksi dengan perangkat keras. Contoh interaksi ini adalah
penggunaan driver perangkat keras untuk mengontrol dan mengelola perangkat
keras seperti keyboard, mouse, printer, monitor, dan jaringan.
4. Interaksi Jaringan: Ini melibatkan komunikasi antara sistem operasi dengan
jaringan komputer. Sistem operasi harus dapat mengelola protokol jaringan,
mengirim dan menerima data melalui jaringan, dan menyediakan layanan jaringan
seperti akses internet, transfer file, atau komunikasi jarak jauh. Interaksi jaringan
melibatkan protokol seperti TCP/IP, UDP, HTTP, FTP, dan lainnya.
5. Interaksi File dan Sistem Penyimpanan: Ini melibatkan interaksi antara sistem
operasi dengan sistem penyimpanan, termasuk file dan direktori. Sistem operasi
harus dapat membuat, membaca, menulis, dan menghapus file, serta mengatur hak
akses, struktur direktori, dan sistem berkas. Interaksi ini melibatkan sistem
pengelolaan file dan sistem berkas yang ada dalam sistem operasi.
6. Interaksi dengan Layanan dan Perangkat Tambahan: Sistem operasi dapat
berinteraksi dengan layanan dan perangkat tambahan seperti sistem keamanan,
antarmuka pengguna khusus, server basis data, perangkat lunak aplikasi, atau
perangkat keras khusus. Interaksi ini memungkinkan sistem operasi untuk
berintegrasi dengan berbagai layanan dan perangkat tambahan untuk memenuhi
kebutuhan spesifik.
Implementasi konsep interaksi
Implementasi konsep interaksi dalam system operasi melibatkan penggunaan berbagai
mekanisme dan teknik yang mendukung komunikasi dan interaksi antara komponen-
komponen dalam sistem operasi. Berikut adalah beberapa contoh implementasi dari
konsep interaksi dalam sistem operasi:
1. Interaksi Antarproses:
 Sinyal dan Sistem Interrupsi: Sistem operasi menggunakan sinyal dan
mekanisme interupsi untuk mengirim sinyal ke proses lain atau
menginterupsi proses yang sedang berjalan.
 Variabel Bersama (Shared Variables): Proses dapat berinteraksi melalui
penggunaan variabel bersama yang diakses dan dimodifikasi oleh beberapa
proses secara bersamaan.
 Mekanisme Sinkronisasi: Sistem operasi menyediakan mekanisme seperti
semafor, mutex, monitor, dan lainnya untuk mengatur sinkronisasi antara
proses-proses yang berinteraksi, sehingga menghindari kondisi deadlock
atau starvation.
2. Interaksi Pengguna dengan Sistem Operasi:
 Antarmuka Pengguna: Sistem operasi menyediakan antarmuka pengguna,
baik berupa baris perintah (command line interface) maupun antarmuka
grafis (graphical user interface), yang memungkinkan pengguna
berinteraksi dengan sistem operasi melalui perintah atau interaksi visual.
 Perintah Sistem Operasi: Pengguna dapat berinteraksi dengan sistem
operasi melalui penggunaan perintah-perintah sistem operasi yang
disediakan, seperti perintah untuk menjalankan program, mengelola file,
mengatur pengaturan sistem, dan sebagainya.
 Pemrosesan Data: Sistem operasi menyediakan mekanisme untuk
pengolahan data yang melibatkan interaksi pengguna, seperti pemilihan
data melalui input pengguna, pemrosesan data, dan output hasilnya kepada
pengguna.

3. Interaksi Antarperangkat Keras dengan Sistem Operasi:


 Pengenalan Perangkat Keras: Sistem operasi memiliki mekanisme untuk
mendeteksi dan mengenali perangkat keras yang terhubung ke sistem, seperti
proses pengenalan driver perangkat keras dan identifikasi perangkat keras yang
tersedia.
 Penggunaan Driver Perangkat Keras: Sistem operasi menggunakan driver
perangkat keras yang sesuai untuk menghubungkan dan mengontrol perangkat
keras dengan sistem operasi, sehingga memungkinkan interaksi yang harmonis.
 Antarmuka Aplikasi Perangkat Keras: Sistem operasi menyediakan antarmuka
aplikasi perangkat keras (Application Programming Interface/API) yang
memungkinkan pengembang perangkat lunak untuk berinteraksi dengan
perangkat keras melalui pemanggilan fungsi dan metode yang ditentukan
contoh kasus implementasi konsep interaksi dalam sistem operasi
Kasus: Sistem Operasi Pemesanan Tiket Online
Deskripsi: Sebuah sistem operasi digunakan untuk mendukung pemesanan tiket online di
sebuah perusahaan transportasi. Sistem ini melibatkan interaksi antara proses, pengguna,
dan perangkat keras.
1. Interaksi Antarproses:
 Proses Pemesanan Tiket menerima permintaan dari pengguna dan
menginisiasi proses pembayaran.
 Proses Pembayaran berkomunikasi dengan sistem pembayaran
online untuk memvalidasi dan menyelesaikan pembayaran.
 Setelah pembayaran berhasil, Proses Pemesanan Tiket berkomunikasi
dengan Proses E-Tiket Generator untuk menghasilkan tiket elektronik.
 Proses E-Tiket Generator menghasilkan dan menyimpan tiket elektronik
yang akan digunakan oleh pengguna.
2. Interaksi Pengguna dengan Sistem Operasi:
 Pengguna menggunakan antarmuka pengguna (misalnya, aplikasi web)
untuk memasukkan detail perjalanan, seperti tujuan, tanggal, dan jumlah
penumpang.
 Sistem operasi menampilkan opsi perjalanan yang tersedia berdasarkan
input pengguna.
 Pengguna memilih opsi perjalanan dan melakukan pembayaran melalui
antarmuka pembayaran yang disediakan oleh sistem operasi.
 Setelah pembayaran berhasil, sistem operasi memberikan konfirmasi
kepada pengguna dan mengirimkan tiket elektronik ke email pengguna.
3. Interaksi Antarperangkat Keras dengan Sistem Operasi:
 System operasi mendeteksi dan mengenali perangkat kesar seperti printer,
yg digunakan untuk mencetak tiket fisik (opsional).
(opsional).
 Sistem operasi menggunakan driver printer untuk
menghubungkan sistem operasi dengan perangkat keras printer.
 Ketika pengguna memilih opsi untuk mencetak tiket fisik, sistem operasi
mengirimkan instruksi cetak ke perangkat keras printer
Dalam kasus ini, konsep interaksi dalam sistem operasi memungkinkan berbagai proses,
antarmuka pengguna, dan perangkat keras berinteraksi secara sinergis untuk mengelola
dan memenuhi pemesanan tiket secara efisien dan akurat. Interaksi antarproses
memastikan alur kerja yang koheren, interaksi pengguna dengan sistem operasi
memungkinkan pengguna untuk melakukan pemesanan dengan mudah, dan interaksi
antara sistem operasi dan perangkat keras memfasilitasi output tiket elektronik atau
cetakan fisik jika diperlukan.
Pertanyaan untuk Kasus Penjualan Tiket Online:
1. Bagaimana interaksi antarproses digunakan dalam sistem penjualan tiket online
ini? Bagaimana proses-proses yang terlibat berkomunikasi dan berkoordinasi satu
sama lain?
2. Bagaimana pengguna berinteraksi dengan sistem penjualan tiket online ini?
Apakah menggunakan antarmuka pengguna berbasis web atau aplikasi khusus?
Bagaimana proses pemesanan tiket dilakukan oleh pengguna?
3. Bagaimana sistem penjualan tiket online ini berinteraksi dengan perangkat keras
seperti server dan perangkat jaringan? Bagaimana penggunaan perangkat keras
ini mempengaruhi kinerja sistem penjualan tiket online?
4. Bagaimana sistem penjualan tiket online ini berinteraksi dengan sistem
pembayaran? Bagaimana proses pembayaran tiket dilakukan oleh pengguna dan
bagaimana sistem berkomunikasi dengan penyedia layanan pembayaran?
5. Bagaimana sistem penjualan tiket online ini berinteraksi dengan sistem manajemen
inventaris tiket? Bagaimana sistem memastikan ketersediaan tiket, melakukan
reservasi, dan mengurangi stok tiket setelah pembelian?
6. Bagaimana sistem penjualan tiket online ini berinteraksi dengan pengguna melalui
pemberian konfirmasi dan tiket elektronik? Apakah sistem mengirimkan
konfirmasi pemesanan dan tiket elektronik melalui email atau pesan teks?
7. Bagaimana sistem penjualan tiket online ini berinteraksi dengan sistem pemasaran
dan promosi? Bagaimana informasi tentang acara dan tiket dipublikasikan kepada
pengguna? Apakah sistem memiliki integrasi dengan platform media sosial atau
situs web lainnya?
8. Bagaimana sistem penjualan tiket online ini mengelola keamanan dan privasi data
pengguna? Bagaimana sistem berinteraksi dengan pengguna dalam hal otorisasi,
autentikasi, dan perlindungan data pribadi? Apakah ada langkah-langkah
keamanan tambahan yang diterapkan, seperti enkripsi data?
9. Bagaimana sistem penjualan tiket online ini berinteraksi dengan sistem pengiriman
tiket fisik, jika ada? Bagaimana sistem mengatur pengiriman tiket fisik kepada
pengguna setelah pembelian? Apakah ada pilihan pengiriman seperti pos, kurir,
atau pengambilan langsung?
10. Bagaimana sistem penjualan tiket online ini berinteraksi dengan sistem dukungan
pelanggan? Bagaimana sistem menerima permintaan bantuan, menangani keluhan,
dan berkomunikasi dengan pengguna dalam hal pertanyaan atau masalah terkait
penjualan tiket? Apakah ada fitur bantuan langsung melalui chat atau panggilan
telepon?
Jawaban
1. Interaksi antarproses digunakan dalam sistem penjualan tiket online untuk
memfasilitasi pertukaran data dan koordinasi antara proses-proses yang terlibat.
Misalnya, proses pemesanan tiket akan berinteraksi dengan proses verifikasi
pembayaran untuk memastikan pembayaran berhasil sebelum mengkonfirmasi
pemesanan tiket kepada pengguna.
2. Pengguna dapat berinteraksi dengan sistem penjualan tiket online melalui
antarmuka pengguna berbasis web. Mereka dapat mengakses situs web atau
aplikasi khusus, mencari acara yang diminati, memilih jumlah tiket, dan
melakukan pembayaran untuk menyelesaikan proses pemesanan tiket.
3. Sistem penjualan tiket online berinteraksi dengan perangkat keras seperti server
untuk menyimpan dan mengelola data transaksi, serta perangkat jaringan untuk
mengirimkan informasi antara pengguna dan sistem. Penggunaan server yang
handal dan koneksi jaringan yang stabil sangat penting dalam menjaga kinerja dan
responsivitas sistem.
4. Sistem penjualan tiket online berinteraksi dengan sistem pembayaran, seperti
penyedia gateway pembayaran atau sistem perbankan, untuk memproses transaksi
pembayaran. Pengguna dapat memilih metode pembayaran yang tersedia, seperti
kartu kredit atau transfer bank, dan sistem akan berkomunikasi dengan penyedia
layanan pembayaran untuk memvalidasi dan menyelesaikan transaksi.
5. Sistem penjualan tiket online berinteraksi dengan sistem manajemen inventaris
tiket untuk memastikan ketersediaan tiket. Setelah pembelian tiket, sistem akan
mengurangi stok tiket yang tersedia, sehingga menghindari penjualan tiket yang
berlebihan dan memastikan bahwa tiket yang tersedia mencerminkan jumlah yang
sebenarnya.
6. Sistem penjualan tiket online ini berinteraksi dengan pengguna melalui pemberian
konfirmasi dan tiket elektronik. Setelah pengguna berhasil melakukan pemesanan
tiket, sistem akan mengirimkan konfirmasi pemesanan dan tiket elektronik melalui
email yang terdaftar oleh pengguna. Email tersebut akan berisi rincian pemesanan,
nomor tiket, serta tautan atau lampiran untuk mengunduh tiket elektronik.
7. Sistem penjualan tiket online ini berinteraksi dengan sistem pemasaran dan
promosi dengan mempublikasikan informasi tentang acara dan tiket kepada
pengguna. Informasi acara dan tiket dapat dipromosikan melalui situs web resmi,
media sosial, portal acara, atau mitra pemasaran lainnya. Sistem dapat memiliki
integrasi dengan platform media sosial seperti Facebook, Instagram, atau Twitter
untuk membagikan informasi dan menjangkau lebih banyak calon pembeli tiket.
8. Sistem penjualan tiket online ini memprioritaskan keamanan dan privasi data
pengguna. Untuk itu, sistem berinteraksi dengan pengguna melalui otorisasi dan
autentikasi yang ketat. Pengguna harus membuat akun terdaftar dan masuk
menggunakan kombinasi username dan password yang aman. Selain itu, sistem
juga dapat menerapkan enkripsi data untuk melindungi informasi pribadi
pengguna, seperti detail pembayaran dan informasi identitas.
9. Jika ada pengiriman tiket fisik, sistem penjualan tiket online ini berinteraksi
dengan sistem pengiriman untuk mengatur pengiriman tiket kepada pengguna
setelah pembelian. Pengguna dapat memilih opsi pengiriman yang tersedia, seperti
pengiriman melalui pos atau kurir, atau pengambilan langsung di lokasi acara.
Sistem akan memproses permintaan pengiriman dan memberikan pembaruan
status pengiriman kepada pengguna.
10. Sistem penjualan tiket online ini berinteraksi dengan sistem dukungan pelanggan
untuk menerima permintaan bantuan, menangani keluhan, dan berkomunikasi
dengan pengguna terkait pertanyaan atau masalah terkait penjualan tiket. Sistem
dapat menyediakan fitur dukungan pelanggan melalui chat langsung, formulir
kontak, atau panggilan telepon, di mana tim dukungan pelanggan siap membantu
pengguna dalam hal pertanyaan, kendala teknis, atau permintaan pengembalian
tiket jika sesuai

Pertemuan 11
Manajemen Memori
Pertemuan 12
VIRTUAL MEMORY & PAGE REPLACEMENT
VIRTUAL MEMORI
 Virtual Memory : suatu teknik yang memisahkan antara memori logis dan memori
fisik dalam eksekusi suatu proses
 Prinsip Virtual Memory : “Kecepatan maksimum eksekusi proses di memori virtual
dapat sama, tetapi tidak pernah melampaui kecepatan eksekusi proses yang sama
di sistem tanpa menggunakan memori virtual.”
 Dengan kata lain virtual memory digunakan untuk menampung program dan data
yang tidak cukup di memory fisik
 Keuntungan Virtual Memory :
 Ruang menjadi lebih leluasa karena berkurangnya memori fisik yang
digunakan.
 Lebih responsif dan bertambahnya jumlah user program yang dapat
dilayani.
 Virtual Memory dapat melebihi daya tampung dari memori utama yang
tersedia.
 Implementasi Virtual Memory dapat dilakukan dengan dua cara :
 Demand Paging
 Demand Segmentation
DEMAND PAGING
 Demand Paging è permintaan pemberian halaman (page)
 Dalam Demand Paging digunakan metode lazy swapper
 Lazy swapper è tidak pernah menukar sebuah halaman ke dalam memori
utama kecuali halaman tersebut diperlukan.
 Sistem Demand Paging sama halnya dengan sistem paging dengan swapping
 Dalam melakukan pengecekan pada halaman yang dibutuhkan oleh suatu proses,
terdapat tiga kemungkinan kasus yang dapat terjadi, yaitu:
 Halaman ada dan sudah langsung berada di memori utama à statusnya
adalah valid ("v" atau "1")
 Halaman ada tetapi belum berada di memori utama atau dengan kata lain
halaman masih berada di disk sekunder à statusnya adalah tidak
valid/invalid ("i" atau "0")
 Halaman benar - benar tidak ada, baik di memori utama maupun di disk
sekunder (invalid reference) à statusnya adalah tidak valid/invalid ("i" atau
"0")
DEMAND PAGING : Skema Bit Valid – Tdk Valid
 Skema bit valid - tidak valid à menentukan halaman mana yang ada dan halaman
mana yang tidak ada di dalam memori utama.
 Pengaturan bit dilakukan sebagai berikut:
 Bit = 1 berarti halaman berada di memori utama
 Bit = 0 berarti halaman tidak berada di memori utama
“Apabila ternyata hasil dari mengartikan alamat melalui page table menghasilkan
bit halaman yang bernilai 0, maka akan menyebabkan terjadinya PAGE FAULT .”
 Page fault adalah interupsi yang terjadi ketika halaman yang diminta/dibutuhkan
oleh suatu proses tidak berada di memori utama.
 Proses yang sedangberjalan akan mengakses page table (table
halaman) untuk mendapatkan referensi halaman yang diinginkan.
 Page fault dapat diketahui/dideteksi dari penggunaan skema bit valid-tidak valid
ini.
 Bagian inilah yang menandakan terjadinya suatu permintaan pemberian halaman .
“Jika suatu proses mencoba untuk mengakses suatu halaman dengan bit yang di-set tidak
valid maka PAGE FAULT akan terjadi. “ dan “Proses akan dihentikan sementara
halaman yang diminta/dibutuhkan dicari didalam disk.”

DEMAND PAGING : Penanganan page fault


• Cara-cara untuk mengatasi page fault :
• CPU Mengecek page tabel untuk menentukan bit referensi valid atau invalid
• Jika referensi invalid, maka proses akan dihentikan, Namun jika referensi
alamatnya valid atau legal maka halaman yang diinginkan akan diambil
dari disk.
• Page Table (Tabel halaman) akan diatur ulang lagi sesuai dengan kondisi
yang baru.
• Jika tidak terdapat ruang kosong di memori utama untuk menaruh halaman
baru, maka akan dilakukan pergantian halaman menggunakan algoritma
Page Replacement
• Setelah halaman yang diinginkan sudah dibawa ke memori utama (fisik)
maka proses dapat diulang kembali. Dengan demikian proses sudah bisa
mengakses halaman karena halaman telah diletakkan ke memori utama
(fisik).
Ada tiga komponen yang akan dihadapi pada saat melayani page fault:
 Melayani interupsi page fault
 Membaca halaman
 Mengulang kembali proses
KINERJA DEMAND PAGING
 Kinerja demand paging dapat dihitung dengan menggunakan effective access time.
effective access time = (1 - p) x ma + p x page fault time
o ma adalah memory access time, yang pada umumnya berkisar antara 10
hingga 200 nanosecond.
o p adalah probabilitas terjadinya page fault, yang berkisar antara 0 hingga 1.
Jika p sama dengan 0 yang berarti bahwa tidak pernah terjadi page fault,
maka effective access time akan sama dengan memory access time.
Sedangkan jika p sama dengan 1, yang berarti bahwa semua halaman
mengalami page fault, maka effective access time-nya akan semaikin
meningkat.
o Diketahui waktu pengaksesan memori (ma) sebesar 100 ns. Waktu page fault
sebesar 20 ms.
o Maka : effective access time = (1 - p) x ma + p x page fault time
= (1 - p) x 100 + p x 20000000
= 100 - 100p + 20000000p
= 100 + 19.999.900p nanosecond
effective access time = 100 + 19.999.900p nanosecond
 Jika diketahui dalam 1000 memory access terdapat 1 page fault maka :
effective access time = 100 + 19.999.900 (1/1000)p nanosecond
= 20099.9 nanosecond
= 20.1 microsecond
PAGE REPLACEMENT
“Page Replacement diperlukan pada saat dimana proses dieksekusi perlu frame bebas
tambahan tetapi tidak tersedia frame bebas”
Prinsip proses Page Replacement sebagai berikut :
 Proses meminta Halaman tertentu.
 Jika halaman berada di memori, tidak dilakukan Page Replacement.
 Jika halaman tidak berada di memori, maka :
 Jika ada frame kosong, maka halaman tsb di-load ke dalam frame yang
kosong.
 Jika tidak ada frame yang kosong, gunakan algoritma page replacement
untuk memilih bingkai "korban“
 Pindahkan bingkai "korban" tersebut ke disk dan sesuaikan tabel halaman.
 Update page table dan Restart Proses.
ALGORITMA PAGE REPLACEMENT
 Bertujuan untuk mendapatkan Page Fault terendah.
 Ada beberapa algoritma page replacement :
 Algoritma FIFO
 Algoritma Optimal
 Algoritma LRU (Least Recently Used)
 Algoritma FIFO
 Merupakan algoritma yang paling sederhana
 Jika ada suatu page yang akan ditempatkan, maka posisi page yang paling
lama berada di memori yang akan digantikan
 Algoritma Optimal
 Mengganti page yang tidak digunakan dalam waktu dekat
 Mempunyai rata-rata page fault terendah

 Algoritma LRU
 Merupakan perpaduan dari FIFO dan Optimal
 Page yang diganti adalah page yang telah lama tidak digunakan.
Pertemuan 13
Manajemen Input/Output
• Merupakan tugas SO
• Mengambil data masukan pirantiinput untuk diproses lebih lanjut
oleh prosessor
• Memeriksa status piranti I/O. misal:printer
• Mengelolaperangkat keras dan perangkat lunak dari sistem I/O
• Umumnya perlu operasi I/O bila suatu aplikasi dijalankan.
Dapat ditinjau dari segi:
• Organisasi fisik / perangkat keras
• Organisasi perangkat lunak
Organisasi Fisik atau Perangkat Keras
• Piranti I/O (device)
• Dapat berupa komponen elektrik maupun mekanik
• Contoh: monitor, keyboard, mouse, printer, dll
• Device controller (adapter)
• Merupakan sirkuit digital yang berfungsi mengontrol kerja komponen
mekanik ataupun elektrik lainnya dari piranti I/O
• Agar piranti I/O dapat dikontrol atau berkomunikasi dengan sistem komputer
• Bus I/O
• Terdiri atas bus data, alamat dan kontrol
Organisasi Perangkat Keras Piranti I/O
Karakteristik Pembeda
• Modus Transfer Data
• Metode Akses
• Jadwal Transfer
• Sharing
• Kecepatan Akses
• Modus Operasi
Organisasi Perangkat Keras * Piranti I/O*
Berdasarkan fungsionalistas:
• Piranti antarmuka pengguna interaksi langsung dengan pengguna. misal:
keyboard,mouse, monitor, printer
• Piranti transmisi mentransmisikan data ke perangkat komunikasi lainnya. misal:
NIC dan modem
• Piranti penyimpanan data untuk penyimpanan data misal: hardisk, CD-ROM,
flashdisk
Organisasi Perangkat Keras
 Device Controller
• Sebagai pengendali digital atas piranti I/O
• Bertanggung jawab atas komunikasi data antara piranti I/O dengan sistem internal
komputer
• Dapat berupa kartu rangkaian digital atau chipset yang biasanya terletak di
mainboard
• Graphics controller, SCSI controll Device Controller er, serial & paralel port
controller, dll
 Bus I/O
• Terdiri atas bus data, alamat dan kontrol
• Berfungsi menghubungkan device controller dengan elemen internal
komputer seperti memori dan prosesor.
• Terdapat juga bus I/O lanjutan atau ekspansi yang bersifat mudah
dipindah- pindah (movable) dan umumnya terletak diluar kotak komputer.
• misal: bus parallel, serial, PS2
Metode Transfer Data
1. Programmed I/O atau pooling
 Prosessor bertanggung jawab atas pemeriksaan selesainya operasi transfer data
yang dilakukan oleh device controller
 Jika data telah siap, maka prosessor juga bertanggung jawab atas pemindahan
data dari atau ke memori utama, karena device controller tidak punya hak akses
ke memori utama.
2. Interrupt-driven I/O
• Prosessor hanya bertanggung jawab atas pemindahan data ke atau dari memori
utama (hanya memberikan instruksi transfer data)
• Device controller yang akan memberikan sinyal interupsi jika data sudah tersedia
untuk disalinkan ke memori utama.
3. DMA (Direct Memory Access)
• Prosessor dibebaskan dari pengontrolan transfer data I/O
• Sebagai gantinya, diperlukan tambahan perangkat keras DMA controller yang
memiliki kendali atas bus internal dan jalur ke memori utama.
Organisasi Perangkat Lunak Sistem I/O
Bagaimana perangkat I/O berkomunikasi ?
Organisasi perangkat lunak sistem I/O
umumnya terdiri atas lapisan:
• Lapisan Interrupt Handler
Menangani terjadinya interupsi à dialihkan ke interupt handler
• Lapisan device driver
Mengimplementasikan operasi dari masing-masing device controller
• Lapisan subsistem I/O atau kernel I/O
Menyediakan antarmuka atau fungsi I/O bagi SO atau aplikasi
• Lapisan pustaka I/O aplikasi
Mengimplementasikan pustaka pengaksesan I/O atau API (Application
Programming Interface) bagi aplikasi untuk melakukan operasi I/O
Lapisan Interrupt Handler
• Menangani terjadinya interupsi dan pengalihan eksekusi ke interrupt handler.
• Bertujuan untuk mencapai operasi yang asinkron
Dengan adanya fasilitas interupsi, prosessor tidak pernah idle -> proses akan berstatus
blocked dan prosessor dapat dialokasikan ke proses lain.
Lapisan Device Driver
• Membantu mencapai ketidaktergantungan dengan keragaman piranti I/O
• Mengimplementasi secara khusus rincian operasi dari masing-masing device
controller. Jadi setiap device controller akan ditangani oleh device driver.
• Misal: 2 graphics card dari vendor yang berbeda, akan memiliki device driver yang
menyediakan fungsi minimal untuk pengaksesan graphic card.

Anda mungkin juga menyukai