Algoritma scheduling Multiple Queues (MLQ)

by | Jan 3, 2022 | Blog, Sistem Komputer, Teknologi | 0 comments

Algoritma scheduling yang membagi queue ke dalam kelompok- kelompok tertentu bersumber pada keperluan schedulingnya. Contoh pembagian yang universal ialah antara foreground process (interaktif) dengan latar belakang process (batch). Disebabkan kedua proses ini mempunyai requirement response-time yang berbeda, hingga kita bisa mengaplikasikan MLQ untuk membagikan prioritas scheduling yang berbeda(umumnya foreground process mempunyai prioritas yang lebih besar).

Keunggulan dan Kekurangan Algoritma scheduling

Keunggulan

  • Proses telah ditugaskan ke dalam antrian secara permanen serta mempunyai keunggulan terhadap overhead scheduling.
  • Mempunyai berbagai ragam metode scheduling untuk proses.

Kekurangan

  • Sebagian proses bisa hadapi starvation pada CPU apabila queue yang diberikan prioritas teratas tidak pernah kosong. Perihal ini disebabkan dengan lama waktunya untuk yang prioritas teratas memerlukan waktu yang lama guna eksekusi, sehingga prioritas rendah tidak sempat menemukan peluang untuk dijalankan.

Konsep Cara Kerja

  • Terdapat sebagian proses yang setelah itu disusun ke dalam 1 queue yang disebut Ready Queue.
  • Algoritma ini membagi Ready Queue menjadi sebagian queues sesuai process type, memory size, ataupun process priority (Contoh: foreground process serta latar belakang process).
  • Masing-masing proses di dalam queues bakal diatur memakai Scheduling Algorithm yang lain( semacam Round-Robin ataupun First-Come-First-Serve) sesuai dengan response-time requirement tiap-tiap proses dalam queues. Umumnya, queue yang digunakan oleh foreground process mengenakan round robin sebaliknya untuk latar belakang process memakai first come first.
  • Tidak cuma proses di dalam queue, melainkan antar queues pula butuh discheduling. Tata cara scheduling yang biasa digunakan yaitu:
  1. Fixed Priority Preemptive Scheduling Method :
    • Digunakan untuk memastikan prioritas dari suatu proses yang lagi berjalan serta proses yang baru masuk atau ditambahkan ke dalam suatu sistem komputer dengan metode membandingkan skala prioritas yang dipunyai oleh proses tersebut. Apabila skala prioritas proses yang baru masuk lebih teratas, hingga proses yang sedang berjalan akan dihentikan serta segera melaksanakan proses baru dengan skala prioritas yang lebih teratas.
  1. Time Slicing :
    • Tata cara ataupun metode prosesor maupun CPU membagi waktu tiap proses yang berjalan supaya memperoleh waktu yang sepadan untuk menggunakan prosesor dalam memproses suatu proses. Bila ada banyak proses, hingga prosesor ataupun CPU sanggup membagi waktunya untuk menuntaskan proses tersebut secara bersamaan.

Terdapat banyak proses yang setelah itu dikategorikan ke dalam 5 queues : System processes, Interactive processes, Interactive editing processes, Batch processes, serta Student processes.

Scheduling 5 queues tersebut diatur dengan Fixed Priority Preemptive Scheduling Method, sehingga terdapat pembagian prioritas scheduling queue dengan System processes queue selaku prioritas utama serta Student processes queue selaku prioritas terakhir. Jadi bila terdapat proses dari Student queue dan Interactive queue yang siap dijalankan, hingga pembagian schedule yang hendak didahulukan merupakan proses dari Interactive queue.

Tidak hanya itu, proses pada Batch Queue tidak hendak bisa dijalankan apabila queue pada System Processes hingga Interactive Editing Processes tidak kosong. Kecuali apabila di disaat Batch Process tengah berjalan dan terdapat Interactive Editing Process yang baru masuk ready queue, sehingga Batch akan senantiasa berjalan.

Baca Artikel Lainnya :

Referensi

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *