Sistem
Operasi
Penjadwalan CPU
“Algoritma”
12
Ilmu Komputer Teknik Informatika Dr. Ida Nurhaida. ST., MT.
Abstract Kompetensi
Modul ini membahas tentang Diharapkan mahasiswa mengetahui dan
bagaimana algoritma penjadwalan memahami algoritma penjadwalan CPU
proses pada CPU
Algoritma Penjadwalan
Penjadwalan CPU harus memberikan solusi dari masalah pengambilan keputusan proses
mana dalam Ready Queue yang akan dialokasikan ke CPU.
Penjadwalan yang paling sederhana adalah first-come-first served (FCFS), yang dikenal
juga dengan nama first-in-first-out (FIFO) atau strict queueing scheme. Dengan pola ini,
proses yang meminta CPU pertama dialokasikan juga pertama untuk CPU. Ketika sebuah
proses masuk ke ready queue, PCB proses tersebut akan me-link ke ujung antrian. Pada
saat CPU bebas, proses tersebut akan dialokasikan ke CPU pada kepala antrian. Proses
yang berjalan akan dihapus dari antrian.
Contoh 1.
Gant Chart
Hasil
Algoritma ini sama dengan penjadwalan FCFS, tetapi ditambahkan dengan preemption
untuk men-switch antar proses. Sebuah satuan waktu kecil yang disebut time quantum atau
time slice ditentukan. Sebuah time quantum, umumnya memiliki panjang antara 10 – 100
milliseconds. Ready queue diperlakukan sebagai sebuah antrian circular.
CPU scheduler mengelilingi ready queue, mengalokasikan CPU ke setiap proses untuk
sebuah interval waktu sampai 1 time quantum.
o Sebuah proses memiliki burst time atau service time lebih besar dari 1 time
quantu,, timer akan off dan menyebabkan sebuah interupsi ke OS. Context
switch akan dieksekusi, dan proses akan ditempatkan ke tail ready queue.
Scheduler akan memilih proses berikutnya dalam ready queue.
Gant Chart
Semakin kecil time quantumnya maka akan meningkatkan jumlah context switch, yang akan
menyebabkan semakin lambatnya eksekusi, karena banyak waktu yang diperlukan untuk
melakukan context switch.
Contoh.
Gant Chart
Hasil
Algoritma penjadwalaan Shortest Process next (SPN) atau shortest-job-first (SJF) dapat di
preemptive atau nonpreemptive. Pemilihan ini muncul pada saat sebuah porses baru datang
ke ready queue ketika sebuah proses lama masih dieksekusi. Service time dari proses yang
baru dating lebih pendek dibandingkan sisa service time dari proses yang sedang
dieksekusi. Algoritma ini akan melakukan preempt proses yang sedang dieksekusi saat ini,
Contoh
Gant Chart
Hasil
Sebuah prioritas diberikan ke setiap proses dan CPU dialokasikan ke proses dengan
prioritas yang lebih tinggi. Untuk proses dengan prioritas yang sama, akan dijadwalkan
dengan menggunakan FCFS.
Contoh adalah algoritma Shortest Process Next (SPN), yang memiliki service time terkecil
memiliki prioritas terbesar dan yang memiliki service time terbesar memiliki prioritas lebih
kecil.
Gant Chart
Hasil