Penjadwalan Proses

  • Jika banyak proses yang akan dijalankan maka SO harus memutuskan proses mana yang dijalankan terlebih dahulu
  • Bagian SO yang menjadi pembuat keputusan disebut dgn : Penjadwal (Scheduler)
  • Algoritmanya : Scheduling Algorithm

Kriteria Penjadwalan yang baik
  1. Adil (fairness) : memastikan tiap proses berbagi CPU secara adil
  2. Efisiensi : menjaga agar CPU senantiasa sibuk sepanjang waktu
  3. Response time (wkatu tanggap) : meminimumkan waktu respon untuk pemakai interaktif
  4. Turnaround : meminimumkan waktu batch pemakai untuk menunggu output
  5. Throughput : memaksimumkan jumlah pekerjaan per jam

Beberapa kriteria diatas ada yang bertentangan ??

Preemptive dan Non Preemptive Scheduling

  • Preemptive Scheduling :
  1. Strategi yang memungkinkan sebuah proses yang siap dijalankan ditunda sementara
  • Non Preemptive Schedulling
  1. Tidak bisa ditunda

Penjadwalan Round Robin

  • Paling tua dan paling banyak digunakan
  • Semua proses dianggap sama penting dan diberikan suatu interval waktu yang sama yang disebut dengan quantum
  • Jika quantum habis dan proses masih berjalan, CPU menghentikan proses dan memberikan quantum kepada yang lain
  • Jika proses selesai sebelum quantum habis atau terblok, CPU akan melakukan switch ke proses yang lain.
  • Masalah : ukuran quantum yang tepat (tidak terlalu pendek atau terlalu panjang)

Penjadwalan Prioritas

  • Setiap proses diberi prioritas
  • Prioritas tertinggi akan dijalankan terlebih dahulu
  • Untuk mencegah proses dengan prioritas tinggi terus menerus maka prioritas proses akan diturunkan setiap interupsi sampai ada prioritas lain yang lebih tinggi.
  • Kombinasi Round Robin dan Prioritas


Job Terpendek Pertama (Shortest Job First)

  • Digunakan untuk sistem batch
  • Run time diketahui lebih dahulu
  • Mengetahuinya dengan teknik estimasi
  • Misal 4 job dengan waktu 8, 4, 4, 4
Turnaround dengan :R.R.-> 8, 12, 16, 20
SJF -> 4, 8, 12, 20

0 komentar:

Posting Komentar

Selamat Datang © 2008 Template by:
SkinCorner