180 likes | 366 Views
PENJADWALAN CPU. Afrizal Fahrudin Bagus Azril Hala Rizqul H. KONSEP DASAR. Penjadwalan CPU brfungsi untuk penjadwalan resource komputer yang akan dijalankan . Penjadwalan CPU dibutuhkan pada sistem multiprogramming untuk memaksimalkan utilitas CPU.
E N D
PENJADWALANCPU AfrizalFahrudin BagusAzril HalaRizqul H
KONSEP DASAR • Penjadwalan CPU brfungsiuntukpenjadwalan resource komputer yang akandijalankan. • Penjadwalan CPU dibutuhkanpadasistem multiprogramming untukmemaksimalkanutilitas CPU. • CPU-I/O Burst adalahsiklusuntukeksekusi CPU danmenunggu I/O.
CPU Scheduler • Prosesproses yang adadimemoriutama (ready queue) untukdieksekusidanmengalokasikan CPU untuksalahsatudariprosestersebut. Keputusanuntukmenjadwalkan CPU mengikutiempatkeadaandibawahini: Apabilaprosesberpindahdarikeadaan running kewaiting. Apabilaprosesberpindahdarikeadaan running ke ready. Apabilaprosesberpindahdarikeadaan waiting ke ready. Apabilaprosesberhenti.
Dispatcher • Modul yang memberikankontrolpada CPU terhadapproses yang dipilihdengan short-term scheduling. • Fungsi Dispatcher: 1. Switching Context 2.Switching ke user-mode 3. Melompatkelokasitertentupada user program untukmemulai program
KRITERIA PENJADWALAN beberapakriteria yang digunakanuntukmelakukanpembandinganalgoritmapenjadwalan CPU, antara lain: CPU Utilization, menggunakan CPU sesibukmungkin Throughput, banyaknyaproses yang dikerjakandalamsatuanwaktu Turnaround Time, waktu yang diperlukanuntukmengeksekusiproses Waiting Time, waktu yang diperlukanuntukmenunggu Ready Queue Response Time, waktu yang diperlukansuatuprosesdarimemintalayananhinggaadaresponpertamadaripermintaantersebut
First-Come First-Served Scheduling (FCFS) • Proses yang pertama kali memeintajatahwaktuuntukmenggunakan CPU akandilayaniterlebihdahulu • Rata-rata waktutunggucukuptinggi • Algoritma FCFS termasuk non-preemptive. karena, sekali CPU dialokasikan padasuatuproses, makaprosestersebuttetapakanmemakai CPU sampaiprosestersebut melepaskannya, yaitu jika proses tersebut berhenti atau meminta I/O.
Contoh Misalnyaterdapattigaproses yang dapatdenganurutanP1, P2, dan P3 dengan waktu CPU-burst dalammilidetik yang diberikansebagaiberikut: Process Burst Time P1 24 P2 3 P3 3 Gant Chart denganpenjadwalan FCFS adalahsebagaiberikut: Waktutungguuntuk P1 adalah 0, P2 adalah 24 dan P3 adalah 27 sehingga rata waktutungguadalah (0+24+27)/3 = 17 milidetik. P3 P1 P2 24 27 0 30
Shortest Job First Scheduler (SJF) • Proses yang memiliki CPU Burst paling kecilakandilayaniterlebihdahulu • Non Preemptive, bila CPU diberikanpadaproses, makatidakbisaditundasampai CPU Burst selesai • Preemptive, jikaprosesbarudatangdenganpanjang CPU Burst lebihpendekdarisisawaktuproses yang saatitusedangdieksekusi, prosesiniditundadenganprosesbaru
Contoh SJF Process Arrival Time Burst Time P1 0.0 7 P2 2.0 4 P3 4.0 1 P4 5.0 4 p1 p3 p2 p4 0 3 16 7 8 12 Waktutungguuntuk p1 = 0. p2 = 26, p3 = 3 dan p4 = 7 sehingga rata-rata waktutungguadalah 4 milidetik
PRIORITY SCHEDULING • Tiapprosesdilengkapidenganprioritas • CPU dialokasikanuntukprosesdenganprioritas paling tinggi, apabilaprioritassama, digunakanalgoritma FCFS • Bersifat preemptive dan non preemptive • Pada non preemptive, bila p1 datangsaatproses p0, prioritas p1>p0, maka p0 diselesaikansampaihabis CPU Burst-nya • Pada preemptive, p0 dihentikanduludan CPU digunakanuntuk p1
Contoh Process Burst Time Priority P1 10 3 P2 1 1 P3 2 3 P4 1 4 P5 5 2 p2 p3 p1 p3 p4 0 1 6 16 18 19 Waktutungguuntuk p1 = 6, p2 = 0, p3 = 16, p4 = 18 dan p5 = 1 sehingga rata-rata waktutungguadalah 8.2 milidetik
ROUND-ROBIN SCHEDULING • Konsepdasar : Time-Sharing • Quantum time untukmembatasiwaktuproses • Bila CPU Burst < Quantum time, prosesmelepaskan CPU jikaselesaidan CPU digunakanuntukprosesselanjutnya • Bila CPU Burst > Quantum time, prosesdihentikansementaradanmengantridiekordari ready queue, CPU menjalankanprosesberikutnya
Contoh Process Burst Time P1 24 P2 3 P3 3 p1 p2 p3 p1 p1 p1 p1 p1 10 30 0 4 7 14 18 22 26 Waktutungguuntuk p1 = 6, p2 = 4 dan p3 = 7 sehingga rata-rata waktutungguadalah 5.66 milidetik