Home » » Penjadualan Proses (Sistem Operasi)

Penjadualan Proses (Sistem Operasi)

 Cara penjadualan dengan menggunakan strategi penjadualan berprioritas dan penjadualan terjamin.
Dalam penjadualan, terdapat dua strategi penjadualan, yaitu:
     a) Penjadualan Nonpreemtive (run-to-completion)
     b) Penjadualan Preemtive
      b) Algoritma penjadualan berprioritas, terdiri dari:
             • Berprioritas statik
             • Berprioritas dinamis

Penjadualan Nonpreemtive
Penjadualan nonpreemtive merupakan penjadualan yang mempunyai strategi seperti berikut begitu proses diberi jatah layanan pemroses maka pemroses tidak dapat diambil alih oleh proses lain sampai proses itu selesai. Nonpreemtive juga disebut run-to-completion karma pemroses yang telah dijadwalkan akan dijalankan sampai selesainya ata proses tersebut meminta layanan masukan/keluaran.
Algoritma – Algoritma merupakan yang menerapkan strategi nonpreemtive diantaranya:

a) FIFO (Fist in,Fist Out) atau FCFS (Fist Come,Fist Serve)
    Merupakan penjadwalan tidak berprioritas. FIFO adalah penjadwalan paling sederhana, yaitu :
        • Proses-proses diberi jatah waktu pemroses berdasarkan waktu kedatangan.
        • Pada saat proses mendapat jatah waktu pemroses, proses dijalankan sampai selesai.
FIFO jarang digunakan secara mandiri, tetapi dikombinasikan dengan skema
lain, misalnya: keputusan berdasarkan prioritas proses. Untuk proses-pross berprioritas sama diputuskan berdasarkan FIFO.
Penjadwalan ini:
     • Baik untuk sistem batch yang sangat jarang berinteraksi dengan pemakai.
Contoh: aplikasi analisis numerik, maupun pembuatan tabel.
  • Sangat tidak baik (tidak berguna) untuk sistem interaktif, karena tidak memberi waktu tanggap yang baik.
  • Tidak dapat digunakan untuk sistem waktu nyata (real-time applications).


b) SJF (Shortest Job First)
    Penjadwalan ini mengasumsikan waktu jalan proses sampai selesai diketahui sebelumnya. Mekanismenya adalah menjadwalkan proses dengan waktu jalan terpendek lebih dulu sampai selesai, sehingga memberikan efisiensi yang tinggi dan turn around time rendah dan penjadwalannya tak berprioritas.
Contoh:
Terdapat empat proses (job) yaitu A,B,C,D dengan waktu jalannya masing-masing adalah 8,4,4 dan 4 menit. Apabila proses-proses tersebut dijalankan, maka turn around time untuk A adalah 8 menit, untuk B adalah 12, untuk C adalah 16 dan untuk D adalah 20.
SJF selalu memperhatikan rata-rata waktu respon terkecil, maka sangat baik untuk proses interaktif. Umumnya proses interaktif memiliki pola, yaitu menunggu perintah, menjalankan perintah, menunggu perintah dan menjalankan perintah, begitu seterusnya. Masalah yang muncul adalah:
     • Tidak mengetahui ukuran job saat job masuk. Untuk mengetahui ukuran job adalah dengan membuat estimasi berdasarkan kelakukan sebelumnya.
     • Proses yang tidak datang bersamaan, sehingga penetapannya harus dinamis. Penjadwalan ini jarang digunakan, karena merupakan kajian teoritis untuk pembandingan turn around time.

c) HRN(Highest-Ratio Next)
Penjadwalan HRN ini merupakan
   a) Penjadwalan non-preemptive
   b) Penjadwalan berprioritas dinamis
Penjadwalan ini juga untuk mengkoreksi kelemaha SJF. HRN adalah strategi penjadwalan non preemptive dengan prioritas proses tidak hanya merupakan fungsi dari waktu layanan tapi juga jumlah waktu tunggu proses. Prioritas dinamis HRN dihitung berdasarkan rumus berikut:
Prioritas=(Waktu tunggu + waktu layanan)/waktu layanan.
Karena waktu layanan muncul sebagai pembagi maka proses yang lebih pendek mempunyai prioritas yang lebih baik. Karena waktu tunggu sebagai pembilang maka proses yang telah menunggu lebih lama juga mempunyai kesempatn lebih bagus untuk memperoleh layanan pemroses. Disebut HRN (High Response next) karena (waktu tanggap adalah waktu tunggu +waktu layanan). Ketentusn HRN berarti agar memperoleh waktu tanggap tertinggi yang harus dilayani.

Penjadualan Preemtive
Proses diberi jatah waktu oleh pemroses, maka pemroses dapat diambil alih proses lain, sehingga proses disela sebelum selesai dan harus dilanjutkan menunggu jatah waktu pemroses tiba kembali pada proses itu. Berguna pada sistem dimana proses-proses yang mendapat perhatian/tanggapan pemroses
secara cepat, misalnya:
     • Pada sistem realtime, kehilangan interupsi (tidak layani segera) dapat berakibat fatal.
     • Pada sistem interaktif, agar dapat menjamin waktu tanggap yang memadai.
Penjadwalan secara preemptive baik tetapi harus dibayar mahal. Peralihan proses memerlukan overhead (banyak tabel yang dikelola). Supaya efektif, banyak proses harus berada di memori utama sehingga proses-proses tersebut dapat segera running begitu diperlukan. Menyimpan banyak proses tak running benar-benar di memori utama merupakan suatu overhead tersendiri.


Algoritma – algoritma yang menerapkan strategi preemptive diantaranya:
a) RR(Round-Robin)    Penjadwalan Round robin merupakan penjadwalan preemptive, namun proses tidak di-preempt secara langsung oleh proses lain ,namun oleh penjadwal berdasarkan lama waktu perjalananya suatu proses maka penjadwalan ini disebut preempt-by-time. Penjadualan Round Robin merupakan penjadwalan tanpa prioritas.

