Penjadwalan Proses
Merupakan kumpulan kebijaksanaan & mekanisme
pada SO berkenaan dengan urutan kerja yg
dilakukan sistem komputer.
Bertugas memutuskan proses yg harus berjalan,
kapan, dan selama berapa lama proses itu
berjalan.
Sasaran utama penjadwalan proses adalah kinerja
menurut kriteria yg diajukan
Kriteria yang digunakan utk mengukur dan
optimasi kinerja penjadwalan: adil (fairness),
efisiensi, waktu tanggap (response time),
turn arround time, throughput
Tipe-Tipe Penjadwalan
Dapat terdapat tiga tipe penjadwalan berada secara bersama-
sama pada sistem operasi yg kompleks, yaitu:
◦ Penjadwalan jangka pendek,
bertugas menjadwalkan alokasi pemroses diantara proses-proses
ready di memori utama.
◦ Penjadwalan jangka menengah,
mengendalikan transisi dari keadaan suspend ke ready proses-proses
swapping.
◦ Penjadwalan jangka panjang,
bekerja terhadap antrian batch dan memilih batch berikutnya yang
harus dieksekusi.
Note:
Swapping adalah aktivitas pemindahan proses yang tertunda
dari memori utama ke memori sekunder.
Kriteria Optimasi Kinerja
Adil (fairness)
◦ Proses2 diberlakukan sama -> mendapat jatah waktu pemroses yg sama & tak
ada proses yg tak kebagian layanan pemroses
◦ Sasaran: menjamin tiap proses mendapat bagian dari pemroses yg adil
Efisiensi
◦ Pemroses dihitung dg berapa perbandingan (rasio) waktu sibuk pemroses.
◦ Sasaran: menjaga proses agar tetap dalam keadaan sibuk -> efisiensi maksimum
Waktu Tanggap (response time)
◦ Waktu yg dihabiskan dari saat karakter terakhir dari perintah dimasukkan program
sampai hasil pertama yg muncul di layar
◦ Sasaran: meminimalkan waktu tanggap
Turn Arrround Time
◦ Waktu yg dihabiskan dari saat program/job mulai masuk ke sistem sampai proses
diselesaikan sistem
◦ TA = waktu eksekusi + waktu menunggu
◦ Sasaran: meminimalkan turn arround time
Throughput
◦ Jumlah kerja yg dapat diselesaikan dalam satu unit waktu
◦ Sasaran: memaksimalkan jumlah job yang diproses per satu interval waktu
◦ Lebih tinggi angka throughput, lebih banyak kerja yang dilakukan sistem
Penjadwalan CPU
Penjadwalan CPU mungkin akan
dijalankan ketika proses dalam keadaan:
◦ Berubah dari running ke waiting state.
◦ Berubah dari running ke ready state.
◦ Berubah dari waiting ke ready.
◦ Terminates.
Algoritma Penjadwalan Proses
FIFO (First In First Out)
SJF (Shortest Job First)
FIFO -1-
Proses yg tiba lebih dahulu akan dilayani lebih
dahulu
Kalau ada proses tiba pada waktu yg sama,
maka pelayanan mereka dilaksanakan melalui
urutan mereka dlm antrian
Proses di antrian belakang harus menunggu
sampai semua proses di depannya selesai.
FIFO -2-
Contoh soal 1:
◦ Jika diketahui terdapat 5 macam antrian proses, yaitu A-B-C-D-E
dengan waktu kedatangan semuanya 0. Lama proses berturut-
turut antara lain: 5-2-6-8-3.
◦ Pertanyaan:
Kapan dimulainya eksekusi dari tiap-tiap antrian proses tsb?
Kapan selesai eksekusinya?
Hitung Turn Arround Time (TA)-nya?
Berata rata-rata TA?
Rumus
◦ TA = Waktu Tunggu + Lama Eksekusi
◦ Rata-rata TA = ∑TA / ∑Job
◦ Waktu Tunggu = Mulai Eksekusi – Waktu Tiba
FIFO -3-
Jawaban:
A 0 5 0 5 0 5
B 1 2 5 7 4 6
C 2 6 7 13 5 11
D 2 8 13 21 11 19
E 5 3 21 24 16 19
∑TA = 60
Rerata = 12
FIFO -7-
Berdasarkan kriteria penilaian penjadwalan:
◦ Fairness
Penjadwalan FIFO adil dalam arti semantiks (dalam arti antrian)
◦ Efesiensi
Penjadwalan FIFO sangat efisien dalam penggunaan pemroses
◦ Waktu Tanggap
Penjadwalan sgt tidak memuaskan, karena proses dpt
menunggu lama
◦ Turn Arround Time
Penjadwalan FIFO tidak bagus
◦ Throughput
Penjadwalan FIFO tidak bagus.
SJF -1-
Dasar prioritas adalah pendeknya proses.
Makin pendek/singkat proses makin tinggi prioritasnya
Langkah I: tentukan urutan prioritas berdasarkan
pendeknya proses yang dilayani
Langkah II: penentuan proses mana yg dilayani oleh
pemroses
SJF -2-
Contoh Soal 1:
B 0 5
C 0 7
D 0 1
E 0 3
SJF -3-
Nama Proses Waktu Tiba Lama
Eksekusi
D 0 1
E 0 3
B 0 5
C 0 7
A 0 10
SJF -4-
Nama Waktu Lama Mulai Selesai TA
Proses Tiba Eksekusi Eksekusi Eksekusi
D 0 1 0 1 1
E 0 3 1 4 4
B 0 5 4 9 9
C 0 7 9 16 16
A 0 10 16 26 26
∑TA = 56
rata2 TA = 11,2
SJF -5-
Nama Proses Lama Waktu Tiba
Eksekusi
D 1 0
E 3 2
B 5 5
C 7 7
A 10 9
SJF -6-
Nama Waktu Lama Mulai Selesai Waktu TA
Proses Tiba Eksekusi Eksekusi Eksekusi Tunggu
D 0 1 0 1 0 1
E 2 3 2 5 0 3
B 5 5 5 10 0 5
C 7 7 10 17 3 10
A 9 10 17 27 8 18
∑TA = 37
Rerata = 7,4