Manajemen
Input/OutputFungsi
mengirim perintah ke perangkat
masukan/keluaran agar menyediakan layanan.
menangani interupsi perangkat
masukan/keluaran
menangani kesalahan pada perangkat
masukan/keluaran
menyediakan interface ke pemakai Klasifikasi Perangkat I/O
Berdasarkan sifat aliran datanya :
perangkat berorientasi blok (blok oriented
device)
menyimpan dan menukarkan
(menerima/mengirim) informasi sebagai blok-
blok berukuran tetap, contoh : disk, tape,
CDROM, optical disk, dll
perangkat berorientasi aliran karakter
perangkat yang mengantarkan atau menerima
aliran karakter tanpa peduli membentuk suatu
struktur blok, contoh : terminal, line printer,
pita kertas, mouse, kartu berlubang Klasifikasi Perangkat I/O
Berdasarkan sasaran komunikasi:
perangkat yang terbaca manusia (human
readable devices)
perangkat yang cocok untuk komunikasi
dengan manusia, contoh : monitor, keyboard,
mouse
perangkat yang terbaca mesin (machine
readable devices)
perangkat yang cocok untuk komunikasi
dengan perangkat elektronik, contoh : disk
dan tape, sensor, controller.
untuk komunikasi
perangkat yang cocok untuk komunikasi
dengan perangkat jarak jauh, contoh : modemPrinsip Manajemen I/O
Dua sasaran perancangan manajemen I/O :
Efisiensi (eficiency)
Merupakan aspek penting karena operasi I/O
sering merupakan operasi yang
menimbulkan bottleneck pada sistem
operasi.
Generalitas (generality)
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 yang Harus Diselesaikan
Masalah-masalah yang terdapat dan harus
diselesaikan pada perancangan manajemen
i/o :
Penamaan yang seragam (uniform naming)
nama berkas atau perangkat adalah string
atau integer
Penanganan kesalahan (error handling) Masalah yang Harus Diselesaikan
Transfer sinkron vs asinkron
Kebanyakan i/o adalah asinkron. Prosesor
melakukan proses transfer data dan mengijinkan
proses lain untuk berlanjut meskipun proses
transfer blm selesai.
Sharable vs dedicated
beberapa perangkat dapat dipakai bersama seperti
disk, tapi ada juga perangkat yang hanya satu
pemakai yang dibolehkan memakai pada satu saat,
contoh perangkat dedicated : printer. Hirarki Manajemen I/O
INTERRUPT HANDLER
Pengendali interupsi (interrupt handler) harus
disembunyikan di sistem yang paling dalam
agar tidak terlihat ke rutin-rutin berikutnya.
DEVICE DRIVER
Semua kode bergantung peralatan yang
ditempatkan pada device driver. Tiap device
driver menangani satu tipe peralatan atau satu
kelas peralatan yang berhubungan. device
driver bertugas menerima permintaan abstrak
perangkat lunak device-independent diatasnya
dan melakukan layanan sesuai permintaan. Hirarki Manajemen I/O
Mekanisme device driver :
Menerjemahkan perintah-perintah abstrak
menjadi perintah-perintah kongkret
Setelah mendapat perintah, device driver mulai
menulis ke register-register pengendali peralatan
Setelah operasi selesai dilakukan, device driver
memeriksa kesalahan-kesalahan yang terjadi
Jika semua berjalan baik, device driver
melewatkan data ke perangkat lunak device-
independent
Device driver melaporkan status operasinya ke
pemanggil Hirarki Manajemen I/O
PERANGKAT LUNAK DEVICE INDEPENDENT
Fungsi utama perangkat lunak ini :
membentuk fungsi-fungsi i/o yang berlaku untuk
semua perangkat
memberi interface/antarmuka seragam ke
perangkat lunak tingkat pemakai Hirarki Manajemen I/O
Fungsi yang dilakukan antara lain:
interface seragam untuk seluruh device driver
penamaan peralatan
proteksi peralatan
memberi ukuran blok peralatan
melakukan buffering
alokasi penyimpanan pada block-devices
alokasi dan pelepasan dedicated-devices
pelaporan kesalahan Hirarki Manajemen I/O
PERANGKAT LUNAK LEVEL PEMAKAI
Kebanyakan perangkat lunak i/o terdapat pada
sistem operasi.
Tidak semua perangkat lunak i/o level
pemakai berisi prosedur-prosedur pemakai.
Kategori penting adalah sistem spooling.
Spooling merupakan cara khusus berurusan
dengan peralatan i/o yang harus didedikasikan
pada sistem multiprogramming.Mekanisme Perangkat Lunak I/O
DISK
Disk diorganisasikan menjadi silinder-silinder dengan track-track terdapat
head yang ditumpuk secara vertikal. Tiap track terbagi menjadi sektor-
sektor. Waktu yang dibutuhkan untuk membaca dan menulis disk
dipengaruhi oleh :
Waktu seek
Waktu yang diperlukan untuk sampai ke posisi track yang dituju.
Waktu seek merupakan faktor yang paling dominan.
Waktu tunda rotasi
Waktu yang diperlukan mekanisme akses mencapai blok yang
diinginkan.
Waktu transfer data
waktu tranfer data bergantung pada kecepatan rotasi dan
kepadatan rekaman. Transfer rate (t) adalah kecepatan transfer
data sesaat, data ini diberikan oleh pembuat perangkat kerasBeberapa tipe kesalahan dapat muncul ketika operasi disk.
Kesalahan-kesalahan pada disk dapat dikategorikan sebagai
berikut :
Programming error
Kesalahan yang disebabkan pemrograman, misalnya
driver memerintahkan mencari track yang tak ada,
membaca sector yang tak ada, dll
Transient checksum error
Kesalahan disebabkan adanya debu diantara head
dengan permukaan disk. Untuk mengeliminasi
kesalahan ini maka dilakukan pengulangan operasi
pada disk.
Permanent checksum error
Kesalahan disebabkan kerusakan disk maka harus
dibuat daftar blok-blok buruk agar data tidak ditulis di
blok buruk. Seek error
Kesalahan ini ditanggulangi dengan
mengkalibrasi disk supaya berfungsi
kembali.
Controller error
Kesalahan ini ditanggulangi dengan
menukar pengendali yang salah dengan
pengendali yang baru. Mekanisme Perangkat Lunak I/O
CLOCK
Perangkat keras clock mempunyai 2 tipe
clock, yaitu :
Clock yang ditimbulkan impulse tegangan
listrik
Programmable interval timer (PIT) Mekanisme Perangkat Lunak I/O
Sedangkan perangkat lunak clock pada sistem
operasi mempunyai beberapa fungsi, antara
lain :
mengelola waktu dan tanggal (waktu nyata)
mencegah proses berjalan lebih dari waktu
yang ditetapkan
menghitung penggunaan pemroses
mengerjakan monitoring dan pengumpulan
statistik Alokasi Piranti
Dedicated device
merupakan cara mengalokasikan piranti
untuk sebuah pekerjaan selama pekerjaan
berada dalam sistem. Kelemahannya adalah
tidak efisien karena bila suatu pekerjaan
menggunakan sekali-kali, tetapi piranti harus
tetap melayani pekerjaan tersebut.
Shared device
merupakan cara mengalokasikan piranti
supaya dapat digunakan secara bergantian
untuk beberapa pekerjaan. Beberapa piranti
seperti cakram magnetis, drum dapat
digunakan secara bergantian. Alokasi Piranti
Virtual device
Piranti yang digunakan dengan cara dedicated,
misal printer, dapat diubah menjadi piranti shared
melalui cara-cara seperti spooling.
Spooling adalah proses transfer data dengan
menempatkannya pada temporary area dimana
program lain dapat mengaksesnya nanti.
• Contoh : mencetak dokumen, prosesor akan
menempatkan data yang akan dicetak ke temporary
area, kemudian akan dibaca oleh printer untuk
kemudian dicetak
Tidak ada komentar:
Posting Komentar