Manajemen I/O


Tugas manajemen perangkat masukan /pengeluaran i/o( devive)
1.Single Buffering;
menunjukkan struktur data dari buffer dalam bentuk yang sederhana, yang terdiri dari satu record per-block dan satu buffer per-berkas, dimana buffer ini berfungsi mengisikan permintaan dari sebuah program. Struktur buffer ini berisi sebuah pointer pada alamat awal & channel program untuk berkas. Struktur dasar dari channel program untuk mengisi buffer adalah : Tunggu instruksi READ dari program Memberitahukan instruksi start I/O ke unit kontrol Tunggu hingga buffer dikosongkan Memberitahukan interupsi pada program sehingga dapat mulai membaca dari buffer Masalah yang timbul di sini adalah pemakai program menganggur pada saat menunggu buffer diisi.




2. Double Buffering;
Untuk mengurangi kemungkinan dari program menunggu, maka double buffer dapat digunakan. Dua dari tempat buffer yang ada, hanya satu yang ditetapkan untuk berkas.
Ide dasar dari double buffering adalah jika consumer mengosongkan salah satu buffer, maka producer dapat mengisikan ke dalam buffer yang lain, pada saat buffer pertama sudah kosong, maka buffer yang kedua harus dalam keadaan penuh. Kemudian consumer dapat mengkosongkan buffer yang kedua, pada saat producer mengisi buffer yang pertama, demikian seterusnya.
3. 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. Double buffering tidak mencukupi jika proses melakukan operasi I/O yang berturutan dengan cepat. Masalah sering dapat dihindari denga menggunakan lebih dari dua buffer. Ketika lebih dari dua buffer yang digunakan, kumpulan buffer itu sendiri diacu sebagai circulat buffer. Tiap buffer individu adalah satu unit di circular buffer.
Disk.
Perangkat keras dan parameter kinerja disk Disk diorganisasikan menjadi silinder-silinder dengan tiap permukaan terdapat head yang ditumpuk secara vertical. Track terbagi menjadi
sektor-sektor. Waktu yang dibutuhkan untuk membaca dan menulis disk dipengaruhi oleh :

Waktu pencarian (seek time). 
Merupakan faktor yang dominan. Waktu yang diperlukan untuk sampai ke
posisi track yang dituju, yaitu : S = Sc + di , dimana :
Sc adalah waktu penyalaan awal (initial startup time).
D adalah waktu yang bergerak antar-antar track.
i adalah jarak yang ditempuh (dalam ukuran ruang antar track).
Untuk track terdekat, S1 = Sc + d lebih kecil dibanding waktu yang
diperlukan untuk satu putaran.Untuk memudahkan perhitungan maka
dipakai s rata-rata,yaitu :
j-1
S = å Si pdi,
i=1
Si adalah waktu tempuh untuk jarak ke-1.
Pdi adalah probabilitas menempuh jarak ke-1.
Seek time rata-rata biasanya diinformasikan oleh pabrik pembuat.


Waktu rotasi (rotational latency).
Waktu yang diperlukan mekanisme akses mencapai blok yang diinginkan.
Rumus untuk mendapatkan r adalah :
R=1/2*((60*1000)/rpm).
Rpm atau jumlah putaran permenit, biasa diinformasikan oleh pabrik
pembuat.
Waktu transfer (t).
Tergantung pada kecepatan rotasi dan kepadatan rekaman. Transfer rate
(t) adalah kecepatan transfer data sesaat, data ini diberikan oleh
pembuat. Maka dapat dihitung :
> Waktu transfer per rekord (TR, record transfer time).
TR (waktu untuk transfer rekord dengan panjang rekord, R), yaitu :
TR=R/t.
> Waktu transfer per blok (btt).
Bit (block transfer time,waktu yang diperlukan untuk transfer 1 blok),
yaitu : btt=B/t.
> Bulk transfer time (t').
Didalam kasus pembacaan/penulisan secara sekuens besar maka harus
melewati gap dan daerah-daerah bukan data. Pada akhir tiap silinder,
seek akan terjadi dan selama seek time, tidak ada data yang
ditransfer.
Untuk keperluan didefinisikan bulk transfer time (t'), yaitu :


t'=(R)/(((R+W)/t)+s'), dimana :
R adalah ukuran rekord.
W adalah ruang yang disiakan.
s' adalah seek time untuk sekuen.
t adalah transfer mode.

Tidak ada komentar:

Himpunan Mahasiswa Sistem Komputer..
===============================================