220 likes | 450 Views
PENJADWALAN PROSES. Schedulling. Memilih proses dari antrian untuk di kerjakan oleh CPU. Tujuan Schedulling. Mengatur alokasi waktu yang di gunakan CPU sehingga proses berjalan sepanjang waktu dan meminimalisasi CPU idle Meningkatkan tingkat utilitas CPU. Kapan waktu Schedulling.
E N D
Schedulling • Memilihprosesdariantrianuntukdikerjakanoleh CPU.
TujuanSchedulling • Mengaturalokasiwaktu yang digunakan CPU sehinggaprosesberjalansepanjangwaktudanmeminimalisasi CPU idle • Meningkatkantingkatutilitas CPU
KapanwaktuSchedulling • Proses new • Proses exit • Prosessedangdidalamblok I/O • Interupt I/O • CPU idle
Queue(Antrian) • Job Queue : daftarantrianpekerjaan yang akandijalankanolehcpu. Berisisemuaproses yang adadalam CPU. • Ready Queue : daftarantrianpekerjaan yang beradapada memory utama yang siapdieksekusi
Queue(Antrian) • Device Queue : daftarantrianproses yang menungguperalatan. • Tiap Device punya queue sendiri-sendiri
KriteriaPenilaianalgoritma • CPU utilization : Cpusemakinsibuksemakinbaik. (range 40 % - 90 %) • Throughput : Jumlahproses yang diselesaikandalamsatusatuanwaktu (1 proses per jam Untukproses yang panjang, 10 proses per detikuntukproses yang pendek)
KriteriaPenilaianalgoritma • Turn Around Time(TAT) • Jedawaktuantarapengajuanprosessampaidenganprosesselesai • Waiting Time • JedaWaktuprosesberadadi Ready Queue • Response Time • Jedawaktuantarapengajuanprosessampaiprosesdiresponpertama kali oleh CPU
MacamSchedulling • Preemptive Schedulling • Penjadwalan yang memungkinkanSistemoperasimemberhentikansementaraproses yang sedangberjalanuntukmemberiruangkepadaproses yang prioritasnyalebihtinggi • Ex : Windows 95, Windows XP, Linux, Unix, AmigaOS, MacOS X, dan Windows NT
MacamSchedulling • Non Preemptive Schedulling • Non Preemptiveialahsalahsatujenispenjadwalandimanasistemoperasitidakpernahmelakukancontext switchdariproses yang sedangberjalankeproses yang lain. Dengankata lain, proses yang sedangberjalantidakbisadi- interupt. • Ex : Windows 3.1, Macintosh
Schedulling Algorithm • FCFS (First Come First Serve) • Algoritma yang paling sederhana. • Cara kerjanyayaitupekerjaanmana yang datangdahulumakadiaakandikerjakan. • Algoritmainitermasuk Non Preemptive
Contoh FCFS • Waiting time • P1= 0 ms, P2= 24 ms, P3 =27 ms • Average Waiting time • (0+24+27) / 3= 17 ms
SJFS (Shortest Job First Schedulling) • Algoritmapenjadwalan yang memilihprosesberdasarkanproses yang memiliki job paling sedikit. • Algoritmainibisa Preemptive maupun Non Preemptive karenaapabilaadaproses yang baru, Cpuselalumelihatapakahprosesitulebihkecilpekerjaannyaatautidak.
Contoh SJFS • Waiting time • P4= 0 ms, P1= 3 ms, P3 =9 ms, P2= 16ms • Average Waiting time • (0+3+9+16) / 4= 7 ms
Priority Schedulling • Algoritmapenjadwalan yang memilihprosesberdasarkanprioritasdarisebuahproses. • Algoritmainibisa Preemptive maupun Non Preemptive karenaapabilaadaproses yang baru, Cpuselalumelihatapakahprosesitumemilikiprioritas yang lebihkecildariprosessekarangatautidak.
Contoh Priority Schedulling • Waiting time • P2= 0 ms, P5= 1 ms, P1 =6 ms, P3= 16ms, P4= 18 ms • Average Waiting time • (0+1+6+16+18) / 5= 8,2 ms
Round Robin Schedulling • Algoritmapenjadwalan yang mengadopsi FCFS namunditambahdenganberbagiwaktu. • Prosesakandikerjakansecaraberurutantetapijika time quantum sudahhabismakaakanmengerjakanproses yang berikutnya • Termasuk preemptive karenaselaluberpindahprosesjika time quantum sudahhabis.
Contoh Round Robin Schedulling • Waiting time • P1= 0 ms, P2= 4 ms, P3 =7 ms • Average Waiting time • (0+4+7) / 3= 3,6 ms • Time Quantum =4
LatihanSoal • Buatlah Gant Chart dan Waiting time serta average time dariprosesdiatasmenggunakanalgoritma: • FCFS • SJFC • Round Robin ( Quantum Time = 4 )