Tahun Akademik 2014/2015 Semester II DIG1I3 - Instalasi dan Penggunaan Sistem Operasi Penjadualan Proses Bag. 2 Mohamad Dani (MHM) Alamat E-mail: mohamad.dani@gmail.com Hanya dipergunakan untuk kepentingan pengajaran di lingkungan Telkom Applied Science School Penjadualan Process Bagian 2 1
Tujuan Pembelajaran Mahasiswa mampu menjelaskan perbedaan penjadualan proses jangka pendek, menengah dan panjang. Mahasiswa mampu menjelaskan cara kerja algoritma-algoritma penjadualan proses dan kinerja dari masing-masing algoritma penjadualan proses yang preemptive dan Nonpreemptive. Mahasiswa mampu menggunakan algoritma penjadualan proses yang sesuai dengan permasalahan yang berkaitan dengan penjadualan proses. Algoritma Penjadualan con td Priority scheduling Round-Robin (RR) Multilevel Feedback Queue Scheduling 4 2
Priority Scheduling Algoritma: Setiap proses akan mempunyai prioritas (bilangan integer). CPU diberikan ke proses dengan prioritas tertinggi (smallest integer º highest priority). Preemptive: proses dapat di interupsi jika terdapat prioritas lebih tinggi yang memerlukan CPU. Nonpreemptive: proses dengan prioritas tinggi akan mengganti pada saat pemakain time-slice habis. SJF adalah contoh priority scheduling dimana prioritas ditentukan oleh waktu pemakaian CPU berikutnya. Prioritas terendah sampai tertinggi dinyatakan dalam jangkauan angka misal 0 sampai 7 atau 0 sampai 0 sampai 4095. angka 0 bisa dianggap sebagai prioritas terendah atau terendah tergantung kepada sistem yang bersangkutan. Problem = Starvation Proses dengan prioritas terendah mungkin tidak akan pernah dieksekusi Solution = Aging Prioritas akan naik jika proses makin lama menunggu waktu jatah CPU. 5 Contoh 5 : Priority Scheduling Diketahui proses yang tiba adalah P1, P2, P3, P4, P5 datang secara bersamaan pada t = 0 ms. Satuan burst time adalah ms dan angka prioritas terkecil adalah prioritas tertinggi. Pertanyaan: Buatlah Gant Chartnya! Hitunglah Waktu menunggu P 2, P 3, P 1! Hitunglah Waktu menunggu total untuk semua proses! Hitunglah Waktu menunggu reratanya! Hitunglah Turnaround time (TAT)! Hitunglah Turnaround time (TAT) reratanya! 6 3
Contoh 5 : Priority Scheduling Gant Chartnya! Waktu menunggu P 1 = 6 ms, P 2 = 0 ms, P 3 = 16 ms, P 4 = 18 ms, P 5 = 1 ms Waktu menunggu total untuk semua proses = 6 ms + 0 ms + 16 ms + 18 ms + 1 ms = 41 ms Waktu menunggu reratanya 41 ms / 5 = 8,2 ms Turnaround time (TAT) = 41 ms + 19 ms = 60 ms Turnaround time (TAT) reratanya = 60 ms / 5 = 12 ms 7 Contoh 6 : Priority Scheduling Diketahui proses yang tiba digambarkan pada gambar di bawah: Tugas Anda: Buatlah Chartnya! Hitunglah Waktu menunggu P1, P2, P3, P4! Hitunglah Waktu menunggu total untuk semua proses! Hitunglah Waktu menunggu reratanya! Hitunglah Turnaround time (TAT)! Hitunglah Turnaround time (TAT) reratanya! 4
Contoh 6 : Priority Scheduling Chartnya! P1 P2 P3 P4 P1 P1 P1 P2 P2 P3 P3 P3 P4 P4 0 ms 210 ms Waktu menunggu 1 Kotak = 10 ms Waktu menunggu P1 = 16 ms, P2 = 0 ms, P3 = 4 ms, P4 = 0 ms! Waktu menunggu total untuk semua proses = 16 ms + 0 ms + 4 ms + 0 ms = 20 ms Waktu menunggu reratanya = 20 ms /4 = 5 ms Turnaround time (TAT) = 20 ms + 210 ms = 230 ms Turnaround time (TAT) reratanya = 230 ms /4 = 57,5 ms 9 Round Robin (RR) Setiap proses mendapat jatah waktu CPU (time slice/quantum) tertentu misalkan 10 atau 100 milidetik. Setelah waktu tersebut maka proses akan di-preempt dan dipindahkan ke ready queue. Adil dan sederhana. Jika terdapat n proses di ready queue dan waktu quantum q (milidetik), maka: Maka setiap proses akan mendapatkan 1/n dari waktu CPU. Proses tidak akan menunggu lebih lama dari: (n-1) q time units. Performance q besar FIFO q kecil q harus lebih besar dengan mengacu pada context switch, jika tidak overhead akan terlalu besar 10 5
Contoh 7 : Round Robin (RR) Diketahui proses yang tiba digambarkan pada gambar di bawah dan datang bersamaan pada t = 0 dan burst time dalam ms dengan quantum q =4 ms: Tugas Anda: Buatlah Chartnya! Hitunglah Waktu menunggu P1, P2, P3! Hitunglah Waktu menunggu total untuk semua proses! Hitunglah Waktu menunggu reratanya! Hitunglah Turnaround time (TAT)! Hitunglah Turnaround time (TAT) reratanya! Contoh 7 : Round Robin (RR) Chartnya! Waktu menunggu P1 = (10 4) = 6 ms, P2 = 4 ms, P3 = 7 ms Waktu menunggu total untuk semua proses = 6 ms + 4 ms + 7 ms = 17 ms Waktu menunggu reratanya = 17 ms /3 = 5,66 ms Turnaround time (TAT) = 17 ms + 30 ms = 47 ms Turnaround time (TAT) reratanya = 47ms /3 = 15,66 ms 12 6
Contoh 8 : Round Robin (RR) Diketahui proses yang tiba digambarkan pada gambar di bawah dan burst time dalam ms dengan quantum q =10 ms: Tugas Anda: Buatlah Chartnya! Hitunglah Waktu menunggu P1, P2, P3! Hitunglah Waktu menunggu total untuk semua proses! Hitunglah Waktu menunggu reratanya! Hitunglah Turnaround time (TAT)! Hitunglah Turnaround time (TAT) reratanya! Contoh 8 : Round Robin (RR) Chartnya! P1 P2 P3 P1 P1 P2 P2 P2 P2 P3 P3 P3 P3 75 ms 0 ms Waktu menunggu 1 kotak = 5 ms Waktu menunggu P1 = 0 ms, P2 = 20 ms, P3 = 20 ms Waktu menunggu total untuk semua proses = 0 ms + 20 ms + 20 ms = 40 ms Waktu menunggu reratanya = 40 ms /3 = 13,33 ms Turnaround time (TAT) = 40 ms + 70 ms = 110 ms Turnaround time (TAT) reratanya = 110 ms /3 = 33,33 ms 14 7
Multilevel Feedback Queue Scheduling Kategori proses sesuai dengan sifat proses: Interaktif (response cepat) Batch dll Partisi ready queue dalam beberapa tingkat (multilevel) sesuai dengan proses: Setiap queue menggunakan algoritma schedule sendiri Foreground proses (interaktif, high prioritiy): RR Background proses (batch, low priority): FCFS Setiap queue mempunyai prioritas yang fixed. 15 Multilevel Feedback Queue Scheduling 16 8
Multilevel Feedback Queue Scheduling Suatu proses dapat berpindah diantara beragam antrian; Perlu feedback untuk penentuan proses naik/turun prioritasnya (dinamis): Aging dapat diimplementasikan sesuai dengan lama proses pada satu queue. Suatu proses yang menggunakan CPU sampai habis (tanpa I/O wait) => CPU-bound (bukan proses interaktif) dapat dipindahk ke queue dengan prioritas lebih rendah 17 Multilevel Feedback Queue Scheduling 18 9
Contoh 9 : Multilevel Feedback Queue Scheduling Diketahui proses yang tiba digambarkan pada gambar di bawah dan burst time dalam ms dengan quantum q1=8 ms dan q2 = 16 ms dan datang bersamaan pada t = 0 : Proses Burst (ms) P1 20 P2 24 P3 36 Tugas Anda: Buatlah Chartnya! Hitunglah Waktu menunggu P1, P2, P3! Hitunglah Waktu menunggu total untuk semua proses! Hitunglah Waktu menunggu reratanya! Hitunglah Turnaround time (TAT)! Hitunglah Turnaround time (TAT) reratanya! Contoh 9 : Multilevel Feedback Queue Scheduling Chartnya! P1 P2 P3 P1 P2 P3 0 8 16 24 36 52 80 Waktu menunggu P1 = 0 + (24 8)= 16 ms, P2 = (8 0) ms + (36-16) ms = 28 ms, P3 = (16 0) ms + (52 24) ms = 16 ms + 28 ms = 44 ms Waktu menunggu total untuk semua proses = 16 ms + 28 ms + 44 ms = 88 ms Waktu menunggu reratanya = 88 ms /3 = 29,33 ms Turnaround time (TAT) = 88 ms + 80 ms = 168 ms Turnaround time (TAT) reratanya = 168 ms /3 = 56 ms 20 10
Tugas 3: Penjadualan Proses 2 1. Diketahui proses yang tiba digambarkan pada gambar di bawah: Proses Priority Burst (ms) Arrival time (ms) P1 4 20 0 P2 3 25 25 P3 3 25 30 P4 1 15 60 Carilah jawaban pertanyaan di bawah dengan Algoritma Priority Scheduling: Buatlah Chartnya! Hitunglah Waktu menunggu P1, P2, P3, P4! Hitunglah Waktu menunggu total untuk semua proses! Hitunglah Waktu menunggu reratanya! Hitunglah Turnaround time (TAT)! Hitunglah Turnaround time (TAT) reratanya! Tugas 3: Penjadualan Proses 2 2. Diketahui proses yang tiba digambarkan pada gambar di bawah dan processing time dalam ms dengan quantum q =2 ms: Carilah jawaban pertanyaan di bawah dengan Algoritma Round Robin: Buatlah Chartnya! Hitunglah Waktu menunggu P1, P2, P3! Hitunglah Waktu menunggu total untuk semua proses! Hitunglah Waktu menunggu reratanya! Hitunglah Turnaround time (TAT)! Hitunglah Turnaround time (TAT) reratanya! 11
Daftar Pustaka William Stallings(2012). Operating Systems 7th Edition. Prentice Hall. New Jersey halaman 395 426. Avi Silberschatz, Peter Galvin, dan Grag Gagne (2013). Operating Systems CONCEPTS ninth Edition. John Wiley & Sons. USA Halaman 261 312. Th4nx 24 12