pertemuan - 4 penjadwalan proses merupakan penjadwalan dengan banyak antrian, merupakan penjadwalan...

Download Pertemuan - 4 PENJADWALAN PROSES  Merupakan penjadwalan dengan banyak antrian, merupakan penjadwalan preemptive (by-time), penjadwalan berprioritas dinamis

Post on 06-Mar-2018

219 views

Category:

Documents

5 download

Embed Size (px)

TRANSCRIPT

  • Pertemuan - 4PENJADWALAN PROSES

    Haryono Setiadi, ST, M.EngD3 Ilmu Komputer UNS

  • OBJEK PEMBELAJARAN

    DefinisiDefinisi SasaranSasaran PenjadwalanPenjadwalan TipeTipe--tipetipe penjadwalanpenjadwalan StrategiStrategi PenjadwalanPenjadwalan AlgoritmaAlgoritma PenjadwalanPenjadwalan

  • DEFINISI

    Penjadwalan merupakan kumpulan kebijaksanaan danmekanisme di sistem operasi yang berkaitan dengan urutankerja yang dilakukan sistem komputer. Penjadwalan bertugas memutuskan proses yang harus berjalandan kapan atau berapa lama proses itu berjalan. Sasaran utama penjadwalan proses adalah optimasi kinerjamenurut kriteria tertentu, yaitu :

    adilefisiensiwaktu tanggap (response time) turn arround time throughput

  • SASARAN PENJADWALAN (1)

    AdilProses-proses diperlakukan sama yaitu mendapat jatah waktupemroses yang sama dan tak ada proses yang tidak kebagianlayanan pemroses.

    Efisiensi- Efisiensi atau utilisasi pemroses dihitung dengan perbandingan

    (rasio) waktu sibuk pemroses. - Sasaran penjadwalan menjaga agar pemroses tetap dalam

    keadaan sibuk sehingga efisiensi mencapai maksimum. - Sibuk pemroses tidak menganggur, termasuk waktu yang

    dihabiskan untuk mengeksekusi program pemakai dan SO

  • SASARAN PENJADWALAN (2)

    Waktu tanggap (response time)

    Waktu tanggap pada sistem interaktifAdalah waktu yang dihabiskan dari saat karakter terakhir dariperintah dimasukkan 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 dimaksuddieksekusi disebut event response time

  • SASARAN PENJADWALAN (3)

    Turn arround time - Adalah 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.

  • SASARAN PENJADWALAN (4)

    Throughput - Adalah 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.

  • STRATEGI PENJADWALAN

    Ada 2 strategi penjadwalan : Penjadwalan nonpreemptive Penjadwalan preemptive

    PenjadwalanPenjadwalan nonpreemptivenonpreemptive : ProsesProses yang yang sedangsedang berjalanberjalan tidaktidak dapatdapatdiseladisela. . SekaliSekali prosesproses beradaberada didi status runningstatus running ((sedangsedang berjalanberjalan), ), makamakaprosesproses tersebuttersebut akanakan dieksekusidieksekusi terusterus sampaisampai prosesproses berhentiberhenti dandan CPU CPU tidaktidak dapatdapat diambildiambil alihalih oleholeh prosesproses yang lainyang lain..

    PenjadwalanPenjadwalan preemptivepreemptive : : ProsesProses yang yang sedangsedang berjalanberjalan dapatdapat diinterupsidiinterupsidandan dipindahdipindah keke status readystatus ready oleholeh sistemsistem operasioperasi sehinggasehingga CPU CPU dapatdapatdiambildiambil alihalih prosesproses yang lainyang lain..

  • ALGORITMA PENJADWALAN

    Terdapat banyak algoritma, diantaranya :Algoritma menggunakan strategi nonpreemptive

    FIFO (First-in, First-out) atau FCFS (First-come, First-serve) SJF (Shortest Job First) HRN (Highest Ratio Next)

    b. Algoritma menggunakan strategi preemptiveMFQ (Multiple Feedback Queues) RR (Round Robin) SRF (Shortest Remaining First) PS (Priority Schedulling) GS (Guaranteed Schedulling)

  • NONPREEMPTIVE Penjadwalan FIFO (First in, First Out) (1)

    - Penjadwalan nonpreemptive & penjadwalan tidak berprioritas. - Penjadwalan paling sederhana, yaitu :

    Proses-proses diberi jatah waktu pemroses berdasarkanwaktu kedatanganSaat proses mendapat jatah waktu pemroses, prosesdijalankan sampai selesai

    - Penjadwalan ini adil yaitu proses yang datang duluan, dilayaniduluan 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.

  • NONPREEMPTIVE Penjadwalan FIFO (First in, First Out) (2)

    Contoh : Misal ada tiga proses P1, P2, P3 yang datang dengan lama waktu kerjaCPU (CPU Burst-time) masing-masing sbb :

  • NONPREEMPTIVE Penjadwalan FIFO (First in, First Out) (3)

  • NONPREEMPTIVEPenjadwalan SJF (Shortest Job First) (1)

    jarang digunakan

    - Merupakan penjadwalan nonpreemptive dan penjadwalantidak berprioritas.

    - Penjadwalan ini mengasumsikan waktu jalan proses (sampaiselesai) diketahui sebelumnya. Mekanisme penjadwalanadalah menjadwalkan proses dengan waktu jalan terpendeklebih dulu sampai selesai.

  • NONPREEMPTIVEPenjadwalan SJF (Shortest Job First) (2)

  • NONPREEMPTIVEPenjadwalan SJF (Shortest Job First) (3)

  • PREEMPTIVEPenjadwalan PS (Priority Schedulling) (1)

    Tiap proses dilengkapi dengan prioritas. CPU dialokasikan untukproses yang memiliki prioritas paling tinggi. Jika beberapa prosesmemiliki prioritas yang sama, maka akan digunakan algoritma FIFO. Contoh :

  • PREEMPTIVEPenjadwalan PS (Priority Schedulling) (2)

  • PREEMPTIVEPenjadwalan RR (Round Robin) (1)

    Merupakan penjadwalan preemptive, penjadwalan tanpa prioritas. Semua proses dianggap penting dan diberi sejumlah waktu

    pemroses yang disebut kwanta (quantum) atau time-slice dimanaproses itu berjalan.

  • PREEMPTIVEPenjadwalan RR (Round Robin) (2)

    Ketentuan algoritma RR : - Jika quantum habis dan proses belum selesai maka proses

    menjadi runnable dan pemroses dialihkan ke proses lain - Jika quantum belum habis dan proses menunggu suatu kejadian

    (selesainya I/O), maka proses menjadi blocked dan pemrosesdialihkan ke proses lain.

    - Jika quantum belum habis tapi proses telah selesai maka prosesdiakhiri dan pemroses dialihkan ke proses lain.

  • PREEMPTIVEPenjadwalan RR (Round Robin) (3)

  • PREEMPTIVEPenjadwalan RR (Round Robin) (4)

  • PREEMPTIVEPenjadwalan RR (Round Robin) (5)

  • PREEMPTIVEPenjadwalan RR (Round Robin) (6)

  • Nama Proses Saat Tiba Lama ProsesA 0 4 B 0 3 C 0 2 D 0 1

    Jika digunakan penjadualan Putar Gelang (Round Robin), dengan kuantum waktu sebesar 2 satuan waktu, tentukan AWT dan rata2 TAT?

  • PREEMPTIVEPenjadwalan GS (Guaranteed Schedulling) (1)

    Penjadwalan ini harus menjamin bahwa algoritma tersebutmempunyai kinerja yang cukup bagus dan menjanjikankelangsungan hidup yang baik. Contoh :

    misal ada n user yang sedang login, maka tiap-tiap user dijanjikanakan menerima 1/n dari kemampuan CPU. Untuk meyakinkan bahwa setiap user mendapatkan jatah waktumenggunakan CPU sesuai dengan haknya maka sistem harus tahuberapa CPU time yang diperlukan oleh setiap proses dalam 1 user. Dan juga CPU time yang diperlukan oleh tiap-tiap user

  • PREEMPTIVEPenjadwalan GS (Guaranteed Schedulling) (2)

  • PREEMPTIVEPenjadwalan GS (Guaranteed Schedulling) (3)

  • END CHAPTER

    CHAPTER BERIKUTNYA : 5. KONGKURENSI (KEBERSAMAAN)

  • NONPREEMPTIVEPenjadwalan HRN (Highest Ratio Next)

    - Merupakan penjadwalan non-preemptive & penjadwalanberprioritas dinamis merupakan perbaikan dari algoritma SJF, karena pada SJF ada kemungkinan proses dengan waktulayanan lama akan menunggu lama untuk dieksekusi.

    - Hal ini disebabkan adanya proses-proses lain yang waktulayanannya selalu lebih pendek dari proses tersebut. Prioritas = (waktu tunggu + waktu layanan) / waktu layananProses dengan prioritas yang tertinggi akan dipilih untukdieksekusi selanjutnya.

  • PREEMPTIVEPenjadwalan MFQ (Multiple Feedback Queues)

    - Merupakan penjadwalan dengan banyak antrian, merupakanpenjadwalan preemptive (by-time), penjadwalan berprioritas dinamis.

    - Penjadwalan ini untuk mencegah banyaknya swapping dengan proses-proses yang sangat banyak menggunakan pemroses (karenamenyelesaikan tugasnya memakan waktu lama) diberi jatah waktu(jumlah kwanta/jumlah quantum) lebih banyak dalam satu waktu.

    - Penjadwalan ini menghendaki kelas-kelas prioritas bagi proses-prosesyang ada. Kelas tertinggi berjalan selama satu kwanta, kelas berikutnyaberjalan selama 2 kwanta,kelas berikutnya berjalan 4 kwanta, dst.

    - Ketentuan yang berlaku : Jalankan proses pada kelas tertinggiJika proses menggunakan seluruh kwanta yang dialokasikan maka diturunkankelas prioritasnyaProses yang masuk untuk pertama kali ke sistem langsung diberi kelas tertinggi.

  • PREEMPTIVEPenjadwalan SRF (Shortest Remaining First) Penjadwalansisa waktu terpendek, duluan

    - Merupakan penjadwalan preemptive, berprioritas dinamis. PadaSRF, proses dengan sisa waktu jalan diestimasi terendahdijalankan, termasuk proses-proses yang baru tiba.

    - Pada SJF begitu proses dieksekusi, proses dijalankan sampaiselesai

    - Pada SRF proses yang sedang berjalan (running) dapat diambilalih proses baru dengan sisa jalan yang diestimasi lebih rendah.

    Pertemuan - 4PENJADWALAN PROSESOBJEK PEMBELAJARANDEFINISISASARAN PENJADWALAN (1)SASARAN PENJADWALAN (2)SASARAN PENJADWALAN (3)SASARAN PENJADWALAN (4)STRATEGI PENJADWALANALGORITMA PENJADWALANNONPREEMPTIVE Penjadwalan FIFO (First in, First Out) (1)NONPREEMPTIVE Penjadwalan FIFO (First in, First Out) (2)NONPREEMPTIVE Penjadwalan FIFO (First in, First Out) (3)NONPREEMPTIVE Penjadwalan