Apa itu I/O ?
Proses memasukan dan menghasikan data
Perangkat I/O ?
peranti yang memiliki perilaku meminta input / menghasilkan output
Bus ?
jalur komunikasi antar device
Bagaimana CPU & Perangkat I/O berkomunikasi?
dengan transfer data melalui bus, CPU meminta atau mengisi data pada register-register di port I/O
Perangkat I/O
Dapat dibagi menjadi beberapa kategori :
Menurut Silberchatz, dkk :
1. Storage devices
Contoh : harddisk, cdrom, floppy disk
2. Transmission devices
Contoh : LAN card
3. Human interface devices
Contoh : keyboard, speaker, monitor
Perangkat I/O
Menurut MDGR :
1. Block devices :
transfer data perblock
contoh : disk
2. Character devices :
transfer data perbyte
contoh: keyboard
Perangkat I/O
Pengendali perangkat
Pengendali perangkat (device driver / controller / adapter) ?
peranti elektronis yang berfungsi untuk mengoperasikan port, bus, atau device.
Contoh : serial port controller, SCSI controller, disk
controller
Polling ?
proses yang dilakukan oleh host berupa pemeriksaan status register device secara
berulang, hingga tanda busy di-clear oleh device.
Handshaking ?
proses komunikasi antara host dengan device, dimana prosesnya terjadi berulang-ulang.
Polling:
interaksi host-controller
Contoh : host ingin menuliskan output melalui suatu
port.
1.host membaca busy bit secara berulang selama belum clear.
2.host mengisi perintah write pada command register dan menulis bytes (output) ke data-out register.
3.host men-set command-ready bit.
Polling:
interaksi host-controller
4.setelah controller melihat command ready telah di set, ia men-set busy bit.
5.controller melihat perintah yg ada di command register, lalu melakukan operasi yg diperintahkan.
6.controller men-clear command ready bit, mengurus error bit, men-clear busy bit.
Interupsi ?
Sinyal yang dikirimkan oleh device untuk meminta handling oleh host.
Mekanisme dasar Interupsi
Ketika CPU mendeteksi adanya sinyal interrupt, CPU akan menyimpan state proses saat itu, lalu kemudian memanggil interupt handler untuk melayani device yang mengirimkan interrupt.
Siklus penanggulangan interupsi
Direct Memory Access
PIO ?
CPU menggunakan Instruksi khusus I/O untuk me-manage I/O
DMA ?
Untuk menanggulangi pembebanan CPU karena programmed I/O pada transfer data dalam jumlah besar.
DMA controller ?
Hardware berupa Prosessor khusus untuk melakukan DMA
Menggantikan CPU untuk transfer data secara langsung antara I/O device dengan memory
Direct Memory Access
• Cycle stealing ?
DMA melakukan transfer saat CPU tidak memakai system bus/main memory. Contoh : jeda
setelah CPU melakukan instruksi tertentu.
• DVMA ?
DMA dilakukan ke Virtual Memory, sehingga tidak perlu lagi memakai Main memory dan bebas intervensi dari CPU
Direct Memory Access
Sumber: operating system concepts 6th ed, Silberschatz dkk.
Minggu, 04 Desember 2011
Piranti Output Input
06.32
Teguh B Santoso
0 komentar:
Posting Komentar