2. Penjadwalan disini memiliki makna kumpulan kebijaksanaan dan
mekanisme di sebuah sistem operasi yang berkaitan dengan urutan
proses kerja dalam memutuskan proses mana yang akan dijalankan
dahulu, kapan berjalan atau berapa lama proses itu berjalan.
Penjadwalan proses pun memiliki kriteria untuk mengukur dan optimasi
kinerja penjadwalan, yakni :
DefinisiPenjadwalanProses
3. 1. Adil (fairness) –> Proses yang diperlakukan sama, yakni mendapat jatah
waktu pemroses yang sama dan tak ada proses yang tak kebagian layanan
pemroses sehingga mengalami kekurangan waktu
2. Efisiensi (eficiency) –> pemroses dihitung dengan perbandingan (rasio)
waktu sibuk pemroses
3. Waktu tanggap (response time) –>
a. Sistem interaktif, terminal response time yakni waktu yang dihabiskan
dari saat karakter terakhir dari perintah dimasukkan sampai hasil
pertama muncul dilayar
b. Sistem waktu nyata, realtime/event response time adalah waktu dari
saat kejadian (internal atau eksternal) sampai instruksi pertama layanan
yang dimaksud dieksekusi.
KriteriaPenjadwalanProses
4. 1. Turn around time –> waktu yang dihabiskan dari saat program mulai masuk
ke sistem sampai proses diselesaikan oleh sistem.
2. Throughput –> jumlah kerja yang dapat diselesaikan dalam satu unit waktu.
5. 1. Penjadwalan Jangka pendek (short term scheduler) –> menjadwalkan alokasi pemroses
diantara proses yang ready di memori utama.
2. Penjadwalan jangka menengah (medium term scheduler) –> Setelah eksekusi selama
selang beberapa waktu, proses mungkin menunda sebuah eksekusi karena membuat
permintaan request input/output atau memanggil system call.
3. Penjadwalan Jangka Panjang (long term scheduler) –> bekerja terhadap antrian batch
dan memilih batch berikutnya yang harus dieksekusi. Batch biasanya adalah proses-
proses dengan penggunaan sumber daya yang intensif (yaitu waktu pemroses,
memori, perangkat I/O).Memiliki prioritas rendah
TipePenjadwalan
6. 1. Penjadwalan Preemtive –> Proses diberi jatah waktu oleh pemroses, yang
mana pemroses dapat diambil alih (interupsi) proses lain, sehingga proses
disela sebelum selesai dan harus dilanjutkan menunggu jatah waktu
pemroses kembali pada proses itu.
2. Penjadwalan non-preemtive –> proses yang sedang berjalan tidak dapat
disela, sekali proses berada di status runnung maka proses akan dieksekusi
terus sampai proses berhenti karena selesai atau diblok untuk menunggu I/O
StrategiPenjadwalan
8. Proses-proses diberi jatah waktu pemroses berdasarkan waktu kedatangan. Pada
saat proses mendapat jatah waktu pemroses, proses dijalankan sampai selesai.
Penjadwalan ini :
a. Baik untuk sistem batch yang sangat jarang berinteraksi dengan
pemakai. Contoh : aplikasi analisis numerik, maupun pembuatan tabel.
b. Sangat tidak baik (tidak berguna) untuk sistem interaktif, karena tidak
memberi waktu tanggap yang baik.
c. Tidak dapat digunakan untuk sistem waktu nyata (real-time
applications).
FIFO(FirstInFirstOut)atau
FCFS(FirstComeFirstServe)
9. Proses yang datang pertama dilayani terlebih dahulu tidak peduli apakah burst time nya
panjang atau pendek.
Contoh : Berikut ini terdapat proses pada sebuah pada sebuah CPU dengan AT dan BT-nya
masing-masing. Gambarkanlah Gantt Chart dan tentukan rata-rata waktu tunggu dengan
Algoritma FCFS
FIFOatauFCFS
Proses Arrival Time (AT) Burst Time (BT)
P1 0 12
P2 2 8
P3 3 5
P4 5 2
P5 9 1
11. Waktu jalan proses sampai selesai diketahui sebelumnya. Mekanismenya adalah
menjadwalkan proses dengan waktu jalan terpendek lebih dulu sampai selesai,
sehingga memberikan efisiensi yang tinggi dan turn around time rendah dan
penjadwalannya tak berprioritas.
Masalah yang muncul adalah :
• Tidak mengetahui ukuran job saat job masuk. Untuk mengetahui ukuran job
adalah dengan membuat estimasi berdasarkan kelakukan sebelumnya.
• Proses yang tidak datang bersamaan, sehingga penetapannya harus dinamis.
• Penjadwalan ini jarang digunakan, karena merupakan kajian teoritis untuk
pembandingan turn around time.
SJF(ShortestJobFirst)
13. • Penjadwalan yang paling tua, sederhana, adil, banyak digunakan algoritmanya
dan mudah diimplementasikan.
• Penjadwalan ini bukan dipreempt oleh proses lain tetapi oleh penjadwal
berdasarkan lama waktu berjalannya proses (preempt by time).
• Penjadwalan tanpa prioritas. Berasumsi bahwa semua proses memiliki
kepentingan yang sama, sehingga tidak ada prioritas tertentu.
ROUNDROBIN(RR)
14. Penjadwalan proses dilakukan tanpa memperhatikan prioritas. Proses dapat
disela/interupsi oleh Sistem operasi berdasarkan waktu berjalannya proses. Semua proses
dianggap penting dan diberi jatah waktu pemakaian prosesor (time slice/quantum).
Ada beberapa ketentuan Algoritma RR :
• Jika quantum habis dan proses belum selesai maka proses akan dialihkan statusnya
menjadi ready
• Jika quantum belum habis dan proses sedang menunggu event atau operasi I/O maka
status proses menjadi blocked
• Jika quantum belum habis tetapi proses telah selesai maka proses akan diakhiri dan
penjadwal akan dijalankan untuk memilih proses lain untuk dieksekusi.
ROUNDROBIN
15. Proses AT BT
A 0 7
B 1 5
C 2 8
D 3 2
E 4 6
Gantt Chart
A
0 3
CPU
RQ A(7)
Waktu Tunggu :
A = 26 – 0 – 7 19
B = 19 – 1 – 5 8
C = 28 – 2 – 8 2
D = 11 – 3 – 2 0
E = 25 – 4 – 6 1
Jumlah 71
Rata-rata Waktu Tunggu (AWT) : 71 / 5 14,2 satuan waktu
Quantum time = 3
B(5)
A(4)
6
B
B(2)
A(4)
C(8)
9 11 14 17 19
C
B(2)
A(4)
D(2)
C(5)
D E
B(2)
A(4)
E(6)
C(5)
B(2)
A(4)
E(3)
C(5)
A
B(2)
A(1)
E(3)
C(5)
B
A(1)
E(3)
C(5)
C
22
A(1)
E(3)
C(2)
25
A(1)
C(2)
E
26
A
C(2)
28
C
16. • Penjadwalan berprioritas dinamis.
• Adalah preemptive untuk timesharing
• Melengkapi SJF
• Pada SRF, proses dengan sisa waktu jalan diestimasi terendah dijalankan,
termasuk proses-proses yang baru tiba.
• Pada SJF, begitu proses dieksekusi, proses dijalankan sampai selesai.
• Pada SRF, proses yang sedang berjalan (running) dapat diambil alih proses
baru dengan sisa waktu jalan yang diestimasi lebih rendah.
SRF(ShortestRemainingFirst)
17. Jika suatu proses sedang dikerjakan kemudian ada proses lain yang datang dimana BT-nya
lebih kecil dari sisa waktu proses yang sedang dijalankan, maka proses lain ini akan
dikerjakan dulu dan sisa proses tadi dikembalikan ke Ready Queue (RQ)
Contoh : Gambarkanlah Gantt Chart dan tentukan rata-rata waktu tunggu dengan
Algoritma SJF-Preemptive
SRF(ShortestRemainingFirst)
Proses Arrival Time (AT) Burst Time (BT)
P1 0 12
P2 2 8
P3 3 5
P4 5 2
P5 9 1
19. CREDITS: This presentation template was
created by Slidesgo, including icons by
Flaticon, and infographics & images by
Freepik
Ada pertanyaan?
Terimakasih