Alasan untuk buffering
> Proses harus menunggu utama I/O lengkap sebelum pemrosesan> Pages tertentu harus tinggal didalam memori selama I/O
Berdasarkan jenisnya, buffering dibedakan menjadi 2 kategori
* Berorientasi blok (Block-oriented)
> Informasi disimpan didalam ukuran blok yang tetap> Transfer membuat sebuah blok setiap waktu
> Digunakan untuk disk dan tape
* Berorientasi Alur (Stream-oriented)
> Transfer informasi sebagai alur byte> Digunakan untuk terminal, printer, port komunikasi, mouse, dan beberapa device lainnya yang
bukan penyimpanan sekunder.
Ada 3 cara berbeda dalam melakukan buffering , yaitu
* Buffer Tunggal
> Sistem operasi menugaskan sebuah buffer didalam memori utama untuk sebuahpermintaan I/O
* Berorientasi blok
- Proses user dapat memproses sebuah blok data ketika blok selanjutnya sedang dibaca
- Pemindahan (swapping) dapat terjadi selama masukkan sedang mengambil tempat
didalam sistem memori, bukan di memori pengguna
- Sistem operasi menempatkan trak yang ditugaskan sistem buffer untuk
proses pengguna
* Berorientasi alur
- Menggunakan sebuah bentuk waktu linier (line at time)
- Pengguna (user) masukkan (input) dari sebuah terminal merupakan suatu waktu
linier sengan membawa kebali sinyal-sinyal akhir dari sebuah jalur
- Keluaran (output) ke terminal merupakan sebuah waktu linier
Skema
* Buffer Ganda
> Menggunakan dua buah sistem buffer
> Sebuah proses dapat memindahkan data transfer data) ke atau dari
sebuah buffer ketika sistem operasi mengosongkan atau mengisi buffer yang lain
* Circular Buffer
> Menggunakan lebih dari dua buah buffer
> Masing-masing buffer terdiri satu unit didalam sebuah buffer cirkular
> Digunakan ketika operasi I/O harus menempatkan proses
0 komentar:
Posting Komentar