PERTEMUAN 3 & 4
PENJADWALAN PROSES
Penjadwalan merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer. Penjadwalan bertugas memutuskan hal-hal berikut:1. Proses harus berjalan,
2. Kapan dan berapa lama proses itu berjalan.
Sasaran utama penjadwalan proses adalah optimasi kinerja sistem komputer menurut kriteria tertentu.
Kriteria Penjadwalan
- Adil (Fairness) adalah proses-proses diperlakukan sama yaitu mendapat jatah waktu layanan pemroses yang sama dan tidak ada proses yang tidak kebagian layanan pemroses.
- Efisiensi (Utilisasi) adalah pemroses yang dihitung dengan perbandingan (rasio) waktu sibuk pemroses dengan total waktu operasi sistem komputer.
- Waktu Tanggap (Response Time)
- Sistem Interaktif didefinisikan sebagai waktu yang dihabiskan dari saat katakter terakhir dari perintah dimasukkan oleh program sampai hasil pertama muncul di perangkat masukan keluaran seperti layar.
- Sistem waktu nyata didefinisikan sebagai waktu dari saat kemunculan
suatu kejadian sampai instruksi pertama rutin layanan terhadap kejadian
dieksekusi.
Turn arround time = waktu eksekusi + waktu menunggu - Throughput adalah jumlah kerja yang dapat diselesaikan selama satu selang/unit waktu. Cara untuk mengekspresikan throughput adalah dengan jumlah proses/job pemakai yang dapat dieksekusi dalam satu unit/interval waktu tertentu.
Tipe-tipe penjadwalan :
- Penjadwalan jangka pendek
Bertugas menjadwalkan alokasi pemroses di antaraproses-proses ready di memori utama. Penjadwalan dijalankan setiap terjadi pengalihan proses untuk memilih proses berikutnya yang harus dijalankan. - Penjadwalan jangka menengah
Proses status ready – running – waiting – ready. - Penjadwalan jangka panjangPenjadwal ini bekerja terhadap antrian batch dan memilih batch berikutnya yang harus dieksekusi. Batch biasanya adalah proses-proses dengan penggunaan sumber daya yang intensif (yaitu waktu pemroses, memori, perangkat masukan/keluaran), program-program ini berprioritas rendah, digunakan sebagai pengisi (agar pemroses sibuk) selama periode aktivitas job-job interaktif rendah.
Penjadwalan proses
3 istilah yang digunakan pada penjadwalan proses- Antrian, Sejumlah proses yang menunggu menggunakan prosesor dan akan diproses sesuai dengan urutan antrian proses. Proses berada dalam memori utama.
- Prioritas, Mendahului pada antrian proses, kalau proses itu berada di bagian belakang antrian, maka dengan pemberian prioritas, proses itu langsung berada di bagian paling depan pada antrian itu sambil menunggu sampai kerja prosesor selesai.
- Premps, Mendahului pada antrian proses, kalau proses itu berada di bagian belakang antrian, maka dengan pemberian prempsi, proses itu langsung berada di bagian paling depan pada antrian itu bahkan akan memberhentikan kerja prosessor untuk mengerjakan proses yang prempsi tersebut.
Perhitungan pada Kerja Prosesor
Lama proses (t), adalah lama waktu yang diperlukan untuk mengolah proses itu di dalam prosesor.Lama tanggap (T), adalah Waktu yang diperlukan untuk proses sejak mulai sampai selesai di olah oleh prosesor.
Terdapat 2 macam lama tanggap :
- Turn around time, Dengan memperhitungkan lama waktu yang digunakan untuk sebuah proses hingga keluaran.
- Respone time, Tidak memperhitungkan lama waktu yang digunakan untuk sebuah proses hingga keluaran.
Rumus Penjadwalan
Jika terdapat N proses serentak, serta setiap proses memiliki lama tanggap sebesar T, maka rerata lama tanggap Tr adalah Tr = (jumlah Ti) / NWaktu sia-sia (T – t), waktu yang terbuang dalam antrian atau selama terkena Prempsi.
Rasio tanggap (Rt), Perbandingan di antara lama proses terhadap lama tanggap
Rasio pinalti (Rp), Perbandingan diantara lama tanggap terhadap lama proses.
Rt = t dan Rp = T
T t
Algoritma Penjadwalan
Algoritma Penjadwalan Pertama tiba pertama dilayani (PTPD/ FCFS/FIFO)Penjadwalan tanpa prioritas tanpa prempsi, Proses yang tiba lebih dahulu akan dilayani lebih dahulu, jika tiba pada waktu yang bersamaan akan dilayani sesuai dengan urutan pada antrian.
Contoh Algoritma PTPD/FCFS/FIFO
Contoh Algoritma PTPD/FCFS/FIFO sebaga berikut:
Nama proses Saat tiba Lama proses
A 0 4
B 1 7
C 3 3
D 7 8
Penyelesaian Algoritma PTPD/FCFS/FIFO
Algoritma Penjadwalan Proses
Terpendek Dipertamakan
(PTD/ SJF/ SJN)
Penjadwalan dengan prioritas tanpa prempsi, Terdapat 2 langkah :
Penentuan berdasarkan pendeknya proses yang dilayani Jika proses yang terpendek tersebut belum tiba maka prosesor akan melayani proses yang telah tiba sampai proses tersebut selesai.
Terpendek Dipertamakan
(PTD/ SJF/ SJN)
Penjadwalan dengan prioritas tanpa prempsi, Terdapat 2 langkah :
Penentuan berdasarkan pendeknya proses yang dilayani Jika proses yang terpendek tersebut belum tiba maka prosesor akan melayani proses yang telah tiba sampai proses tersebut selesai.
Contoh Algoritma Penjadwalan Proses
Terpendek Dipertamakan
(PTD/ SJF/ SJN)
Terpendek Dipertamakan
(PTD/ SJF/ SJN)
Penyelesaian Algoritma Penjadwalan
Proses Terpendek Dipertamakan
Lama
(PTD/ SJF/ SJN)
Proses Terpendek Dipertamakan
Lama
(PTD/ SJF/ SJN)
Algoritma Penjadwalan Proses Terpendek Dipertamakan Prempsi (PTDP / PSPN / SRT)
Penjadwalan dengan prioritas dengan prempsi Beberapa
ketentuan :
Nama proses Saat tiba Lama proses
A 0 7
B 2 3
C 4 9
D 5 4
Algoritma Penjadwalan Ratio Pinalti Tertinggi Dipertamakan (RPTD/ HPRN) Penjadwalan dengan prioritas tanpa prempsi.
Penjadwalan dengan prioritas dengan prempsi Beberapa
ketentuan :
- Prioritas berdasarkan pendeknya sisa proses
- Diperhatikan saat proses tiba atau saat proses selesai
- Menghitung lama sisa proses dari semua proses yang ada
- Jika proses dengan sisa proses yang lebih pendek dari proses yang sedang dikerjakan, maka atas dasar prempsi proses yang sedang dikerjakan akan dikeluarkan dari prosesor.
Nama proses Saat tiba Lama proses
A 0 7
B 2 3
C 4 9
D 5 4
Penyelesaian Algoritma PTDP / PSPN / SRT
Penyelesaian Algoritma PTDP / PSPN / SRT (Lanjut….)
Penyelesaian Algoritma PTDP / PSPN / SRT(Lanjut….)
Algoritma Penjadwalan Ratio Pinalti Tertinggi Dipertamakan (RPTD/ HPRN) Penjadwalan dengan prioritas tanpa prempsi.
Ketentuan :
Prioritas berdasarkan besarnya nilai ratio pinalti
Rumus ratio pinalti = Rp = ( s + t ) / t
s = waktu sia-sia (Saat selesai – Saat tiba)
t = lama proses
Tetap mendahulukan proses terpendek, namun prioritas proses panjang akan turut meningkat melalui peningkatan ratio pinaltinya.
Contoh Algoritma Penjadwalan RatioPinalti Tertinggi Dipertamakan (RPTD/ HPRN)
Penyelesaian Algoritma RPTD/HPRN
Pada saat 0 : hanya ada A, A diolah
Pada saat 4 : A rampung, B, C, D, E telah tiba
Perhitungan rasio penalti
Proses Tiba selama 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
Penyelesaian Algoritma RPTD/HPRN
Pada saat 6 : A dan B telah rampung
Perhitungan rasio penalti
Proses Tiba selama Rasio penalti
C 6 - 2 = 4 (4 + 5)/5 = 1,8
D 6 - 3 = 3 (3 + 8)/8 = 1,375
E 6 - 4 = 2 (2 + 4)/4 = 1,5
Rasio penalti tertinggi pada C, C diolah
Penyelesaian Algoritma RPTD/HPRN (Lanjut….)
Penjelasan Step 3
Pada saat 11 : A, B, dan C telah rampung
Perhitungan rasio penalti
Proses Tiba selama Rasio penalti
D 11 - 3 = 8 (8 + 8)/8 = 2
E 11 - 4 = 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
Algoritma Penjadwalan Penjadwalan Putar Gelang (Roun Robin/ Time Slice)
Penjadwalan tanpa prioritas dengan prempsi Beberapa ketentuan :
Pada saat 11 : A, B, dan C telah rampung
Perhitungan rasio penalti
Proses Tiba selama Rasio penalti
D 11 - 3 = 8 (8 + 8)/8 = 2
E 11 - 4 = 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
Penyelesaian Algoritma RPTD/HPRN (Lanjut….)
Penyelesaian Algoritma RPTD/HPRN (Lanjut….)
Algoritma Penjadwalan Penjadwalan Putar Gelang (Roun Robin/ Time Slice)
Penjadwalan tanpa prioritas dengan prempsi Beberapa ketentuan :
- Kuantum waktu , waktu yang digunakan oleh prosesor untuk melayani setiap proses
- Prosesor akan melayani setiap proses berdasarkan antrian
- Prosesor akan melayani sesuai dengan Kuantum waktu yang sudah ditentukan.
Penyelesaian Algoritma Roun Robin/Time Slice
Penyelesaian Algoritma Roun Robin/Time Slice (Lanjut....)