0 penilaian0% menganggap dokumen ini bermanfaat (0 suara)
178 tayangan38 halaman
Dokumen tersebut membahas tentang penjadwalan proses pada sistem operasi, meliputi deskripsi penjadwalan proses, sasaran utama penjadwalan proses seperti efisiensi dan keadilan, serta strategi dan algoritma penjadwalan proses seperti FIFO, SJF, dan round robin.
Dokumen tersebut membahas tentang penjadwalan proses pada sistem operasi, meliputi deskripsi penjadwalan proses, sasaran utama penjadwalan proses seperti efisiensi dan keadilan, serta strategi dan algoritma penjadwalan proses seperti FIFO, SJF, dan round robin.
Dokumen tersebut membahas tentang penjadwalan proses pada sistem operasi, meliputi deskripsi penjadwalan proses, sasaran utama penjadwalan proses seperti efisiensi dan keadilan, serta strategi dan algoritma penjadwalan proses seperti FIFO, SJF, dan round robin.
• Sasaran Utama Penjadwalan Proses • Strategi Penjadwalan Proses • Algoritma Penjadwalan Proses
SO - STIKI Indonesia - 2016
Deskripsi Penjadwalan Proses • Penjadwalan proses merupakan basis SO multiprogramming. Dengan mengalih-alihkan pemroses di antara proses-proses yang ada, SO membuat sistem komputer menjadi lebih produktif dan efisien. • Sasaran multiprogramming adalah mempunyai proses yang berjalan (dieksekusi) di setiap waktu untuk memaksimumkan utilisasi pemroses.
SO - STIKI Indonesia - 2016
Deskripsi Penjadwalan Proses • Penjadwalan merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer. • Penjadwalan bertugas memutuskan: – Proses yang harus berjalan – Kapan dan selama berapa lama proses itu berjalan
SO - STIKI Indonesia - 2016
Sasaran Utama Penjadwalan Proses • Sasaran utama penjadwalan proses adalah optimasi kinerja menurut kriteria tertentu, yaitu: 1. Adil: Proses-proses diperlakukan sama yaitu mendapat jatah waktu pemroses yang sama dan tak ada proses yang tak kebagian layanan pemroses sehingga mengalami starvation (kondisi bahwa proses tidak pernah berjalan karena tidak dijadwalkan untuk berjalan). Sasaran penjadwalan seharusnya menjamin setiap proses mendapat pelayanan dari pemroses secara adil. 2. Efisiensi: Efisiensi atau utilisasi pemroses dihitung dengan perbandingan (rasio) waktu sibuk pemroses. Sasaran penjadwalan adalah menjaga agar pemroses tetap dalam keadaan sibuk sehingga efisiensi mencapai maksimum. Sibuk adalah pemroses tidak menganggur, termasuk waktu yang dihabiskan untuk mengeksekusi program pemakai dan sistem operasi.
SO - STIKI Indonesia - 2016
3. Waktu tanggap (response time) • Waktu tanggap pada sistem interaktif: adalah waktu yang dihabiskan dari saat karakter terakhir dari perintah dimasukkan atau transaksi sampai hasil pertama muncul di layar (terminal) → disebut terminal response time • Waktu tanggap pada sistem waktu nyata (real-time): adalah waktu dari saat kejadian (internal atau eksternal) sampai instruksi pertama rutin layanan yang dimaksud dieksekusi → disebut event response time
SO - STIKI Indonesia - 2016
4. Turn arround time: waktu yang dihabiskan dari saat program atau job mulai masuk ke sistem sampai proses diselesaikan sistem. Waktu yang dimaksud adalah waktu yang dihabiskan di dalam sistem. Turn arround time = waktu eksekusi + waktu menunggu. Sasaran penjadwalan adalah meminimalkan turn arround time. 5. Throughput: jumlah kerja atau jumlah job yang dapat diselesaikan dalam satu unit waktu. Sasaran penjadwalan adalah memaksimalkan jumlah job yang diproses per satu interval waktu. Lebih tinggi angka throughput, lebih banyak kerja yang dilakukan sistem.
SO - STIKI Indonesia - 2016
Strategi Penjadwalan Proses 1. Penjadwalan nonpreemptive (run-to-completion): proses yang sedang berjalan tidak dapat disela. Sekali proses berada di status running (sedang berjalan), maka proses tersebut akan dieksekusi terus sampai proses berhenti karena selesai atau diblok untuk menunggu I/O atau untuk meminta beberapa layanan dari sistem operasi; dan CPU tidak dapat diambil alih oleh proses yang lain. 2. Penjadwalan preemptive: proses yang sedang berjalan dapat diinterupsi dan dipindah ke status ready oleh sistem operasi sehingga CPU dapat diambil alih proses yang lain.
SO - STIKI Indonesia - 2016
Algoritma Penjadwalan Proses • Algoritma menggunakan strategi nonpreemptive – FIFO (First-in, First-out) atau FCFS (First-come, First-serve) – SJF (Shortest Job First) – HRN (Highest – Ratio Next) • Algoritma menggunakan strategi preemptive – MFQ (Multiple Feedback Queues) – RR (Round Robin) – SRF (Shortest Remaining First) – PS (Priority Schedulling) – GS (Guaranteed Schedulling) SO - STIKI Indonesia - 2016 Algoritma Penjadwalan Proses Berdasarkan Prioritas
• Klasifikasi lain berdasarkan adanya prioritas di proses-proses tersebut, yaitu:
1. Algoritma Penjadwalan FIFO (First in, First Out) • Merupakan penjadwalan nonpreemptive dan penjadwalan tidak berprioritas. • Penjadwalan FIFO adalah penjadwalan paling sederhana, yaitu: 1. Proses-proses diberi jatah waktu pemroses berdasarkan waktu kedatangan 2. Saat proses mendapat jatah waktu pemroses, proses dijalankan sampai selesai • Penjadwalan ini adil yaitu proses yang datang duluan, dilayani duluan juga. Dikatakan tidak adil karena job-job yang perlu waktu lama membuat job-job pendek menunggu. Job-job tak penting dapat membuat job-job penting menunggu.
SO - STIKI Indonesia - 2016
Contoh • Misal ada tiga proses P1, P2, P3 yang datang dengan lama waktu kerja CPU (CPU Burst-time) masing-masing sbb:
Jika proses datang dengan urutan P1, P2, P3 dan dilayani dengan algoritma FIFO maka dapat digambarkan Gantt Chart-nya :
SO - STIKI Indonesia - 2016
• Dari Gantt Chart dapat diambil kesimpulan waktu tunggu untuk P1 adalah 0 milidetik, waktu tunggu untuk P2 adalah 24 milidetik, waktu tunggu P3 adalah 27 milidetik. • Jadi rata-rata waktu tunggu (Average Waiting Time / AWT) adalah (0+24+27)/3 = 17 milidetik.
SO - STIKI Indonesia - 2016
• Kemudian jika waktu kedatangan proses adalah P3, P2, P1 maka Gantt Chartnya adalah:
• Dengan urutan kedatangan seperti diatas AWT = (0+3+6)/3 = 3 milidetik
SO - STIKI Indonesia - 2016
• Menentukan Turn Around Time dengan FIFO berdasarkan contoh diatas :
• Turn around time (waktu penyelesaian) P1 adalah 24, P2 = 27, P3 = 30,
maka rata-rata turn around time = (24+27+30)/3 = 27 milidetik.
SO - STIKI Indonesia - 2016
2. Algoritma Penjadwalan SJF (Shortest Job First)
• Algoritma penjadwalan ini jarang digunakan. SJF merupakan
penjadwalan nonpreemptive dan penjadwalan tidak berprioritas. • Penjadwalan ini mengasumsikan waktu jalan proses (sampai selesai) diketahui sebelumnya. Mekanisme penjadwalan adalah menjadwalkan proses dengan waktu jalan terpendek lebih dulu sampai selesai.
SO - STIKI Indonesia - 2016
Contoh 1 • Misal terdapat kumpulan proses dengan burst-time sebagai berikut :
• Gantt Chart :
SO - STIKI Indonesia - 2016
• Dari Gantt Chart dapat diambil nilai waktu tunggu untuk : – P1 = 3 milidetik – P2 = 16 milidetik – P3 = 9 milidetik – P4 = 0 milidetik • Jadi AWT yang dihasilkan adalah (3+16+9+0) / 4 = 7 milidetik.
SO - STIKI Indonesia - 2016
Contoh 2 • Menentukan turn around time:
SO - STIKI Indonesia - 2016
Contoh 3 Menentukan AWT untuk SJF non preemptive:
•Gantt Chart algoritma SJF non preemptive :
SO - STIKI Indonesia - 2016
• Dari Gantt Chart dapat diambil nilai waktu tunggu untuk : – A = 0 milidetik – B = waktu mulai dilayani – waktu saat tiba = 8-2 = 6 milidetik – C = waktu mulai dilayani – waktu saat tiba = 7-4 = 3 milidetik – D = waktu mulai dilayani – waktu saat tiba = 12-5 = 7 milidetik • Jadi AWT yang dihasilkan adalah (0+6+3+7) / 4 = 4 milidetik.
•Dari Gantt Chart dapat diambil nilai waktu tunggu untuk :
– A = 0 + (11-2) = 9 milidetik – B = 0 + (5-4) = 1 milidetik – C = 0 milidetik – D = 7-5 = 2 milidetik •Jadi AWT yang dihasilkan adalah (9+1+0+2) / 4 = 3 milidetik. SO - STIKI Indonesia - 2016 • Menentukan turn around time:
SO - STIKI Indonesia - 2016
Penjadwalan RR (Round Robin) • Merupakan penjadwalan preemptive, penjadwalan tanpa prioritas. Semua proses dianggap penting dan diberi sejumlah waktu pemroses yang disebut kwanta (quantum) atau time-slice dimana proses itu berjalan. • Ketentuan algoritma RR : 1. Jika quantum habis dan proses belum selesai maka proses menjadi runnable dan pemroses dialihkan ke proses lain 2. jika quantum belum habis dan proses menunggu suatu kejadian (selesainya I/O), maka proses menjadi blocked dan pemroses dialihkan ke proses lain. 3. jika quantum belum habis tapi proses telah selesai maka proses diakhiri dan pemroses dialihkan ke proses lain.
SO - STIKI Indonesia - 2016
Contoh 1 • Misal kumpulan proses datang pada waktu 0 dengan spesifikasi :
SO - STIKI Indonesia - 2016
• Jika digunakan quantum time 4 milidetik, maka proses P1 mendapat 4 milidetik yang pertama, 20 milidetik berikutnya akan disela oleh proses P2 dan P3 secara bergantian, sehingga Gantt Chart-nya dapat digambarkan sbb:
SO - STIKI Indonesia - 2016
• Waktu tunggu untuk tiap-tiap proses :
• AWT yang terjadi adalah (6+4+7)/3 = 5,66 milidetik
SO - STIKI Indonesia - 2016
Contoh 2 • Menentukan Turn Around Time untuk quantum waktu (q) = 3
SO - STIKI Indonesia - 2016
SO - STIKI Indonesia - 2016 Penjadwalan PS (Priority Schedulling) • Tiap proses dilengkapi dengan prioritas. • CPU dialokasikan untuk proses yang memiliki prioritas paling tinggi. • Jika beberapa proses memiliki prioritas yang sama, maka akan digunakan algoritma FIFO.
SO - STIKI Indonesia - 2016
Contoh: • Jika ada 5 proses P1, P2, P3, P4 dan P5 dengan CPU burst:
• Gantt Chart:
SO - STIKI Indonesia - 2016
• Waktu tunggu untuk tiap-tiap proses:
• Sehingga AWT = (6+0+16+18+1) = 8,2 ms.
SO - STIKI Indonesia - 2016
• Prioritas biasanya menyangkut masalah: waktu, memori yang dibutuhkan, banyaknya file yang boleh dibuka, dan perbandingan antara rata-rata I/O burst dengan rata-rata CPU burst. • Priority schedulling bersifat preemptive atau nonpreemptive. Jika ada proses P1 yang datang pada saat P0 sedang berjalan, maka akan dilihat prioritas P1. Seandainya prioritas P1 lebih besar dibanding dengan prioritas P0 maka pada non preemptive, algoritma tetap akan menyelesaikan P0 sampai habis CPU burst-nya, dan meletakkan P1 pada posisi head queue. Sedangkan pada preemptive, P0 akan dihentikan dulu, dan CPU ganti dialokasikan untuk P1.
SO - STIKI Indonesia - 2016
Menu Penutup • Penjadwalan merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer. • Sasaran utama penjadwalan yaitu: adil, efisiensi, waktu tanggap (response time), turn arround time, throughput. • Strategi penjadwalan proses dikelompokkan menjadi dua yaitu penjadwalan nonpreemptive: proses yang sedang berjalan tidak dapat disela dan penjadwalan preemptive: proses yang sedang berjalan dapat disela.
SO - STIKI Indonesia - 2016
Bekal Pulang [Tugas 4] 1. Sebutkan dan jelaskan kriteria penjadwalan proses! 2. Jika diketahui 4 proses dengan waktu kedatangan yang tidak sama seperti ditunjukkan pada tabel berikut: Prose Urutan Waktu Lama Proses s Kedatangan Kedatangan (Milidetik) A 1 0 8 B 2 3 5 C 3 5 2 D 4 6 5
Dengan menggunakan algoritma penjadwalan FIFO (First-in, First-out), tentukan:
a.Waktu tunggu masing-masing proses b.Waktu tunggu rata-rata proses (AWT) c.Turn Around Time (TAT)
SO - STIKI Indonesia - 2016
3. Jika diketahui 4 proses dengan waktu kedatangan seperti ditunjukkan pada tabel berikut:
Proses Lama Proses Urutan Kedatangan Waktu Kedatangan
(Milidetik) P1 8 1 0 P2 5 2 3 P3 2 3 5 Dengan P4 menggunakan 5 algoritma 4 penjadwalan6 Shortest Job First (SJF) dengan strategi penjadwalan non preemptive dan preemptive, tentukan: a.Waktu tunggu masing-masing proses b.Waktu tunggu rata-rata proses (AWT) c.Turn Around Time (TAT)
SO - STIKI Indonesia - 2016
4. Lakukan analisis kelemahan dan kelebihan terhadap algoritma penjadwalan FCFS, RR, SJF, PS berdasarkan kriteria penjadwalan: Adil (fairness), Efisiensi, Waktu Tanggap (response time), Turn Arrround Time dan Throughput! 5. Lakukan analisis dan pemetaan terhadap algoritma penjadwalan FCFS, RR, SJF, PS berdasarkan strategi penjadwalan (preemptive, non-preemptive) dan prioritas penjadwalan (berprioritas dan tanpa prioritas)!
SO - STIKI Indonesia - 2016
Referensi • Iwan Binanto. 2005. Sistem Operasi. Penerbit Andi Yogyakarta • Bambang Hariyanto, 2006, Sistem Operasi Revisi Kelima, Penerbit Informatika