BAB IV PENJADWALAN PROSES
Penjadwalan Proses merupakan basis sistem informasi multiprograming. Penjadwalan merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yg berkaitan dgn urutan kerja yg dilakukan sistem komputer. Penjadwalan bertugas untuk : Proses yg hrs berjalan Kapan dan selama berapa lama proses berjalan. Kriteria utk mengukur dan optimasi kinerja penjadwalan : Adil (fairness) Efisiensi Waktu tanggap (respon time) Turn arround time Throughput. - Adil Adil adalah proses-2 diperlukan sama yaitu mendapat jatah waktu layanan pemroses yg sama dan tdk ada proses yg tdk kebagian layanan pemroses sehingga mengalami starvation
Starvation adalah kondisi bahwa proses tdk pernah berjalan karena tdk dijadwalkan utk berjalan. - Efisiensi Efisiensi atau utilitas pemroses yg dihitung dgn perbandingan (rasio) waktu sibuk pemroses dgn total waktu operasi sistem komputer secara keseluruhan. - Waktu Tanggap Waktu Tanggap berbeda utk : 1. Sistem interaktif 2. Sistem waktu nyata (even respon time) Waktu tanggap pada sistem interaktif. Waktu tanggap pd sistem interaktif didefinisikan sebagai waktu yg dihabiskan dr saat karakter terakhir dari perintah dimasukan oleh program atau transaksi sampai hasil pertama muncul diperangkat masukan keluaran (layar). Waktu tanggap pada sistem waktu nyata. Pada sistem waktu nyata (real time) waktu tanggap di identifikasikan sebagai waktu dari saat kemunculan suatu kejadian (internal/eksternal) sampai intruksi pertama rutin layanan terhadap kejadian dieksekusi.
- Turn Arround Time Turn arround time adalah waktu yg dihabiskan dr saat proses atau job mulai masuk ke sistem sampai proses itu diselasaikan sistem. Turn arround time = waktu eksekusi + waktu menunggu - Throughput Throughput adalah jumlah kerja yg dpt diselesaikan selama satu selang/unit waktu. Lebih tinggi angka throughput maka lebih banyak kerja yg dilakukan sistem. Tipe-tipe Penjadwalan Ada 3 tipe penjadwalan pd sistem operasi yg komplek : 1. Penjadwalan Jangka pendek (short-term scheduller) 2. Penjadwalan jangka menengan (medium-term scheduller) 3. Penjadwalan jangka panjang (long-term scheduller)
1. Penjadwalan Jangka pendek (short-term scheduller) Penjadwal jangka pendek bertugas menjadwalkan alokasi pemroses di antara proses-2 Ready di Memori utama. 2. Penjadwalan Jangka Menengah (short-term scheduller) merupakan pemroses yg menjadwalkan setelah eksekusi suatu waktu tertentu yg ditunda akibat permintaan layanan masukan/keluaran atau memanggil suatu system call. Penjadwalan jangka menengah bertugas menangani proses-2 swapping. Swapping merupakan aktivitas pemindahan proses yg tertunda dr memori utama ke memori sekunder. 3. Penjadwalan Jangka Panjang (long-term scheduller). Penjadwal jangka panjang bekerja thd antrian batch dan memilih batch berikutnya yg hrs di eksekusi sistem. Batch biasanya berupa penggunaan sumber daya yg intensif. Sasaran utama penjadwal jangka panjang adalah memberi keseimbangan proses-2 campuran.
Algoritma-2 Penjadwalan : 1. Algoritma Penjadwalan Non-Preemptive - FIFO (First-in, First-out) - SJF (Shortest Job First). 2. Algoritma Penjadwalan Preemptive - RR (Round Robin) - MFQ (Multiple Feedback Queues) - SRF (Shortest-Remaining-First) - HRN (Highest-Ratio-Next) - PS (Priority Schedulling) - GS (Guaranteed Schedulling)
1. Algoritma Penjadwalan Non-Preemptive - FIFO (First-in, First-out) merupakan algoritma penjadwalan non-preemptive, tidak berprioritas. Setiap proses diberi jadwal eksekusi berdasarkan urutan waktu kedatangannya. 2. SJF (Shortest Job Frist) Merupakan penjadwalan non-preemptive, tidak berprioritas. penjadwalan ini mengasumsikan waktu running (brust time) peroses diketahui. Peroses brust time paling pendek akan dijadwalkan terlebih dahulu dan dieksekusikan sampai selesai. 3. HRRN (highest Response Ratio Next) merupakan penjadwalan non-preemptive, mengunakan proritas dinamis. Penjadwalan ini memperbaiki Shortest Job Frist perioritas proses tidak hanya merupakan fungsi waktu layanan,tetapi jumlah waktu tunggu proses. HRRN dihitung berdasarkan rumus : Prioritas=(waktu tunggu + waktu layanan)/waktu layanan
4. RR (Round Robin) merupakan menjadwalan preemptive tanpa prioritas. Peroses disela oleh sistem operasi berdasarkan lama waktu berjalannya peroses. Semua peroses dianggap penting dan diberi jatah waktu pemakaian prosesor yang disebut time slice atau quantum. 5. SRT (shortest-Remaining Time) Merupakan penjadwalan preemptive menggunakan prioritas dinamis. Penjadwalan ini melengkapi SJF. SJF umumnya meupakan penjadwalan non_preemptive. Sedangkan SRT merupakan merupkan penjadwalan preemptive untuk timesharing. 6. PS (Prioritas Sheduling) Merupakan algoritma penjadwalan preemptive. Menggunakan PS setiap peroses diberi nilai prioritas, nilai prioritas ini dapat bersifat statis ataupun dinamis.(beruabah terus dari waktu ke waktu).
7. GS (Guaranteed Schedulling ) merupakan penjadawalan preemptive menggunakan prioritas dinamis. Jika terdapat N pemakai, setiap pemakai diusahakan senantiasa mendapatkan(1/N) waktu Prosesor. Pada saat terjadi penjadwalan dihitung rasio waktu running semenjak login setiap pemakai dan waktu pemakai prosesor secara keseluruhan. 8. MLQ ( Multi LeveL Queues ) merupakan penjadwalan preemptive, Peroses-proses dibagi atas group dan ditempatkan pada antrian yang berbeda. 9. MFQ (Multi Level feedback Queues) merupakan algoritma penjadwalan preemptive berprioritas dinamis berdasarkan jumlah Quantum Time, MFQ menggunakan sejumlah antrian dengan prioritas dan Quantum Time yang berbeda.
Selamat Belajar