Dokumen tersebut membahas tentang manajemen input output pada sistem operasi, mencakup perangkat keras pengendali input output seperti piranti I/O, controller perangkat, bus I/O, serta metode transfer data seperti programmed I/O, interrupt-driven I/O, dan DMA.
2. Latar Belakang
Berikut ini latar belakang saya mengerjakan artikel Sistem Operasi mengenai
Manajeme Input Output :
Tugas Kuliah Sistem Operasi
Salah satu fungsi utama Sistem Operasi adalah mengatur Operasi
Input/Output beserta perangkatnya.
Sistem Operasi harus dapat memberikan perintah ke perangkat-perangkat
tersebut, menangkap interupsi , dan menangani error / kesalahan yang
terjadi.
Sistem Operasi juga menyediakan fasilitas antarmuka (interface) antara
perangkat-perangkat tersebut dengan keseluruhan sistem yang ada.
And Umumnya perlu operasi I/O bila suatu aplikasi dijalankan.
3. Pendahuluan
Manajemen I/O sering disebut device manager. Menyediakan device driveryang
umum sehingga operasi I/O dapat seragam (membuka, membaca,
menulis,menutup).
Contoh: pengguna menggunakan operasi yang sama untuk membaca berkas
pada perangkat keras, CD-ROM dan floppy disk .
Organisasi Sistem I/O terbagi 2 :
Organisasi fisik / perangkat keras
Organisasi perangkat lunak
Dan kali ini saya hanya akan membahas tentang :
“Perangkat Keras Manajemen Input Output”.
5. 1. PIRANTI I/O (DEVICE)
Dapat berupa komponen elektrik
maupun mekanik
Contoh: monitor, keyboard, mouse, printer, dll
Penggolongan Piranti Berdasarkan Karakteristik nya :
6. Organisasi Piranti berdasarkan Fungsionalitas :
Piranti antarmuka pengguna
interaksi langsung dengan pengguna.
misal: keyboard,mouse, monitor, printer
Piranti transmisi
mentransmisikan data ke perangkat komunikasi lainnya.
misal: NIC dan modem Pengalamatan Piranti
Piranti penyimpanan data
untuk penyimpanan data
misal: hardisk, CD-ROM, flashdisk
7. 2. 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
Organisasi 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 controller, serial & paralel port controller, dll
8. 3. BUS I / O
Terdiri atas bus data, alamat dan kontrol
9. Organisasi 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.
Missal : bus parallel, serial, PS2
10. METODE TRANSFER DATA . . .
1. Programmed I/O atau pooling
Busy-waiting/ polling adalah ketika host mengalami looping yaitu membaca status register
secara terus-menerus sampai status busy di-clear.
Pada dasarnya polling dapat dikatakan efisien. Akan tetapi polling menjadi tidak efisien ketika
setelah berulang-ulang melakukan looping, hanya menemukan sedikit device yang siap untuk
men-service, karena CPU processing yang tersisa belum selesai.
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.
11. 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
Penyebab Interupsi
Interupsi dapat disebabkan berbagai hal, antara lain exception, page fault, interupsi
yang dikirimkan oleh device controllers, dan system call Exception adalah suatu kondisi
dimana terjadi sesuatu/ dari sebuah operasi didapat hasil tertentu yang dianggap
khusus sehingga harus mendapat perhatian lebih, contoh nya pembagian dengan 0
(nol), pengaksesan alamat memori yang restricted atau bahkan tidak valid, dan lain-lain.
System call adalah sebuah fungsi pada aplikasi (perangkat lunak) yang dapat
mengeksekusikan instruksi khusus berupa software interrupt atau trap.
13. 3. DMA (Direct Memory Access)
DMA adalah sebuah prosesor khusus (special purpose processor) yang berguna untuk
menghindari pembebanan CPU utama oleh program I/O (PIO).
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.
15. 2 Metode Transfer DMA
Pada dasarnya, DMA mempunyai dua metode yang berbeda dalam mentransfer
data. Metode yang pertama adalah metode yang sangat baku dan simple disebut
HALT, atau Burst Mode DMA, karena DMA controller memegang kontrol dari sistem
bus dan mentransfer semua blok data ke atau dari memori pada single burst. Selagi
transfer masih dalam progres, sistem mikroprosessor di-set idle, tidak melakukan
instruksi operasi untuk menjaga internal register. Tipe operasi DMA seperti ini ada
pada kebanyakan komputer.
Metode yang kedua, mengikut-sertakan DMA controller untuk memegang kontrol
dari sistem bus untuk jangka waktu yang lebih pendek pada periode dimana
mikroprosessor sibuk dengan operasi internal dan tidak membutuhkan akses ke
sistem bus. Metode DMA ini disebut cycle stealing mode. Cycle stealing DMA lebih
kompleks untuk diimplementasikan dibandingkan HALT DMA, karena DMA controller
harus mempunyai kepintaran untuk merasakan waktu pada saat sistem bus terbuka.