b) MFQ(Multiple-Feedback-Queues)
    Penjadwalan MFQ ini merupakan
   a) Penjadwalan preemptive (preemp by-time)
   b) Penjadwalan berprioritas dinamis.
Sasaran penjadwalan MFQ ini adalah untuk mencegah banyaknya aktufutas swapping. Cara yang dilakukan dengan adalah dengan proses yang sengat banyak menggunakan pemroses (karena menyelesaikan tugasnya memekan waktu yang lama) diberi jatahwaktu (jumlah kwanta) lebih banyak dalam satu waktu.

c) SRF(Shortes-Remaining-First)
    Penjadwalan ini merupakan
   a) Penjadwalan preemptive
   b) Penjadwalan berprioritas dinamis.
Penjadwalan SRF merupakan perbaikan dari SJF . SJF merupakan penjadwalan nonpreemptiive sedang SRF adalah preemptive yang dapat digunakan untuk system timesharing. Ketentuan:
   a) Pada SRT, proses dengan sisa waktu jalan diestimasi terendah dijalankan, termasuk proses2 yang baru tiba. Perbedaan SRF dengan SJF
   b) Pada SJF, begitu proses dieksekusi, proses dijalankan sampai selesai.
   c) Pada SRF proses yang sedang berjalan (Running) dapat diambil alih oleh proses baru dengan sisa waktu jalan yang diestimasi lebih rendah.

d) GS (Guaranteed Schedulling)
     Penjadwalan GS ini adalah:
        a) Penjadwalan preemptive
        b) Penjadwalan berprioritas dinamis
Penjadwalan ini berupaya memberi masing-masing pemakai daya pemroses tang sama.. Jika terdapat N pemakai maka tiap pemakai diupayakan mendapat 1/N daya pemroses. Sistem merekam banyak waktu pemroses yang telah digunakan proses sejak login dan jumlah waktu pemroses yang digunakan seluruh proses. Karena jumlah waktu pemroses tiap pemakai dapat diketahui maka dapat dihitung rasio antara waktu pemroses yang sesungguhnya harus diperoleh yaitu 1/N. Waktu pemroses seluruhnya dan waktu pemroses yang telah diperuntukan prose situ. Penjadwalan akan menjalankan proses dengan rasio terendah sampai rasio proses diatas pesaing terdekatnya. Variasi yang ditetapkan pada Sistem Waktu Nyata Karena sistem waktu nyata sering mempunyai deadline absolut maka penjadwalan dapat berdasarkan deadline terdekat. Proses yang lebih dalam bahaya kehilangan deadline dijalankan lebih dahulu. Proses yang berakhir 10 detik lagi mendapat prioritas lebih tinggi dibanding yang berakhir 10 menit lagi.
Strategi penjadualan berprioritas merupakan strategi penjadualan nonpreemtive, sehingga dalam hal ini apabila pemroses melakukan eksekusi proses yang berkaitan dengan operasi pada beberapa peripheral I/O secara bersamaan maka pemroses tidak dapat diambil alih oleh proses lain sampai proses itu selesai. Dalam artian, eksekusi proses dilakukan secara bergantian pada beberapa I/O tersebut dan tidak dapat dilakukan secara bersamaan.
Sedangkan untuk strategi penjadualan terjamin (GS) merupakan salah satu contoh algoritma strategi penjadualan preemptive, sehingga apabila pemroses melakukan eksekusi proses yang berkaitan dengan operasi pada beberapa peripheral I/O secara bersamaan maka pemroses dapat diambil alih proses lain, sehingga proses disela sebelum selesai dan harus dilanjutkan menunggu jatah waktu pemroses tiba kembali pada proses itu. Dalam artian, apabila proses menginginkan suatu eksekusi diselesaikan maka proses dapat disela tanpa harus menunggu proses lain yang sedang berjalan selesai.

Perbedaan Strategi Penjadualan Berprioritas dan Penjadualan Terjamin
Dari kedua strategi penjadualan ini terdapat beberapa perbedaan ketika penjadualan tersebut bekerja pada peripheral I/O. Perbedaan tersebut antara lain:

a. Penjadualan berprioritas
Untuk penjadualan berprioritas merupakan salah satu contoh algoritma strategi penjadualan nonpreemtive. Dalam penjadualan ini proses yang telah diberi jatah layanan pemroses maka pemroses tidak dapat diambil alih oleh proses lain sampai proses itu selesai. Beberapa contoh algoritma yang menggunakan strategi penjadualan nonpreemtive yaitu: FIFO (Fist in,Fist Out) atau FCFS (Fist Come,Fist Serve) dan SJF (Shortest Job First).

b. Penjadualan terjamin
Untuk penjadualan berprioritas merupakan salah satu contoh algoritma strategi penjadualan preemtive. Dalam penjadualan ini, proses diberi jatah waktu oleh pemroses, maka pemroses dapat diambil alih proses lain, sehingga proses disela sebelum selesai dan harus dilanjutkan menunggu jatah waktu pemroses tiba kembali pada proses itu. Contoh algoritma yang menggunakan strategi penjadualan ini yaitu: RR (Round-Robin), MFQ (Multiple-Feedback -Queues), SRF (Shortes-Remaining-First), HRN (Highest-Ratio Next), PS (Priority Schedulling), GS (Guaranteed Schedulling).
Share this article :

Tidak ada komentar:

Posting Komentar

 
Support : Creating Website | Johny Template | Mas Template
Copyright © 2011. Belajar Bersama - All Rights Reserved
Template Modify by Creating Website
Proudly powered by Blogger