Sistem Komputer - Manajemen Perangkat
Manajemen  perangkat  masukan/keluaran  merupakan  aspek  perancangan  sistem
operasi terluas dan kompleks karena sangat beragamnya perangkat dan
aplikasinya.
Beberapa fungsi manajemen input/ouput (I/O) :
- Mengirim perintah ke perangkat I/O agar menyediakan layanan.
- Menangani interupsi perangkat I/O.
- Menangani kesalahan perangkat I/O.
- Menyediakan interface ke pemakai.
Klasifikasi perangkat I/O
Perangkat I/O dapat dikelompokkan berdasarkan :
a. Sifat aliran datanya, yang terbagi atas :
- Perangkat berorientasi blok.
Yaitu   menyimpan,   menerima,   dan   mengirim   informasi   sebagai   blok-blok
berukuran  tetap  yang  berukuran  128  sampai  1024  byte  dan  memiliki  alamat
tersendiri,  sehingga  memungkinkan  membaca  atau  menulis  blok-blok secara
independen, yaitu dapat membaca atau menulis sembarang blok tanpa harus
melewati blok-blok lain. Contoh : disk,tape,CD ROM, optical disk.
- Perangkat berorientasi aliran karakter.
Yaitu   perangkat   yang   menerima,   dan   mengirimkan   aliran   karakter   tanpa
membentuk  suatu  struktur  blok.  Contoh  :  terminal,  line  printer,  pita  kertas,
kartu-kartu berlubang, interface jaringan, mouse.
b. Sasaran komunikasi, yang terbagi atas :
- Perangkat yang terbaca oleh manusia.
Perangkat yang digunakan untuk berkomunikasi dengan manusia.
Contoh : VDT (video display terminal) : monitor, keyboard, mouse.
- Perangkat yang terbaca oleh mesin.
Perangkat yang digunakan untuk berkomunikasi dengan perangkat
elektronik.
Contoh : Disk dan tape, sensor, controller.
- Perangkat komunikasi.
Perangkat yang digunakan untuk komunikasi dengan perangkat jarak jauh.
Contoh : Modem.
Faktor-faktor yang membedakan antar perangkat :
- Kecepatan transmisi data (data rate).
- Jenis aplikasi yang digunakan.
- Tingkat kerumitan dalam pengendalian.
- Besarnya unit yang ditransfer.
- Representasi atau perwujudan data.
- Kondisi-kondisi kesalahan.
Teknik pemograman perangkat I/O
Terdapat 3 teknik, yaitu :
- I/O terprogram atau polling system.
Ketika   perangkat   I/O   menangani   permintaan,   perangkat   men-set   bit   status   di
register  status  perangkat.  Perangkat  tidak  memberitahu  ke  pemroses  saat  tugas
telah   selesai   dilakukan   sehingga   pemroses   harus   selalu   memeriksa   register
tersebut  secara  periodik  dan  melakukan  tindakan  berdasar  status  yang  dibaca.
Software   pengendali   perangkat   (driver)   dipemroses   harus   mentransfer   data
ke/dari  pengendali.  Driver  mengekseksui  perintah  yang  berkomunikasi  dengan
pengendali (adapter) di perangkat dan menunggui sampai operasi yang dilakukan
perangkat selesai.
Driver berisi kumpulan instruksi :
- Pengendalian.
Berfungsi   mengaktifkan   perangkat   eksternal   dan   memberitahu   yang   perlu
dilakukan.  Contoh  :  unit  tape  magnetik  diinstruksikan  untuk  kembali  ke  posisi
awal, bergerak ke record berikut, dan sebagainya.
- Pengujian.
Berfungsi   memeriksa   status   perangkat   keras   berkaitan   dengan   perangkat
I/O.
- Pembacaan/penulisan
Berfungsi membaca/menulis untuk transfer data antara register pemroses dan
perangkat eksternal.
Masalah  utama  I/O  terprogram  adalah  pemroses  diboroskan  untuk  menunggu
dan  menjagai  operasi  I/O.  Diperlukan  teknik  lain  untuk  meningkatkan  efisiensi
pemroses.
- I/O dikendalikan interupsi.
Teknik I/O dituntun interupsi mempunyai mekanisme kerja sebagai berikut :
- Pemroses memberi instruksi ke perangkat I/O kemudian melanjutkan
melakukan pekerjaan lainnya.
- Perangkat I/O akan menginterupsi meminta layanan saat perangkat telah siap
bertukar data dengan pemroses.
- Saat   menerima   interupsi   perangkat   keras   (yang   memberitahukan   bahwa
perangkat  siap  melakukan  transfer),  pemroses  segera  mengeksekusi  transfer
data.
Keunggulan :
- Pemroses  tidak  disibukkan  menunggui  dan  menjaga  perangkat  I/O  untuk
memeriksa status perangkat.
Kelemahan :
- Rate transfer I/O dibatasi kecepatan menguji dan melayani operasi
perangkat.
- Pemroses   terikat   ketat   dalam   mengelola   transfer   I/O.   Sejumlah   intruksi
harus dieksekusi untuk tiap transfer I/O. 
- Dengan DMA (direct memory access).
DMA berfungsi membebaskan pemroses menunggui transfer data yang dilakukan
perangkat   I/O.
Saat   pemroses   ingin   membaca   atau   menulis   data,   pemroses
memerintahkan DMA controller dengan mengirim informasi berikut :
- Perintah penulisan/pembacaan.
- Alamat perangkat I/O.
- Awal lokasi memori yang ditulis/dibaca.
- Jumlah word (byte) yang ditulis/dibaca.
Setelah   mengirim   informasi-informasi   itu   ke   DMA   controller,   pemroses   dapat
melanjutkan  kerja  lain.  Pemroses  mendelegasikan  operasi  I/O  ke  DMA.  DMA
mentransfer  seluruh  data  yang  diminta  ke/dari  memori  secara  langsung  tanpa
melewati  pemroses.  Ketika  transfer  data  selesai,  DMA  mengirim  sinyal  interupsi
ke pemroses. Sehingga pemroses hanya dilibatkan pada awal dan akhir transfer
data. Operasi transfer antara perangkat dan memori utama dilakukan
sepenuhnya  oleh  DMA  lepas  dari  pemroses  dan  hanya  melakukan  interupsi  bila
operasi telah selesai.
Keunggulan :
- Penghematan waktu pemroses.
- Peningkatan kinerja I/O. 
Sistem Komputer - Manajemen Perangkat, lanjut yuk klik sistem komputer untuk melanjutkan materi kita ini.