If3191 Io PDF
If3191 Io PDF
Intro
I/O hardware beragam dan kompleks
Bagaimana memudahkan akses I/O dengan
cara standar
Keyboard
Disk
Mouse
Display
Printer
Network card
26-Sep-07
9/26/2007
Sistem komputer
26-Sep-07
Clock:?
26-Sep-07
9/26/2007
Contoh
26-Sep-07
Device controller
I/O device terdiri atas:
Komponen mekanik
Komponen elektronik (device controller)
device controller:
Dapat mengendalikan beberapa device
Interaksi controller device mungkin menggunakan
interface standard, e.g.: IDE, SCSI
Mengubah stream menjadi block
Error correction
Menyediakan buffer yang dapat diakses via main
memory
26-Sep-07
9/26/2007
Komunikasi controller-CPU
I/O port number:
mengirim perintah
membaca dan menulis data (via data buffer)
26-Sep-07
Memory-mapped I/O
26-Sep-07
9/26/2007
26-Sep-07
Memory-mapped I/O
Kelebihan
Dapat diakses dari bahasa tingkat tinggi (C/C++)
Proteksi dapat dilakukan dengan mengatur address
space user process
Lebih mudah memeriksa status sebuah device
26-Sep-07
10
9/26/2007
26-Sep-07
11
DMA
26-Sep-07
12
9/26/2007
Interrupt handling
Precise interrupt
26-Sep-07
13
I/O software
Goals/issues
Device independent
Efficiency
Uniform naming
Error handling
Synchronous vs. asynchronous
buffering
26-Sep-07
14
9/26/2007
Programmed I/O
26-Sep-07
15
Programmed I/O
26-Sep-07
16
9/26/2007
26-Sep-07
17
26-Sep-07
18
9/26/2007
26-Sep-07
19
Interrupt handler
Driver yang memulai operasi I/O di blok hingga
menerima notifikasi dari interrupt handler
Interrupt handler menangani I/O interrupt dan
melakukan unblock pada driver
26-Sep-07
20
10
9/26/2007
Device driver
26-Sep-07
21
Device driver
Device driver umumnya dibuat oleh vendor
pembuat device
Device driver menjadi bagian dari sistem operasi
Mekanisme integrasi:
Kompilasi kernel
Dynamic loading & linking
26-Sep-07
22
11
9/26/2007
Device driver
Tugas driver
Memeriksa input dari program valid atau tidak
Konversi parameter yang diberikan program ke
struktur yang sesuai untuk device
Scheduling akses ke device
Mengontrol device
Menangani error
26-Sep-07
23
26-Sep-07
24
12
9/26/2007
Uniform interfacing
26-Sep-07
25
buffering
26-Sep-07
26
13
9/26/2007
buffering
26-Sep-07
27
26-Sep-07
28
14