Algoritma SJF adalah suatu kasus khusus dari penjadwalan berprioritas. Tiap-
tiap proses dilengkapi dengan nomor prioritas (integer). CPU dialokasikan untuk proses
yang memiliki prioritas paling tinggi (nilai integer terkecil biasanya merupakan prioritas
terbesar). Jika beberapa proses memiliki prioritas yang sama, maka akan digunakan
algoritma FCFS. Penjadwalan berprioritas terdiri dari dua skema yaitu non preemptive
dan preemptive. Jika ada proses P 1 yang datang pada saat P 0 sedang berjalan, maka
akan dilihat prioritas P 1 . Seandainya prioritas P 1 lebih besar dibanding dengan prioritas
P 0 , maka pada non-preemptive, algoritma tetap akan menyelesaikan P 0 sampai habis
CPU burst-nya, dan meletakkan P 1 pada posisi head queue. Sedangkan pada
preemptive, P 0 akan dihentikan dulu, dan CPU ganti dialokasikan untuk P 1 .
Misalnya terdapat lima
proses P 1 , P 2 , P 3 , P 4 dan P 5 yang datang secara
berurutan dengan CPU burst dalam milidetik.
Process
Burst Time Priority
P 1 10 3
P 2 1 1
P 3 2 3
P 4 1 4
P 5 5 2
Penjadwalan proses dengan algoritma priority dapat dilihat pada gant chart berikut :
P 2
0
P 1
P 5
6
1
P 4
P 3
16
18 19
Waktu tunggu untuk P 1 adalah 6, P 2 adalah 0, P 3 adalah 16, P 4 adalah 18 dan P 5 adalah
1 sehingga rata-rata waktu tunggu adalah (6 + 0 +16 + 18 + 1)/5 = 8.2 milidetik.
Belum ada tanggapan untuk "Penjadwalan Proses - Proiritas Penjadwalan -"
Post a Comment