Pengertian Management I/O:
Manajemen perangkat masukan/keluaran merupakan aspek
perancangan siste
operasi terluas dan kompleks karena sangat beragamnya
perangkat da
aplikasinya.
Beberapa fungsi manajemen input/ouput (I/O) :
a. Mengirim perintah ke perangkat I/O agar menyediakan
layanan.
b. Menangani interupsi perangkat I/O.
c. Menangani kesalahan perangkat I/O.
d. Menyediakan interface ke pemakai.
Klasifikasi perangkat I/O
Perangkat I/O dapat dikelompokkan berdasarkan :
a. Sifat aliran datanya, yang terbagi atas :
a.1 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.
a.2 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 :.
b.1 Perangkat yang
terbaca oleh manusia.
Perangkat yang
digunakan untuk berkomunikasi dengan manusia.
Contoh : VDT
(video display terminal) : monitor, keyboard, mouse.
b.2 Perangkat yang
terbaca oleh mesin.
Perangkat yang
digunakan untuk berkomunikasi dengan perangkat
elektronik.
Contoh : Disk
dan tape, sensor, controller.
b.3 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.
Managemen
sistem I /O
Sistem I/O terdiridari:
Æ
Sistem buffer : menampung s ementara data dari/ke peran
I/O
Æ
Spooling : melakukan penjadwalan pemakaianI/O
sistem
supaya lebih efisien (antrian dsb)
Æ
Antarmuka devices-driver yang umum :
menyediakan device driveryang umum sehingga
sistem
operasi dapat seragam (buka, baca,
tulis, tutup)
Æ
Drivers untuk spesifikperangkat keras :
menyediakandriver
untuk melakukan operasi
rinci/detail
untuk perangkat keras tertentu.
Teknik pemograman perangkat I/O
1. 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.
a.1
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.
a.2 Pengujian.
Berfungsi memeriksa status perangkat
keras berkaitan dengan perangkat
I/O.
a.3 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.
b. 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.
c. 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
Prinsip manajemen perangkat I/O
Terdapat
dua sasaran perancangan I/O, yaitu :
a.
Efisiensi.
Aspek penting karena operasi I/O sering
menimbulkan bottleneck.
b.
Generalitas (device independence).
Manajemen perangkat I/O selain berkaitan
dengan simplisitas dan bebas
kesalahan,
juga menangani perangkat secara seragam baik dari cara proses
memandang
maupun cara sistem operasi mengelola perangkat dan operasi I/O.
Masalah-masalah
manajemen I/O adalah :
a. Penamaan
yang seragam (uniform naming).
Nama berkas atau perangkat adalah string
atau integer, tidak bergantung pada
perangkat
sama sekali.
b.
Penanganan kesalahan (error handling).
Umumnya penanganan kesalahan ditangani
sedekat mungkin dengan perangkat
keras.
c. Transfer
sinkron vs asinkron.
Kebanyakan I/O adalah asinkron. Pemroses
mulai transfer dan mengabaikan
untuk
melakukan kerja lain sampai interupsi tiba. Program pemakai sangat lebih
mudah
ditulis jika operasi I/O berorientasi blok. Setelah perintah read, program
kemudian
ditunda secara otomatis sampai data tersedia di buffer.
d. Sharable
vs dedicated.
Beberapa perangk dapat dipakai bersama
seperti disk, tapi ada juga perangkat
yang hanya
satu pemakai yang dibolehkan memakai pada satu saat.
Contoh : printer.
Hirarki manajemen perangkat I/O
Hirarki
manajemen perangkat I/O :
a.
Interrupt handler.
Interupsi harus disembunyikan agar tidak
terlihat rutin berikutnya.
Device driver di blocked saat perintah I/O
diberikan dan menunggu interupsi.
Ketika
interupsi terjadi, prosedur penanganan interupsi bekerja agar device driver
keluar dari
state blocked.
b. Device drivers.
Semua kode bergantung perangkat ditempatkan
di device driver. Tiap device
driver
menangani satu tipe (kelas) perangkat dan bertugas menerima permintaan
abstrak
perangkat lunak device independent diatasnya dan melakukan layanan
permintaan.
Buffering I/O
Buffering
adalah melembutkan lonjakan-lonjakan kebutuhan pengaksesan I/O,
sehingga
meningkatkan efisiensi dan kinerja sistem operasi.
a. Single
buffering.
Merupakan teknik paling sederhana. Ketika
proses memberi perintah untuk
perangkat
I/O, sistem operasi menyediakan buffer memori utama sistem untuk
operasi.
Keunggulan :
Pendekatan in umumnya meningkatkan
kecepatan dibanding tanpa buffering.
Proses pemakai dapat memproses blok data
sementara blok berikutnya sedang
dibaca.
Sistem operasi dapat menswap keluar proses karena operasi masukan
berada di
memori sistem bukan memori proses pemakai.
Kelemahan :
· Merumitkan sistem operasi karena harus
mencatat pemberian buffer-buffer
sistem ke
proses pemakai.
· Logika swapping juga dipengaruhi. Jika
operasi I/O melibatkan disk untuk
swapping,
maka membuat antrian penulisan ke disk yang sama yang
digunakan
untuk swap out proses. Untuk menswap proses dan melepas
memori utama tidak dapat dimulai sampai operasi I/O
selesai, dimana waktu
swapping ke
disk tidak bagus untuk dilaksanakan.
Single buffering dapat diterapkan dengan dua mode, yaitu :
o Mode line
at a time.
Cocok untuk terminal mode gulung (scroll
terminal atau dumb terminal).
Masukan pemakai adalah satu baris per waktu
dengan enter menandai akhir
Baris.
Contoh mode
ini adalah printer.
Buffer digunakan untuk menyimpan satu
baris tunggal.
o Mode byte
at a time.
Operasi ini cocok untuk terminal mode form,
dimana tiap ketikan adalah
penting dan
untuk peripheral lain seperti sensor dan pengendali.
b. Double
buffering.
Peningkatan dapat dibuat dengan dua buffer
sistem.Proses dapat ditransfer
ke/dari
satu buffer sementara sistem operasi mengosongkan (atau mengisi)
buffer
lain. Teknik ini disebut double buffering atau buffer swapping.
. Circular
buffering.
Seharusnya melembutkan aliran data antara
perangkat I/O dan proses. Jika
kinerja
proses tertentu menjadi fokus kita, maka kita ingin agar operasi I/O
mengikuti
proses.
Tentang Managemen I / o
Reviewed by ekawahyu
on
19:29
Rating:
No comments: