Sistem Input Dan Output Komputer
atau sering juga disingkat dengan I/O adalah suatu mekanisme pengiriman data
secara bertahap dan terus menerus melalui suatu aliran data dari proses ke
peranti (begitu pula sebaliknya). Fungsi I/O pada dasarnya adalah
mengimplementasikan algoritma I/O pada level aplikasi. Hal ini dikarenakan kode
apliksi sangat fleksibel, dan bugs aplikasi tidak mudah menyebabkan sebuah
sistem crash.
Teknik
Pengoperasian Perangkat I/O
a. Perangkat I/O terprogram (programmed
I/O)
Merupakan perangkat I/O komputer
yang dikontrol oleh program. Contohnya, perintah mesin in, out, move. Perangkat
I/O terprogram tidak sesuai, untuk pengalihan data dengan kecepatan tinggi
karena dua alasan yaitu:
ü Memerlukan overhead (ongkos) yang tinggi,
karena beberapa perintah program harus dieksekusi untuk setiap kata data yang
dialihkan antara peralatan eksternal dengan memori utama.
ü Banyak peralatan periferal kecepatan tinggi
memiliki mode operasi sinkron, yaitu pengalihan data dikontrol oleh clock
frekuensi tetap, tidak tergantung CPU.
b. Perangkat berkendalikan interupsi
(Interrupt I/O)
Interupsi lebih dari sebuah
mekanisme sederhana untuk mengkoordinasi pengalihan I/O. Konsep interupsi
berguna di dalam sistem operasi dan pada banyak aplikasi kontrol di mana
pemrosesan rutin tertentu harus diatur dengan seksama, relatif
peristiwa-peristiwa eksternal.
c. DMA (Direct Memory Address)
Merupakan suatu pendekatan
alternatif yang digunakan sebagai unit pengaturan khusus yang disediakan untuk
memungkinkan pengalihan blok data secara langsung antara peralatan eksternal
dan memori utama tanpa intervensi terus menerus oleh CPU.
Evolusi telah terjadi pada sistem
komputer. Evolusi antara lain terjadi peningkatan kompleksitas dan kecanggihan
komponen-komponen sistem komputer. Evolusi sangat tampak pada fungsi-fungsi
I/O, yaitu sebagai berikut:
ü Pemroses
secara langsung mengendalikan peralatan I/O. Teknik ini masih dilakukan sampai
saat ini, yaitu untuk peralatan sederhana yang dikendalikan mikroprosesor untuk
menjadi intelligent device.
ü Peralatan
dilengkapi pengendali I/O (I/O controller). Pemroses masih menggunakan I/O
terprogram tanpa interupsi. Pada tahap ini, pemroses tak perlu memperhatikan
rincian-rincian spesifik interface peralatan.
ü Tahap
ini sama dengan tahap 2 ditambah fasilitas interupsi. Pemroses tidak perlu
menghabiskan waktu untuk menunggu selesainya operasi I/O. Teknik ini meningkatkan
efisiensi pemroses.
ü Pengendali
I/O diberi kendali memori langsung lewat DMA. Pengendali dapat memindahkan blok
data ke atau dari memori tanpa melibatkan pemroses kecuali di awal dan akhir
transfer.
ü Pengendali
I/O ditingkatkan menjadi pemroses yang terpisah dengan instruksi-instruksi
khusus yang ditujukan untuk operasi I/O. Pemroses pusat
mengendalikan/memerintahkan pemroses I/O untuk mengeksekusi program I/O yang
terdapat di memori utama.
ü Pemroses
I/O mengambil dan mengeksekusi instruksi-instruksi ini tanpa intervensi
pemroses utama (pusat). Dengan teknik ini dimungkinkan pemroses pusat
menspesifikasikan barisan aktivitas I/O dan hanya diinterupsi ketika seluruh
barisan telah diselesaikan.
ü Pengendali
I/O mempunyai memori lokal yang menjadi miliknya dan komputer juga memiliki
memori sendiri. Dengan arsitektur ini, sekumpulan besar peralatan I/O dapat
dikendalikan dengan keterlibatan pemroses pusat yang minimum.
Arsitektur ini digunakan untuk
pengendalian komunikasi dengan terminalterminal interaksi. Pemroses I/O
mengambil alih kebanyakan tugas yang melibatkan pengendalian terminal. Evolusi
berlangsung terus, jalur yang dilalui oleh evolusi adalah agar fungsi-fungsi
I/O dapat dilakukan lebih banyak dan lebih banyak lagi tanpa keterlibatan pemroses
pusat. Pemroses pusat yang tidak disibukkan dengan tugas-tugas yang berhubungan
dengan I/O akan meningkatkan kinerja sistem. Tahap 5 & 6 merupakan tahap
perubahan utama, yaitu konsep pengendali I/O mampu mengeksekusi program
sendiri.
Prinsip-Prinsip
Perangkat I/O
Terdapat dua sasaran perancangan perangkat I/O,
yaitu:
a. Efisiensi
Merupakan aspek penting karena
operasi I/O karena sering menjadi operasi yang menimbulkan bottleneck pada
sistem komputer/komputasi.
b.
Generalitas (Device-independence)
Selain berkaitan dengan
simplisitas dan bebas dari kesalahan diharapkan juga menangani semua gerak
peralatan secara beragam. Pernyataan ini diterapkan dari cara proses-proses
memandang peralatan I/O dan cara sistem operasi mengelola peralatan-peralatan
dan operasi-operasi I/O.
Perangkat lunak diorganisasikan
sebagai satu barisan lapisan. Lapisan-lapisan lebih bawah berurusan
menyembunyikan kepelikan-kepelikan perangkatkeras. Untuk untuk lapisan-lapisan
lebih atas berurusan memberikan interface yang bagus, bersih, nyaman dan
seragam ke pemakai.
Masalah-masalah penting yang
terdapat dan harus diselesaikan pada perancangan manajemen I/O adalah:
ü Penamaan
yang seragam (uniform naming) Nama berkas atau peralatan adalah string atau
integer, tidak tergantung pada peralatan sama sekali.
ü Penanganan
kesalahan (error handling) Umumnya penanganan kesalahan ditangani sedekat
mungkin dengan perangkat keras.
ü Transfer
sinkron vs asinkron, Kebanyakan fisik I/O adalah asinkron. Pemroses mulai
transfer dan mengabaikannya untuk melakukan kerja lain sampai interupsi tiba.
Programprogram pemakai sangat lebih mudah ditulis jika operasi-operasi I/O
berorientasi blok. Setelah perintah read, program kemudian secara otomatis
ditunda sampai data tersedia di buffer.
ü Shareable
vs dedicated Beberapa peralatan dapat dipakai bersama seperti disk, tapi ada
juga peralatan yang harus hanya satu pemakai yang dibolehkan memakainya pada
satu saat. Contohnya peralata yang harus dedicated misalnya printer.
Sekian dari saya semoga artikel diatas dapat menambah wawasan kita tentang komputer. ^_^
Nama :
Wulan Nurfitria
NIM :
222157398
Fakultas
Komputer Universitas MH Thamrin