Sistem Operasi Penjadwalan Proses Penjadwalan proses merupakan kumpulan kebijakan dan mekanisme di system operasi yang berkaitan dengan urutan kerja yang dilakukan system computer. Sasaran utama penjadwalan proses adala optimasi kinerja menurut criteria tertentu: 1. Adil 2. Efisiensi 3. Waktu tanggap 4. Turn Around Time 5. Throughput 1. Adil Prosesproses diperlakukan sama yaitu mendapat jatah waktu prosessor yang sama 2. Efisiensi Efisiensi dihitung dengan perbandingan /ratio waktu sibuk processor 3. Waktu tanggap Waktu tanggap berbeda untuk system interaktif dan system waktu nyata. Waktu tanggap system interaktif, yaitu waktu yang dihabiskan dari saat karakter terakhir dari perintah dimasukkan atau transaksi sampai hasil pertama muncul di layar. (Terminal Respone Time) Waktu tanggap system waktu nyata, yaitu : waktu dari saat kejadian (internal dan eksternal) sampai instruksi pertama rutin layanan dimaksud dieksekusi(Event Respone Time) Sasaran penjadwalan adalah meminimalkan waktu tanggap. 4. Turn Around Time Yaitu waktu yang yang dihabiskan dari saat program (job) mulai masuk ke system sampai proses diselesaikan system. Turn around Time = Waktu eksekusi + Waktu Menunggu Sasaran penjadwalan adalah meminimalkan turn around time. 5. Throughput Yaitu jumlah kerja yang dapat diselesaikan dalam satu unit waktu.
Penjadwalan Proses #5 #1
Sistem Operasi Sasaran penjadwalan adalah memaksimalkan jumlah job yang diproses per satu interval waktu. TipeTipe Panjadwalan 1. Penjadwalan jangka pendek 2. Penjadwalan jangka menengah 3. Penjadwalan jangka panjang
1. Penjadwalan jangka pendek Bertugas menjadwalkan alokasi processor di antara prosesproses ready di memori utama. Sasaran utama penjadwalan : memaksimumkan kinerja untuk memenuhi satu kumpulan kriteria yang diharapkan. 2. Penjadwalan jangka menengah Setelah eksekusi selama suatu waktu, proses mungkin ditunda, proses proses tertunda tak dapat membuat suatu kemajuan menuju selesai sampai kondisikondisi yang menyebebkan tertunda dihilangkan. Agar ruang memori dapat bermanfaat. Beberpa proses dipindahkan dari memori utama ke memori sekunder. Aktifitas pemindahan proses yang tertunda ini disebut swapping. Penjadwalan jangka menengah menangani prosesproses swapping. 3. Penjadwalan jangka panjang Penjadwalan jangka panjang bekerja terhadap antrian batch dan memilih batch berikutnya yang harus dieksekusi.
Penjadwalan Proses #5 # 2
Sistem Operasi Batch adalah prosesproses dengan penggunaan sumber daya intensif (waktu processor, memori, perangkat Input/output) dan biasanya berprioritas rendah. Strategi Penjadwalan 1. Penjadwalan Non Preemptive Ketika proses diberi jatah waktu penggunaan processor maka processor tidak dapat diambil alih proses lain, sampai prose situ selesai. 2. Penjadwalan Preemptive Ketika proses diberi jatah jatah waktu penggunaan processor, maka proses tersebut dapat diambil alih proses lain, sehingga proses tersebut disela sebelum selesai, dan harus dilanjutkan menunggu sampai jatah waktu processor tiba untuk prose situ. Algoritma algorima Penjadwalan Algoritmaalgoritma yang menerapkan strategi nonpreemptive antara lain: 1. First In First Out (First Come First Serve) 2. Shortest Job First 3. Highest Ratio Next 4. Multiple Feedback Queue Algoritmaalgoritma yang menerapkan strategi preemptive antara lain: 1. Round Robin 2. Shortest Remaining First 3. Priority Schedulling 4. Guaranted Schedulling Berdasarkan prioritas: 1. Prioritas statis 2. Prioritas dinamis Algoritma Penjadwalan First In First Out (FIFO) Merupakan penjadwalan Non Preemptive dan tidak berprioritas. Ketentuan: # Prosesproses diberi jatah waktu processor berdasarkan waktu kedatangan. # Saat proses mendapat jatah waktu processor, proses dijalankan sampai selesai.
Penjadwalan Proses #5 #3
Sistem Operasi Algoritma ini jarang digunakan secara mandiri, biasanya dikombinasikan dengan skema lain. Algoritma Penjadwalan Shortest Job First (SJF) Merupakan penjadwalan Non Preemptive dan tidak berprioritas Asumsi: waktu jalan proses (sampai selesai) sudah diketahui sebelumnya. Mekanisme: menjadwalkan proses dengan waktu jalan terpendek lebih dulu sampai selesai. Algoritma Penjadwalan HighestRatio Next Merupakan penjadwalan Non Preemptive dan berprioritas dinamis. Algoritma ini untuk mengkoreksi kelemahan SJF, dan prioritas proses merupakan fungsi waktu layanan dan jumlah waktu tunggu proses. (waktu tunggu + waktu layanan ) Prioritas = (waktu layanan ) Disebut HRN karena (waktu tunggu + watu layanan) adalah waktu tanggap, maka waktu tanggap tertinggilah yang harus dilayani. Algoritma Penjadwalan Multiple Feedback Queue Merupakan penjadwalan Non Preemptive dan berprioritas dinamis Algoritma ini untuk mencegah banyaknya swapping dengan prosesproses yang sangat banyak menggunakan processor diberi jatah waktu lebih banyak dalam satu waktu. Ketentuan: # Jalankan proses pada kelas tertinggi # Jika proses menggunakan seluruh kwanta yang dialokasikan, maka prioritasnya diturunkan # Proses yang masuk untuk pertama kali ke system langsung diberi kelas tertinggi Algoritma Penjadwalan Round Robin (RR) Merupakan penjadwalan Preemptive dan tak berprioritas Semua proses diangap penting dan diberi sejumlah waktu procesror yang disebut kwanta (quantum) atau slice time. Ketentuan: # Jika kwanta habis dan proses belum selesai, maka proses menjadi runable(ready) dan processor dialihkan ke proses lain
Penjadwalan Proses #5 # 4
Sistem Operasi # #
Jika kwanta belum habis dan proses menunggu kejadian , maka proses menjadi blocked dan processor dialihkan ke proses lain Jika kwanta habis dan proses selesai, maka proses diakhiri (terminate) dan processor dialihkan ke proses lain
Algoritma Penjadwalan Shortest Remaining First (SRF) Merupakan penjadwalan Preemptive dan berprioritas dinamis. Proses dengan sisa waktu jalan diestimasi terendah dijalnkan, termasuk prosesproses yang baru tiba. Algoritma Penjadwalan Priority Schedulling (PS) Setiap proses diberi prioritas dan proses dengan prioritas tertinggi running. Prioritas diberikan secara : 1. Statis 2. Dinamis Prioritas = 1/ f , dengan f adalah ratio kwanta terakhir yang digunakn proses. Algoritma Penjadwalan Guaranted Schedulling (GS) Merupakan penjadwalan Preemptive dan berprioritas dinamis. Algoritma ini berusaha memberikan tiap pemakai daya processor yang sama, jika terdapat N pemakai , maka tiap pemakai mendapat 1/N daya processor. Sistem merekam besar waktu processor yang telah digunakan proses sejak login dan jumlah waktu processor yang digunakan seluruh proses. Karena jumlah waktu processor tiap pemakai dapat diketahui, maka dapat dihitung ratio antara waktu processor yang sesungguhnya harus diperoleh, yaitu 1/N waktu processor seluruhnya dan waktu processor yang yang telah diperuntukkan prose situ. Penjadwal akan menjalankan proses dengan ratio terendah sampai ratio proses diatas pesaing terdekatnya.
Penjadwalan Proses #5 # 5