Tujuan dari sistem time sharing adalah
menjaga agar proses user mendapat tanggapan yang baik dari CPU. Contoh yang
sangat sederhana adalah user yang sedang mengetik dan mengedit teks berharap
mendapatkan respons yang sangat cepat ketika tombol diketikkan, sehingga apa
yang diketikkan akan segera tampil di layar monitor.
Salah satu cara yang baik untuk
mendapatkan tanggapan yang baik dari CPU adalah tidak mengizinkan job panjang
menghambat job pendek, yaitu dengan cara mempunyai dua antrian. Satu antrian
untuk proses-prosesyang sudah menggunakan quantum time-nya. Antrian pertama
mempunyai time-slice yang pendek dan mempunyai prioritas lebih dari antrian
kedua. Dispatcher akan selalu menjalankan proses-proses berada di antrian
pertama, jika antrian kedua akan dikerjakan. Suatu proses yang sudah
menggunakan keseluruhan time-slice-nya akan diletakkan di antrian kedua.
Penjadwalan dengan dua antrian ini
mengatasi permasalah penurunan tanggapan dari CPU, ketika sistem sedang sangat
penuh dan sibuk.
Konsep
dasar dari algoritma penjadwalan dua antrian adalah:
Multilevel
Queue
a)
Ready
queue dibagi menjadi antrian terpisah:
·
Foreground
(interative)
·
Background
(batch)
b)
Tiap
queue mempunyai scheduling algorithm sendiri:
·
Foreground
– RR
·
Background
– FCFS
c)
Scheduling
harus dilakukan antar-antrian:
·
Fixed
priority scheduling; (yaitu, melayani semua dari foreground kemudian dari
background). Ada kemungkinan tidak mencukupi.
·
Time
slice; masing-masing antrian mendapat sejumlah CPU time yang terjadwal di antara
prosesnya, yaitu 80% ke foreground dalam RR dan 20% ke background dalam FCFS.
0 comments:
Post a Comment