1 / 27

Penjadwalan Proses

Penjadwalan Proses. Penjadwalan Preemptive vs Nonpreemptive. Penjadwalan Preemptive Proses yg sdg dieksekusi dpt diinterupsi dan dipaksa utk menyerahkan CPU Penjadwalan Non-preemptive Proses yg sdg dieksekusi menggunakan CPU hingga proses tsb menyerahkannya secara sukarela.

caden
Download Presentation

Penjadwalan Proses

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PenjadwalanProses

  2. Penjadwalan Preemptive vs Nonpreemptive • Penjadwalan Preemptive • Proses yg sdg dieksekusi dpt diinterupsi dan dipaksa utk menyerahkan CPU • Penjadwalan Non-preemptive • Proses yg sdg dieksekusi menggunakan CPU hingga proses tsb menyerahkannya secara sukarela

  3. Algoritma Penjadwalan Prosesor Tunggal • Sistem Batch • First Come First Serve (FCFS) • Shortest Job First (SJF) • Sistem Interaktif • Round Robin • Penjadwalan Prioritas / Highest Response Ratio Next (HRRN) • Multi Queue dan Multi Level Feedback • Shortest Process Time • Guaranteed Scheduling • Lottery Scheduling • Fair Sharing Scheduling

  4. First Come First Serve (FCFS) • Proses yg meminta CPU duluan yg dialokasikan CPU duluan • Disebut juga FIFO • Non-preemptive • Digunakan pada sistem batch • Analogi dunia nyata: restoran cepat saji • Implementasi: antrian FIFO • Proses baru memasuki belakang antrian • Scheduler memilih dari depan antrian • Metrik performansi: waktu tunggu rata-rata • Parameter: • Burst time (dlm ms), waktu dan urutan kedatangan

  5. FCFS: Contoh

  6. FCFS: Contoh (1)

  7. FCFS: Contoh (2)

  8. Contoh Kasus Gant Chart : T T T P2 P1 P3 30 0 24 27 Waiting Time P1 = 0 | P2 = 24 – 1 = 23 | P3 = 27 – 2 = 25 0 + 23 + 25 Average Waiting Time = = 16 Turn Around Time P1 = 24 | P2 = 27 – 1 = 26 | P3 = 30 – 2 = 28 3 24 + 26 + 28 Average Turn Arround Time = = 26 3

  9. Shortest Job First (SJF) • Dahulukan job dengan waktu eksekusi tersingkat • Digunakan pada sistem batch • Ada 2 tipe: • Non-preemptive • Preemptive • Kebutuhan: waktu eksekusi harus diketahui terlebih dahulu • Optimal jika semua job tersedia pada waktu yg sama • Memberikan waktu tunggu rata-rata terbaik

  10. Non-preemptive SJF: Contoh(1)

  11. Non-preemptive SJF: Contoh(2)

  12. Contoh Kasus SJF Non-preemptive Gant Chart : T T T P2 P1 P3 9 18 12 0 Waiting Time P1 = 0 | P2 = ( 12 - 1 ) = 11 | P3 = ( 9 - 2 ) = 7 0 + 11 + 7 Average Waiting Time = = 6 3 Turn Around Time P1 = 9 | P2 = 18 – 1 = 17 | P3 = 12 – 2 = 10 9 + 17 + 10 Average Turn Arround Time = = 12 3

  13. Preemptive SJF • Disebut juga Shortest Remaining Time First (SRTF) • Jadwalkan dulu job dengan sisa waktu eksekusi yang paling singkat • Kebutuhan: waktu eksekusi yang telah terpakai (elapse time) harus diketahui

  14. Contoh Kasus JFS Preemptive Gant Chart : T T T P2 P1 P2 P3 P1 5 10 18 0 1 2 Waiting Time P1 = 0 + ( 10 – 1 ) = 9 | P2 = 0 + ( 5 – 2 ) = 3 | P3 = 0 9 + 3 + 0 Average Waiting Time = = 4 3 Turn Around Time P1 = 18 | P2 = 10 – 1 = 9 | P3 = 5 – 2 = 3 18 + 9 + 3 Average Turn Arround Time = = 10 3

  15. Preemptive SJF: Contoh

  16. Masalah pada SJF • Starvation • Pada kondisi tertentu, suatu job mungkin tidak pernah menyelesaikan eksekusinya • Contoh: Proses A dgn elapse time 1 jam tiba pd waktu 0. Namun, pd waktu yg sama dan setiap 1 menit berikutnya tiba proses singkat dgn elapse time 2 menit. Hasilnya: A tidak pernah mendapat jatah eksekusi

  17. Algoritma Penjadwalan Interaktif • Biasanya preemptive • Waktu eksekusi dibagi dalam kuantum (interval waktu) • Keputusan penjadwalan dibuat pd awal tiap kuantum • Kriteria performansi • Waktu respon minimum • Proporsional terbaik • Algoritma • Berbasis prioritas • Round-robin • Multi Queue & Multi-level Feedback • Shortest process time • Guaranteed Scheduling • Lottery Scheduling • Fair Sharing Scheduling

  18. Penjadwalan Prioritas • Tiap proses diberi prioritas • Penjadwalan FCFS within each priority level. • Proses dgn prioritas lebih tinggi dijadwalkan duluan • Preemptive • Non-preemptive • Masalah: • Mungkin tidak menghasilkan waktu tunggu rata-rata yg baik • Dpt menyebabkan infinite blocking atau starvation pd proses dgn prioritas rendah

  19. Penjadwalan Prioritas: Penentuan Prioritas • Ada 2 pendekatan: • Statis (untuk sistem dgn perilaku aplikasi yg teratur dan telah diketahui) • Dinamis (sebaliknya) • Prioritas dpt ditentukan berdasarkan: • Biaya terhadap user • Tingkat kepentingan user • Umur proses (aging) • % waktu CPU yg telah digunakan pd x jam terakhir

  20. Penjadwalan Prioritas: Contoh

  21. Penjadwalan Prioritas: Contoh

  22. Round Robin • Tiap proses memperoleh alokasi waktu CPU dlm kuantum waktu, biasanya 10-100 ms • Setelah kuantum waktu lewat, proses di-preempted dan dimasukkan ke belakang antrian ready • Jika ada n proses pd antrian ready dan kuantum waktu=q, maka: • Pada gilirannya tiap proses memperoleh 1/n waktu CPU selama q • Tidak ada proses yg menunuggu lebih dari (n-1)q unit waktu • Performansi: • – q besar FIFO • – q kecil overhead utk context switch sangat besar

  23. Simulasi 2 Round-Robin dengan kwanta = 1 A A A B B B B B B C C C C D D D D D E E B D C B E D C D B C B A C B E B D depan belakang antrian ready

  24. Round Robin: Contoh 1

  25. Round Robin: Contoh 2 Time Quantum 3 Gant Chart : T T P1 P2 P1 P2 P1 12 15 6 0 3 9 Waiting Time P1 = 0 + 3 + 3 = 6 | P2 = ( 3 - 1 ) + 3 = 5 6 + 5 Average Waiting Time = = 5.5 2 Turn Around Time P1 = 15 | P2 = 12 – 1 = 11 15 + 11 Average Turn Arround Time = = 13 2

  26. Round Robin: Contoh 3 • Misal  : Terdapat tiga proses  P1 ,  P2 ,  &  P3 dengan quantum time 4 milidetik • Contoh : • Grant chartnya sesuai dengan algoritma RR : • Maka : • Waktu tunggu untuk P1 adalah 6, P2  adalah 4, dan  P3 adalah 7 • Rata-rata waktu tunggu adalah ( P1 +   P2 +  P3 ) / 3 = ( 6 + 4 + 7 ) / 3 = 5,66 milidetik

  27. Latihan Soal… • Gambar Gant Chart danTentukan Avg. Waiting Time serta • Avg. Turn Arround Time dariketigaprosesdiatasdenganalgoritma : • FCFS • SJF ( preemptive ) • Round-Robin, q = 2 • Round-Robin, q = 5 • Priority ( non-preemptive )

More Related