PENGERTIAN PENJADWALAN PROSES DAN ALGORITMA PENJADWALAN PROSES
KONSEP DASAR PENJADWALAN
- Sistem Opeasi modern umumnya merupakan sistem multitasking.
- Tujuan Utama Penjadwalan : untuk mempunyai proses berjalan secara bersamaan untuk memaksimalkan kinerja dari CPU.
- Pemanfaatan CPU maksimum diperoleh dengan multiprogramming
- CPU-I/O Burst Cycle-Pelaksanaan proses terdiri dari suatu siklus tunggu I/O dan eksekusi CPU
PENJADWALAN PROSES
- Penjadwalan merupakan kumpulan kebijaksaan dan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer
- Penjadwalan bertugas memutuskan :
- Proses harus berjalan, kapan dan berapa lama proses itu berjalan.
TUJUAN PENJADWALAN PROSES
- Supaya semua pekerjaan memperoleh pelayanan yang adil(fairness)
- Supaya pemakaian prosesor dapat dimaksimumkan
- Supaya waktu tanggap dapat diminimumkan, berupa waktu tanggap nyata dan waktu tanggap maya
- Supaya pemakaian sumber daya seimbang
- Turn arround time, waktu sejak program masuk ke sistem sampai proses selesai.
- Efesien, proses tetap dalam keadaan sibuk tidak menganggur.
- Supaya terobosan (thoughput) dapat dimaksimumkan
TIPE-TIPE PENJADWALAN
- Penjadwalan jangka pendek
- Penjadwalan jangka menengah
- Penjadwalan jangka panjang
Penjadwalan Jangka Pendek
• Bertugas menjadwalkan alokasi pemroses di antara proses-proses ready di memori utama.
• Penjadwalan dijalankan setiap terjadi pengalihan proses untuk memilih proses berikutnya yang harus dijalankan.
Penjadwalan Jangka Menengah
• Jika ruang memori utama tidak cukup menampung proses, sistem operasi akan melakukan swapping yaitu memindahkan image process ke memori sekunder seperti disk.
• Umumnya yang dikorbankan adalah proses yang berstatus blocked atau menunggu event.
• Jika event sudah selesai, image process harus dikembalikan ke memori utama.
• Medium-term scheduler bertugas menyeleksi proses yang akan di swapping (swap-out) dan yang akan dikembalikan ke memori utama (swap-in).
Penjadwalan Jangka Panjang
• Penjadwal 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 penjadwalanproses.
1. Antrian
2. Prioritas
3. Prempsi
▪ 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, jika proses 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.
▪ Prempsi
✓Mendahului pada antrian proses, jika proses 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 CARA KERJA PROSESSOR
▪ 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 diolah 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.
TEKNIK PENJADWALAN PROSESSOR
1. Kategori penjadwalan prosessor
– Tanpa prioritas tanpa prempsi
– Dengan prioritas tanpa prempsi
– Tanpa prioritas dengan prempsi
– Dengan prioritas dengan prempsi
2. Teknik penjadwalan prosessor
– Penjadwalan satu tingkat
– Penjadwalan multi tingkat
3. Teknik penjadwalan satu tingkat
▪ Jika terdapat N proses serentak, serta setiap proses memiliki lama tanggap sebesar T, maka rerata lama tanggap Tr adalah :
➢ Tr = (jumlah Ti) / N
▪ Waktu 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/T dan
➢ Rp = T/t
Algoritma Penjadwalan Proses
1. Algortima First Come First Served (FCFS)/FIFO (First In First Out)
2. Algortima PTD/SJF (Shortest Job First)
3. Algoritma PTDP (Penjadwalan proses terpendek dipertamakan prempsi )
4. Algoritma RPTD (Ratio penalti tertinggi dipertamakan)
5. Algoritma Roun Robin
Algoritma (PTPD/ FCFS/FIFO)
• Merupakan algoritma penjadwalan CPU yang paling sederhana.
• Proses yang tiba lebih dahulu akan dilayani lebih dahulu.
• Jika ada proses tiba pada waktu yang sama, maka pelayanan mereka dilaksanakan berdasarkan urutan dalam antrian.
• Proses di antrian belakang harus menunggu sampai semua proses di depannya selesai.
▪ Setiap proses diberi jadwal eksekusi berdasarkan urutan waktu kedatangan.
▪ FIFO jarang digunakan secara tersendiri tetapi dikombinasikan dengan algoritma lain karena:
➢ Timbul masalah “waiting time” terlalu lama jika didahului oleh proses yang waktu selesainya lama.
➢ Job yang pendek harus menunggu job yang panjang
➢ Job yang penting harus menunggu job yang kurang penting.
Algoritma (PTD/ SJF/SJN)
▪ Algoritma Shortest Job First
▪ Dasar prioritas adalah pendeknya proses.
▪ Makin pendek/singkat proses makin tinggi prioritasnya
▪ Langkah I : tentukan urutan prioritas berdasarkan pendeknya proses yang dilayani
▪ Langkah II : penentuan proses mana yang dilayani oleh pemroses
• Setiap proses yang ada dalam ready queue akan dieksekusi berdasarkan burst time terkecil
• Hal ini mengakibatkan waiting time yang pendek untuk setiap proses, maka rerata waiting time (AWT) juga menjadi pendek
• Algoritma ini dikatakan optimal
Algoritma Penjadwalan Proses Terpendek Dipertamakan Prempsi (PTDP / PSPN / SRT)
▪ Penjadwalan dengan prioritas dengan prempsi
Beberapa ketentuan :
1. Prioritas berdasarkan pendeknya sisa proses
2. Diperhatikan saat proses tiba atau saat proses selesai
3. Menghitung lama sisa proses dari semua proses yang ada
4. 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
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.
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.
Komentar
Posting Komentar