Multilevel Feedback Queue Scheduling
Algoritma ini mirip sekali dengan algoritma multilevel queue. Perbedaannya ialah algoritma ini mengizinkan proses untuk pindah antrian. Jika suatu proses menyita CPU terlalu lama, maka proses itu akan dipindahkan ke antrian yang lebih rendah. Hal ini menguntungkan proses interaksi karena proses ini hanya memakai waktu CPU yang sedikit. Demikian pula dengan proses yang menunggu terlalu lama. Proses ini akan dinaikkan tingkatannya. Biasanya prioritas tertinggi diberikan kepada proses dengan CPU burst terkecil, dengan begitu CPU akan terutilisasi penuh dan M/K dapat terus sibuk. Semakin rendah tingkatannya, panjang CPU burst proses juga semakin besar.
Algoritma ini didefinisikan melalui beberapa parameter, antara lain:
a. Jumlah antrian.
b. Algoritma penjadualan tiap antrian.
c. Kapan menaikkan proses ke antrian yang lebih tinggi.
d. Kapan menurunkan proses ke antrian yang lebih rendah.
e. Antrian mana yang akan dimasuki proses yang membutuhkan.
Dengan pendefinisian seperti tadi membuat algoritma ini sering dipakai, karena algoritma ini mudah dikonfigurasi ulang supaya cocok dengan sistem. Tapi untuk mengatahui mana penjadwal terbaik, kita harus mengetahui nilai parameter tersebut.
Multilevel feedback queue adalah salah satu algoritma yang berdasar pada algoritma multilevel queue. Perbedaan mendasar yang membedakan multilevel feedback queue dengan multilevel queue biasa adalah terletak pada adanya kemungkinan suatu proses berpindah dari satu antrian ke antrian lainnya, entah dengan prioritas yang lebih rendah ataupun lebih tinggi. Pada zaman sekarang ini algoritma multilevel feedback queue adalah salah satu yang paling banyak digunakan.
Penjadwalan dengan menggunakan algoritma multilevel feedback queue sama dengan algoritma pada penjadwalan multilevel queue, pada penjadwalan feedback queue suatu proses yang dapat berpindah antar berbagai queue; aging dapat diterapkan dengan cara ini. Multilevel-Feedback Queue Scheduler digambarkan oleh parameter berikut:
• Jumlah queue
• Scheduling algoritma untuk tiap queue
• Metode yang digunakan untuk memutuskan ketika upgrade suatu proses
• Metode yang digunakan untuk memutuskan ketika menurunkan suatu proses
• Metode yang digunakan untuk menentukan queue mana yang akan diproses ketika proses membutuhkan service
Contoh dari Multivel Feedback Queue
• Tiga queue:
• Q0- time quantum 8 miliseconds
• Q1- time quantum 16 miliseconds
• Q2- FCFS
Scheduling
• Pekerjaan baru masuk queue Q0 yang dilayani FCFS. Ketika memperoleh CPU, pekerjaan menerima 8 seperseribu detik. Jika tidak selesai dalam 8 seperseribu detik, pekerjaan dipindah ke queue Q1.
• Pada Q1 pekerjaan dilayani FCFS dan menerima 16 seperseribu detik tambahan . Jika masih belum lengkap, maka di-preempted dulu dan dipindah ke queue Q2.
Proses multilevel feedback queue scheduling juga bisa dilakukan dengan cara lebih adil, dengan menggunakan tiga metode:
• Menggunakan algoritma RR dengan quantum 5
• Menggunakan algoritma RR dengan quantum 10
• Menggunakan algoritma FCFS
Seluruh proses dikerjakan dengan algoritma RR dengan quantum 5, jika proses tidak selesai, proses dikembalikan ke ready queue dan urutan proses diletakkan di bagian terakhir dari proses yang ada untuk diproses. Setelah proses dengan waktu kedatangan proses lain selesai, baru diproses kembali dengan algoritma RR dengan quantum 10. Jika masih belum selesai, maka proses akan dikerjakan dengan algoritma FCFS sampai semua proses selesai.
Algoritma ini mirip sekali dengan algoritma multilevel queue. Perbedaannya ialah algoritma ini mengizinkan proses untuk pindah antrian. Jika suatu proses menyita CPU terlalu lama, maka proses itu akan dipindahkan ke antrian yang lebih rendah. Hal ini menguntungkan proses interaksi karena proses ini hanya memakai waktu CPU yang sedikit. Demikian pula dengan proses yang menunggu terlalu lama. Proses ini akan dinaikkan tingkatannya. Biasanya prioritas tertinggi diberikan kepada proses dengan CPU burst terkecil, dengan begitu CPU akan terutilisasi penuh dan M/K dapat terus sibuk. Semakin rendah tingkatannya, panjang CPU burst proses juga semakin besar.
Algoritma ini didefinisikan melalui beberapa parameter, antara lain:
a. Jumlah antrian.
b. Algoritma penjadualan tiap antrian.
c. Kapan menaikkan proses ke antrian yang lebih tinggi.
d. Kapan menurunkan proses ke antrian yang lebih rendah.
e. Antrian mana yang akan dimasuki proses yang membutuhkan.
Dengan pendefinisian seperti tadi membuat algoritma ini sering dipakai, karena algoritma ini mudah dikonfigurasi ulang supaya cocok dengan sistem. Tapi untuk mengatahui mana penjadwal terbaik, kita harus mengetahui nilai parameter tersebut.
Multilevel feedback queue adalah salah satu algoritma yang berdasar pada algoritma multilevel queue. Perbedaan mendasar yang membedakan multilevel feedback queue dengan multilevel queue biasa adalah terletak pada adanya kemungkinan suatu proses berpindah dari satu antrian ke antrian lainnya, entah dengan prioritas yang lebih rendah ataupun lebih tinggi. Pada zaman sekarang ini algoritma multilevel feedback queue adalah salah satu yang paling banyak digunakan.
Penjadwalan dengan menggunakan algoritma multilevel feedback queue sama dengan algoritma pada penjadwalan multilevel queue, pada penjadwalan feedback queue suatu proses yang dapat berpindah antar berbagai queue; aging dapat diterapkan dengan cara ini. Multilevel-Feedback Queue Scheduler digambarkan oleh parameter berikut:
• Jumlah queue
• Scheduling algoritma untuk tiap queue
• Metode yang digunakan untuk memutuskan ketika upgrade suatu proses
• Metode yang digunakan untuk memutuskan ketika menurunkan suatu proses
• Metode yang digunakan untuk menentukan queue mana yang akan diproses ketika proses membutuhkan service
Contoh dari Multivel Feedback Queue
• Tiga queue:
• Q0- time quantum 8 miliseconds
• Q1- time quantum 16 miliseconds
• Q2- FCFS
Scheduling
• Pekerjaan baru masuk queue Q0 yang dilayani FCFS. Ketika memperoleh CPU, pekerjaan menerima 8 seperseribu detik. Jika tidak selesai dalam 8 seperseribu detik, pekerjaan dipindah ke queue Q1.
• Pada Q1 pekerjaan dilayani FCFS dan menerima 16 seperseribu detik tambahan . Jika masih belum lengkap, maka di-preempted dulu dan dipindah ke queue Q2.
Proses multilevel feedback queue scheduling juga bisa dilakukan dengan cara lebih adil, dengan menggunakan tiga metode:
• Menggunakan algoritma RR dengan quantum 5
• Menggunakan algoritma RR dengan quantum 10
• Menggunakan algoritma FCFS
Seluruh proses dikerjakan dengan algoritma RR dengan quantum 5, jika proses tidak selesai, proses dikembalikan ke ready queue dan urutan proses diletakkan di bagian terakhir dari proses yang ada untuk diproses. Setelah proses dengan waktu kedatangan proses lain selesai, baru diproses kembali dengan algoritma RR dengan quantum 10. Jika masih belum selesai, maka proses akan dikerjakan dengan algoritma FCFS sampai semua proses selesai.
Sumber :hadisetiyadi.blogspot.co.id