BLOCKING dan BUFFERING
Oleh :
BLOCKINGBlocking adalah penempatan beberapa record dalam satu block, panjang record menentukan metode blocking
Blok satuan dari unit data yang ditransfer dari memori utama ke memori sekunder atau sebaliknya secara serentak.
Sektor pembagian track ke dalam blok dengan ukuran yang sama.
Record unit penyimpanan data pada level logical atau file, record berukuran tetap atau dapat disesuaikan dengan pemakaian. Pencocokan record dan block disebut blocking.
2. Variable – Length Spanned Blocking– Panjang record tidak tetap.
– Jika 1 record tidak dapat dimuat di 1
blok, sebagian disimpan di blok lain
secara berurutan.
1. Fixed blocking– Record panjang tertentu.
– Panjang record ≤ block size.
– Blocking faktor Bfr = {B/R}
– 1 record tidak boleh pada blok yang
berbeda.
Con’t
3. Variable – Length Unspanned Blocking– Blok berisi record-record dan panjang tidak
tetap.– Setiap record harus dimuat di 1 blok.
– Pemborosan terjadi karena record tidak ditempatkan lagi pada sisa blok, maka record ditempatkan pada blok berikutnya.
– Panjang record tidak boleh melebihi panjang dibanding panjang blok.
For Example....
1. Fixed Blocking : apabila panjang blok 100 KB dan panjang record 30 KB, maka 1 blok dapat menyimpan (100/30 = 3). Berarti 1 blok dapat menyimpan 3 record.
2. Variable – length spanned blocking : apabila ada 3 record masing masing berukuran 10, 15 dan 10 KB dan 1 blok ukurannya 10 KB, maka record pertama disimpan pada blok pertama, record kedua disimpan pada blok kedua dan ketiga, record ketiga disimpan pada blok ketiga dan keempat.
For Example....
Variable – length unspanned blocking : apabila ada 3 record masing masing berukuran 2, 3, 6 Kb dan 1 blok berukuran 10 KB, maka dengan cara ini masing masing record disimpan pada blok blok tersendiri/
BUFFERING
Buffer : bagian memori yang dicadangkan dimana blok atau file ditampung sementara dipertahankan menunggu kesempatan untuk melengkapi proses transfer ke atau dari devise penyimpanan atau ke lokasi di memori atau dari/ ke perangkat I/O
Pemakaian Buffer Total kapasitas buffer = jumlah pemakai * jumlah file * buffer * kapasitas 1 block buffer
BUFFERING
Contoh : suatu komputer dengan 30 user, tiap user dapat memanipulasi 3 file sekaligus. Setiap file menggunakan 1 sampai 2 buffer. 1 blok buffer berukuran 1000 byte, maka diperlukan 90 – 180 blok buffer.Total buffer yang diperlukan adalah = 30*(3*2)*1000 = 180.000 buffer.
Tiga alasan melakukan buffering
1) Mengatasi perbedaan kecepatan antara produsen dengan konsumen dari sebuah stream data.
2) Untuk menyesuaikan perangkat-perangkat yang mempunyai perbedaan dalam ukuran transfer data.
3) Untuk mendukung copy semantics untuk aplikasi I/O.
Manajemen Buffer
2. Anticipatory Buffering1. Single
Buffering 3. Double Buffering
Single Buffering
• Merupakan teknik buffering yang paling sederhana
• Ketika proses memberi perintah untuk perangkat I/O, Sistem operasi menyediakan buffer memori utama sistem untuk operasi transfer data I/O.
• Saat transfer selesai, segera meminta blok lain dari perangkat I/O.
• Teknik ini secara umum meningkatkan kecepatan dibandingkan tanpa buffering
Double Buffering
• Melibatkan 2 buffer memori sistem
• Proses dapat ditransfer ke/dari satu buffer sementara sistem operasi mengosongkan buffer yang lain
• Menjamin proses tidak mengunggu operasi I/O
Circular Buffering
• Saat lebih dari dua buffer dipergunakan, kumpulan buffer ini diacu sebagai circular buffer.
• Tiap buffer individu adalah satu unit di circular buffer.
• Hal ini karena double buffering tidak mencukupi jika prosesmelakukan operasi I/O yang berurutan secara cepat.
Terima Kasih