Tugas Pertemuan - 4
Konsep Dasar Penjadwalan
Sistem Operasi 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 kebijaksanaan 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
1.Supaya semua pekerjaan memperoleh pelayanan yang adil (fairness)
2. Supaya pemakaian prosesor dapat dimaksimumkan
3. Supaya waktu tanggap dapat diminimumkan, berupa waktu tanggap nyata dan waktu tanggap maya
4. Supaya pemakaian sumber daya seimbang
5. Turn arround time, waktu sejak program masuk ke sistem sampai proses selesai.
6. Efesien, proses tetap dalam keadaan sibuk tidak menganggur.
7. Supaya terobosan (thoughput) dapat dimaksimumkan TUJUAN
Tipe - tipe penjadwalan
1. 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.
2. 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).
3. 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
Ada 3 istilah yang digunakan pada penjadwalan proses, yaitu :
1. Antrian : Sejumlah proses yang menunggu menggunakan prosesor dan akan diproses sesuai dengan
urutan antrian proses. Proses berada dalam memori utama
2. 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.
3. 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.
Algoritma Penjadwalan
1. 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.
2. 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
3. Algoritma Penjadwalan ProsesTerpendek 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
4. 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.
5. 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.
Comments
Post a Comment