Bab 3 Pengelolaan Prosesor 2 Bab 3 Bab
Bab 3 Pengelolaan Prosesor 2
---------------------------------------Bab 3 --------------------------------------- Bab 3 PENGELOLAAN PROSESOR 2 A. Penjadwalan Prosesor 1. Jenis Penjadwalan Ada beberapa jenis penjadwalan prosesor, mencakup • Penjadwalan jangka panjang • Penjadwalan jangka madia • Penjadwalan jangka pendek
---------------------------------------Bab 3 --------------------------------------- Diagram Penjadwalan II Masuk Prosesor I III Alat MK Berkas I = Jangka panjang II = Jangka madia III = Jangka pendek
---------------------------------------Bab 3 --------------------------------------- 2. Jenis Penjadwalan Jangka Panjang (I) Menjadwalkan pekerjaan baru untuk dikerjakan dalam bentuk proses Penjadwalan Jangka Madia (II) Menjadwalkan kelangsungan proses yang tergusur (terpreempsi) Penjadwalan Jangka Pendek (III) Menjadwalkan pelaksanaan proses pada saat siap atau setelah melakukan kegiatan lain (di alat MK atau di berkas)
---------------------------------------Bab 3 --------------------------------------- 3. Antrian pada Penjadwalan Jangka Pendek Terdapat berbagai macam antrian pada penjadwalan jangka pendek Tanpa Penggusuran Dengan Penggusuran Tanpa Prioritas Dengan Prioritas
---------------------------------------Bab 3 --------------------------------------- 3. Waktu pada Penjadwalan Jangka Pendek Prosesor A B s C t T A = saat proses tiba B = saat proses mulai diolah C = saat proses rampung diolah AB = s = lama tunggu BC = t = lama olah AC = T = lama tanggap
---------------------------------------Bab 3 --------------------------------------- Lama tunggu s = saat mulai saat tiba = T t Lama tanggap T = saat rampung saat tiba = s + t Rasio tanggap Rasio penalti
---------------------------------------Bab 3 --------------------------------------- 4. Rerata Lama Tanggap Tr Jika terdapat N proses masing-masing dengan lama tanggap, maka rerata dari semua lama tanggap itu merupakan Rerata Lama Tanggap Proses A B C. . N Lama Tanggap TA TB TC. . TN Rerata Lama Tanggap
---------------------------------------Bab 3 --------------------------------------- 5. Alat Bantu Hitung Barisan Saat 0 1 2 3 4 5 6 7 8 9 Proses Contoh Saat 0 Proses 1 A 2 A Proses A B C 3 4 5 6 7 8 9 10 11 A B B B C C A A B Saat mulai 0 3 6 Saat rampung 10 11 8
---------------------------------------Bab 3 --------------------------------------- Tabel Hitungan Nama Saat Lama Saat Proses Tiba Olah Mulai Saat Lama Rasio Rasiio Ram- tang- tung- tang- penalpung gap gu gap ti Lama Tanggap T = saat rampung saat tiba Lama Tunggu s = saat mulai saat tiba
---------------------------------------Bab 3 --------------------------------------- Contoh Proses A, B, C tiba pada saat 0 dalam urutan ABC 0 Saat A Proses Nama Saat proses tiba A B C 1 0 0 0 2 A 3 A 4 B 5 B 6 B Lama Saat olah 5 4 2 7 10 11 8 9 10 11 C C A A B Lama mulai ram- tangpung gap 0 3 6 8 10 11 8 tunggu 0 3 6 RT RP 5/10 10/5 4/11 11/4 2/8 8/2 Jumlah 29 Rerata Lama Tanggap Tr = 29 / 3 = 9, 67
---------------------------------------Bab 3 --------------------------------------- B. Algoritma Penjadwalan 1. Algoritma Penjadwalan: Pertama Tiba Pertama Dilayani (PTPD) First Come First Served (FCFS) First In First Out (FIFO) Merupakan antrian biasa Tanpa prioritas tanpa penggusuran Tanpa Prioritas Dengan Prioritas PTPD Dengan Penggusuran
---------------------------------------Bab 3 --------------------------------------- Contoh 1 Proses tiba dalam urutan A, B, C, D Nama proses Saat tiba Lama olah A 0 9 B 0 6 C 0 3 D 0 2 Pada barisan saat 0 Saat Proses Saat 1 A 2 A 3 A 4 A 5 A 6 A 7 A 8 A 9 10 11 A 11 12 13 14 15 16 17 18 19 20 Proses B B C C C D D B B
---------------------------------------Bab 3 --------------------------------------- Pada tabel perhitungan Nama Saat Lama Saat proses tiba A B C D 0 0 olah 9 6 3 2 Saat Lama mulai Ram- tangpung gap 0 9 9 9 15 15 15 18 18 18 20 20 Jumlah 62 Rerata Lama Tanggap Tr = 62 / 4 = 15, 5 Lama tung- RT RP gu 0 1 1 9 6/15 15/6 15 3/18 18/3 18 2/20 20/2
---------------------------------------Bab 3 --------------------------------------- Contoh 2 Proses A, B, C, D tiba pada saat berbeda Nama proses Saat tiba Lama olah A 6 9 B 4 6 C 2 3 D 0 2 Pada barisan saat 0 Saat Proses Saat 1 2 3 4 5 6 D D C C C B 7 B 8 B 9 10 11 B 11 12 13 14 15 16 17 18 19 20 Proses A A A A A B B
---------------------------------------Bab 3 --------------------------------------- Pada tabel perhitungan Nama Saat Lama Saat proses tiba A B C D 6 4 2 0 olah 9 6 3 2 Saat Lama mulai Ram- tangpung gap 11 20 14 5 11 7 2 5 3 0 2 2 Jumlah 26 tunggu 5 1 0 0 Rerata Lama Tanggap Tr = 26 / 4 = 6, 5 RT RP 9/14 14/9 6/7 7/6 1 1
---------------------------------------Bab 3 --------------------------------------- 2. Algoritma Penjadwalan: Proses Terpendek Dipertamakan (PTD) Shortest Job First (SJF) Shortest Job Next (SJN) Shortest Process Next (SPN) Merupakan antrian Dengan prioritas tanpa penggusuran Tanpa Prioritas Dengan Prioritas PTD Dengan Penggusuran
---------------------------------------Bab 3 --------------------------------------- Contoh 3 Proses tiba dalam urutan A, B, C, D Nama proses Saat tiba Lama olah A 0 9 B 0 6 C 0 3 D 0 2 Menurut prioritas: DCBA Pada barisan saat 0 Saat Proses Saat 1 2 3 4 5 6 D D C C C B 7 B 8 B 9 10 11 B 11 12 13 14 15 16 17 18 19 20 Proses A A A A A B B
---------------------------------------Bab 3 --------------------------------------- Pada tabel perhitungan Nama Saat Lama Saat proses tiba A B C D 0 0 olah 9 6 3 2 Saat Lama mulai Ram- tangpung gap 11 20 20 5 11 11 2 5 5 0 2 2 Jumlah 38 tunggu 11 5 2 0 Rerata Lama Tanggap Tr = 38 / 4 = 9, 5 RT RP 9/20 20/9 6/11 11/6 3/5 5/3 1 1
---------------------------------------Bab 3 --------------------------------------- Perbandingan contoh 1 dan contoh 3 Isi contoh adalah sama tetapi Tr berbeda Pada contoh 1 Tr = 15, 5 pada contoh 3 Tr = 9, 5 Pada algoritma PTD, Tr lebih singkat, karena Nama proses A B C D Saat tiba 0 0 Lama olah t. A t. B t. C t. D Lama tanggap t. A + t. B + t. C + t. D Rerata lama tanggap Tr T r = ¼ [ 4 t. A + 3 t. B + 2 t. C + t. D ] Akan minimum jika t. A < t. B < t. C < t. D
---------------------------------------Bab 3 --------------------------------------- Contoh 4 Saat tiba tidak sama Nama proses A B C D Urutan terpendek: Saat tiba 0 3 5 6 Lama olah 5 7 2 4 C, D, A, B Pada saat 0 : hanya ada A, A diolah Pada saat 5 : A rampung, B dan C telah tiba C terpendek, diolah Pada saat 7 : C rampung, D telah tiba D terpendek, diolah Pada saat 11: D rampung, B diolah
---------------------------------------Bab 3 --------------------------------------- Pada barisan saat Saat Proses Saat 0 1 A 2 A 3 A 4 A 5 A 6 7 8 9 10 11 12 C C D D B 12 13 14 15 16 17 18 B Proses B B B Pada tabel perhitungan Nama proses Saat tiba A B C D 0 3 5 6 Lama Saat Lama olah mulai ram- tangpung gap 5 0 5 5 7 11 18 15 2 5 7 2 4 7 11 5 Jumlah 27 Lama tunggu Rerata lama tanggap Tr = 27 / 4 = 6, 75 Proses terpanjang akan lama menunggu Baik untuk pekerjaan noninteraktif RT RP
---------------------------------------Bab 3 --------------------------------------- 3. Algoritma Penjadwalan: Rasio Penalti Tertinggi Dipertamakan (RPTD) Highest Penalty Ratio Next (HPRN) Highest Response Ratio Next (HRRN) Merupakan antrian Dengan prioritas tanpa penggusuran Tanpa Prioritas Dengan Prioritas RPTD Dengan Penggusuran
---------------------------------------Bab 3 --------------------------------------- Algoritma ini untuk mengatasi kelemahan pada algoritma PTD Pada algoritma PTD, jika proses pendek terus berdatangan maka proses panjang akan terbengkalai Pada algoritma RPTD, lama tunggu akan meningkatkan prioritas sehingga pada suatu saat proses panjang memperoleh prioritas Rasio penalti RP = T / t = (s + t) / t s = lama tunggu Makin lama menunggu, makin besar RP sehingga makin tinggi prioritas
---------------------------------------Bab 3 --------------------------------------- Contoh 5 Saat tiba tidak sama Nama proses A B C D E Saat tiba 0 1 2 3 4 Lama olah 4 2 5 8 4 Pada saat 0 : hanya ada A, A diolah Pada saat 4 : A rampung, B, C, D, E telah tiba perhitungan rasio penalti Proses Lama tunggu Rasio penalti B 4 1=3 (3 + 2)/2 = 2, 5 C 4 2=2 (2 + 5)/5 = 1, 2 D 4 3=1 (1 + 8)/8 = 1, 125 E 4 4=0 (0 + 4)/4 = 1 Rasio penalti tertinggi pada B, B diolah
---------------------------------------Bab 3 --------------------------------------- Pada saat 6 : A dan B telah rampung perhitungan rasio penalti Proses Lama tunggu Rasio penalti C 2+2=4 (4 + 5)/5 = 1, 8 D 1+2=3 (3 + 8)/8 = 1, 375 E 0+2=0 (2 + 4)/4 = 1, 5 Rasio penalti tertinggi pada C, C diolah Pada saat 11 : A, B, dan C telah rampung perhitungan rasio penalti Proses Lama tunggu Rasio penalti D 3+5=8 (8 + 8)/8 = 2 E 2+5=7 (7 + 4)/4 = 2, 75 Raio penalti tertinggi pada E, E diolah Pada saat 15 : A, B, C, dan E telah rampung D diolah
---------------------------------------Bab 3 --------------------------------------- Pada barisan saat Saat Proses Saat 0 1 A 2 A 3 A 4 A 5 B 6 B 7 8 9 10 11 12 C C C E 12 13 14 15 16 17 18 19 20 21 22 23 E Proses E E D D D D Pada tabel perhitungan Nama proses Saat tiba A B C D E 0 1 2 3 4 Lama Saat olah mulai rampung 4 0 4 2 4 6 5 6 11 8 15 23 4 11 15 Jumlah Lama tanggap 4 5 9 20 11 49 Lama tunggu Rerata lama tanggap Tr = 49 / 5 = 9, 8 RT RP
---------------------------------------Bab 3 --------------------------------------- 4. Algoritma Penjadwalan: Putar Gelang (PG) Round Robin (RR) Merupakan antrian Tanpa prioritas dengan penggusuran Terutama digunakan untuk proses interaktif Tanpa Penggusuran Tanpa Prioritas Dengan Penggusuran PG
---------------------------------------Bab 3 --------------------------------------- Agar pemakai komputer tidak menunggu terlalu lama maka setelah diolah selama kuantum waktu (Q), proses berpindah ke pemakai berikut, juga selama Q Nilai kuantum waktu Q dapat diubah-ubah Prosesor C B A A Prosesor C B A B Prosesor C A B Q C Q A Q
---------------------------------------Bab 3 --------------------------------------- Contoh 6 Proses tiba pada saat 0 dalam urutan A, B, C, D, E Nama proses Saat tiba Lama olah A 0 6 B 0 4 C 0 7 D 0 2 E 0 5 Q=3 Pada barisan saat 0 Saat Proses Saat 1 A 2 A 3 A 4 B 5 B 6 B 7 8 9 10 11 12 C C C D D E 12 13 14 15 16 17 18 19 20 21 22 23 24 Proses E E A A A B C C C E E C
---------------------------------------Bab 3 --------------------------------------- Pada tabel perhitungan Nama Saat Lama Saat proses tiba A B C D E 0 0 0 olah 6 4 7 2 5 Saat mulai Rampung 0 17 3 18 6 24 9 11 11 23 Jumlah Lama tanggap 17 18 24 11 23 93 tunggu 0 3 6 9 11 Rerata Lama Tanggap Tr = 93 / 5 = 18, 6 RT RP
---------------------------------------Bab 3 --------------------------------------- Contoh 7 Saat tiba tidak sama Nama proses Saat tiba Lama olah A 0 5 B 1 3 C 5 7 D 6 1 E 7 6 Kuantum waktu Q=2 Pada suatu saat belum semua proses ada Antrian hanya bagi yang sudah ada Begitu tiba, proses antri di belakang Setelah diolah selama Q, proses antri di belakang
---------------------------------------Bab 3 --------------------------------------- Saat Masih ada 0 A 2 AB 4 AB 6 ABCD 7 ACDE 9 ACDE 10 ACE 11 ACE 13 ACE 15 ACE 16 CE 18 CE 20 CE 22 C Antrian Olah Smp saat A A 2 AB B 4 BA A 6 ADCB B 7 EADC C 9 CEAD D 10 CEA A 11 ACE E 13 EAC C 15 CEA A 16 CE E 18 EC C 20 CE E 22 C C 23 Sisa waktu setelah Q A: 3 B: 1 A: 3 B: 0 C: 7 D: 1 A: 3 C: 5 D: 1 A: 3 E: 6 B: 0 D: 0 A: 3 E: 6 C: 5 B: 0 A: 1 E: 6 C: 5 B: 0 D: 0 E: 4 C: 5 A: 1 B: 0 D: 0 C: 3 A: 1 E: 4 B: 0 D: 0 A: 0 E: 4 C: 3 B: 0 D: 0 E: 2 C: 3 B: 0 D: 0 A: 0 C: 1 E: 2 B: 0 D: 0 A: 0 E: 0 C: 1 B: 0 D: 0 A: 0 C: 0 B: 0 D: 0 A: 0 E: 0
---------------------------------------Bab 3 --------------------------------------- Pada barisan saat Saat Proses Saat 0 1 A 2 A 3 B 4 B 5 A 6 A 7 B 8 9 10 11 12 C C D A E 12 13 14 15 16 17 18 19 20 21 22 23 E Proses C C A E E C C E E Lama tanggap 16 6 18 4 15 59 Lama tunggu C Pada tabel perhitungan Nama proses Saat tiba A B C D E 0 1 5 6 7 Lama Saat olah mulai rampung 5 0 16 3 2 7 7 7 23 1 9 10 6 11 22 Jumlah Rerata lama tanggap Tr = 59 / 5 = 11, 8 RT RP
---------------------------------------Bab 3 --------------------------------------- 5. Algoritma Penjadwalan: Proses Terpendek Dipertamakan Penggusuran (PTDP) Preemptive Shortest Job First Preemptive Shortest Process Next (PSPN) Shortest Remaining Time (SRT) First Merupakan antrian Dengan prioritas dengan penggusuran Tanpa Penggusuran Dengan Penggusuran Tanpa Prioritas Dengan Prioritas PTDP
---------------------------------------Bab 3 --------------------------------------- Contoh 8 Saat tiba tidak sama Nama proses A B C D Urutan terpendek: Saat tiba 0 2 4 5 Lama olah 7 3 9 4 B, D, A, C Pada saat 0 : hanya ada A, A diolah Pada saat 2 : B tiba, B terpendek, A digusur dengan sisa waktu 5, B diolah Pada saat 5 : B rampung, C dan D telah tiba Urutan terpendek D, sisa A, C. D diolah Pada saat 9: D rampung, sisa A diolah Pada saat 14: sisa A rampung, C diolah
---------------------------------------Bab 3 --------------------------------------- Pada barisan saat Saat Proses Saat 0 1 A 2 A 3 B 4 B 5 B 6 7 8 9 10 11 12 D D A A A 12 13 14 15 16 17 18 19 20 21 22 23 A Proses A C C C C C Pada tabel perhitungan Nama proses Saat tiba A B C D 0 2 4 5 Lama Saat olah mulai rampung 7 0 14 3 2 5 9 14 23 4 5 9 Jumlah Lama tanggap 14 3 19 4 40 Rerata lama tanggap Tr = 40 / 4 = 10 Lama tunggu RT RP
---------------------------------------Bab 3 --------------------------------------- Contoh 9 Saat tiba tidak sama Nama proses Saat tiba Lama olah A 0 8 B 2 5 C 4 7 D 5 1 Urutan terpendek: D, B, C, A Pada saat 0 : hanya ada A, A diolah Pada saat 2 : B tiba, B terpendek, A digusur dengan sisa waktu 6, B diolah Pada saat 5 : C dan D telah tiba, D terpendek B digusur dengan sisa waktu 2. Urutan terpendek D, sisa B, sisa A, C. D diolah Pada saat 6: D rampung, sisa B diolah Pada saat 8 : sisa B rampung, sisa A diolah Pada saat 14: sisa A rampung, C diolah
---------------------------------------Bab 3 --------------------------------------- Pada barisan saat Saat Proses Saat 0 1 A 2 A 3 B 4 B 5 B 6 D B 7 8 B 9 10 11 12 A A 12 13 14 15 16 17 18 19 20 21 A Proses A C C C C Pada tabel perhitungan Nama proses Saat tiba A B C D 0 2 4 5 Lama Saat olah mulai rampung 8 0 14 5 2 8 7 14 21 1 5 6 Jumlah Lama tanggap 14 6 17 1 38 Lama tunggu Rerata lama tanggap Tr = 438/ 4 = 9, 5 RT RP
---------------------------------------Bab 3 --------------------------------------- C. Penjadwalan Banyak Tingkat 1. Tingkatan Antrian dapat terdiri atas banyak tingkat Tingkat 1 Tingkat 2 Tingkat 3 Tingkat 4 Tingkat 5 Banyaknya tingkat berdasarkan keperluan
---------------------------------------Bab 3 --------------------------------------- 2. Tingkat Independen Setiap tingkat adalah independen terhadap tingkat yang lain Dapat saja terdapat perbedaan prioritas di antara tingkat Dalam hal terdapat prioritas maka pengolahan tingkat dilakukan menurut perioritas, dari prioritas tertinggi sampai trendah Di dalam masing-masing tingkat, dapat saja terjadi bermacam-macam antrian (seperti yang telah dibahas)
---------------------------------------Bab 3 --------------------------------------- 3. Perpindahan Antara Tingkat Dapat saja tingkat tidak independen sehingga ada perpindahan proses di antara tingkat Ada perpindahan naik (dari n ke n + 1) dan ada perpindahan turun (dari n + 1 ke n) Prosesor n+1 naik Prosesor n n+1 Prosesor turun
---------------------------------------Bab 3 --------------------------------------- 4. Perpindahan dengan Kuantum Waktu Variabel Semua tingkat menggunakan algoritma putar gelang dengan Q yang berbeda Prosesor Tingkat 1 Q 1 Prosesor Tingkat 2 Q 2 Prosesor Tingkat 3 Q 3 Prosesor Tingkat 4 Q 1 < Q 2 < Q 3 < Q 4
---------------------------------------Bab 3 --------------------------------------- Tingkat 1 dengan Q 1 kecil, proses cepat memperoleh giliran diolah Tingkat 2 dengan Q 2 lebih besar, proses lebih lambat memperoleh giliran diolah Demikian seterusnya untuk tingkat lebih tinggi Proses pendek dapat cepat rampung di tingkat 1 Proses lebih panjang, sebagian cepat diolah di tingkat 1 dan bagian berikutnya diolah di tingkat 2 yang lebih lambat Dan demikian seterusnya sampai ke tingkat ke-n
---------------------------------------Bab 3 --------------------------------------- 5. Perpindahan karena Penuaan (Aging) Dalam algoritma tertentu, proses panjang perlu mengalah kepada proses pendek sehingga proses panjang tidak memperoleh giliran diolah Dibuat perpindahan untuk meningkatkanproses tua ke tingkat yang lebih cepat Prosesor Lebih lambat
---------------------------------------Bab 3 --------------------------------------- D. Evaluasi terhadap Algoritma Penjadwalan 1. Tujuan dan Metoda Evaluasi algoritma penjadwalan atau kombinasi algoritma penjadwalan ditujukan untuk menemukan penjadwalan yang paling cepat untuk semua proses Algoritma atau kombinasi algoritma yang dievaluasi adalah algoritma yang digunakan berulang kali Ada beberapa metoda pengevaluasian • Metoda pemodelan deterministik • Metoda analisis model antrian • Metoda simulasi
---------------------------------------Bab 3 --------------------------------------- 2. Metoda Pemodelan Deterministik Dicoba berbagai kombinasi algoritma untuk menemukan kombinasi yang paling efisien (paling cepat untuk semua proses) Biasanya pekerjaan cukup besar sehingga metoda ini memerlukan waktu yang lama Metoda ini tidak mudah untuk dilakukan kecuali untuk pekerjaan yang kecil-kecil 3. Metoda Analisis Model Antrian Menggunakan teori antrian untuk menemukan kombinasi algoritma mana yang paling efisien Metoda ini menggunakan teori yang rumit
---------------------------------------Bab 3 --------------------------------------- 4. Metoda Simulasi Dibuat simulasi berukuran kecil bagi pekerjaan yang besar Simulasi ini dievaluasi secara diterministik pada berbagai kombinasi algoritma Metoda ini lebih cepat karena ukuran kecil pada simulasi 5. Penelitian Evaluasi demikian biasanya dilakukan melalui penelitian Panjang kuantum waktu juga dapat diteliti melalui penelitian
- Slides: 48