Home » , » Penjadwalan (Scedullis)

Penjadwalan (Scedullis)

Posted by Agus Nur Ikhsan on Senin, 16 April 2012


Criteria Penjadwalan

~ Waktu Tanggap / response time
Waktu tanggap dalam system interaktif didefinisikan sebagai waktu yang dihabiskan dari saat karakter terakhir dari perintah dimasukkan program atau transaksi sampai hasil pertama muncul di layer (terminal). Waktu tanggap ini disebut terminal response time.
Sasaran penjadwalan adalah meminimalkan waktu tanggap.

~ Turn Arround Time
Turn Arround Time adalah waktu yang dihabiskan dari saat program atau job mulai masuk ke system sampai proses diselesaikan system. Waktu yang dimaksud adalah waktu yang dihabiskan di dalam system, diekspresikan sebagai penjumlah waktu eksekusi (waktu pelayanan job) dan waktu menunggu, yaitu: Turn Arround Time = waktu eksekusi + waktu menunggu

~ Throughput
Throughput adalah jumlah kerja yang dapat diselesaikan dalam satu unit waktu. Cara untuk mengekspresikan throughput adalah dengan jumlah job pemakai yang dapat dieksekusi dalam satu unit/interval waktu.

Sasaran penjadwalah adalah memaksimalkan jumlah job yang diproses per satu interval waktu. Lebih tinggi angka throughput, lebih banyak kerja yang dilakukan system.

1.      FCFS / FIFO 
FCFS / FIFO  adalah Algoritma ini merupakan algoritma penjadwalan yang paling sederhana yang digunakan CPU. Dengan menggunakan algoritma ini seiap proses yang berada pada status ready dimasukkan ke dalam antrian FIFO sesuai dengan waktu kedatangannya. Proses yang tiba terlebih dahulu yang akan dieksekusi terlebih dahulu. Misalnya ada tiga buah proses yang datang secara bersamaan yaitu pada 0 ms, P1 memilikiburst time 24 ms, P2 memiliki burst time 5 ms, P3 memiliki burst time 3 ms. Hitunglah wating time rata-rata dan turnaround time (burst time +waiting time) dari ketiga proses tersebut dengan menggunakan algoritma FCFS.

~  Kelebihan : algoritma yang paling sederhana, dengan skema proses yang meminta CPU mendapat prioritas.
~  Kelemahan: a. Waiting time rata-ratanya cukup lama.
b. Terjadinya convoy effect, yaitu proses-proses menunggu lama untuk menunggu satu proses besar yang sedang dieksekusi oleh CPU.

2.    SJF (Shortest-Job First)
SJF (Shortest-Job First) adalah Algoritma ini mempunyai cara penjadwalan yang berbeda dengan FCFS. Dengan algoritma ini maka setiap proses yang ada di antrian ready akan dieksekusi berdasarkan burst time terkecil. Hal ini mengakibatkan waiting time yang pendek untuk setiap proses dan karena hal tersebut maka waiting time rata-ratanya juga menjadi pendek, sehingga dapat dikatakan bahwa algoritma ini adalah algoritma yang optimal.
~  Kelebihan : Paling optimal, karena algoritma ini memberikan minimum waiting time untuk kumpulan proses yang mengantri
~  kekurangan: • Kesulitan untuk memprediksi burst time proses yang akan dieksekusi selanjutnya .
• Proses yang mempunyai burst time yang besar akan memiliki waiting time yang besar pula karena yang dieksekusi terlebih dahulu adalah proses dengan burst time yang lebih kecil.

3.    Priority
~  Kelemahan :
Dapat terjadinya indefinite blocking (starvation) yaitu suatu proses dengan prioritas yang rendah memiliki kemungkinan untuk tidak dieksekusi jika terdapat proses lain yang memiliki prioritas lebih tinggi darinya. Solusi dari permasalahan ini adalah aging, yaitu meningkatkan prioritas dari setiap proses yang menunggu dalam antrian secara bertahap.




4.    RR (Round Robin)
~  Kelebihan:  Tak ada proses yang diprioritaskan
~ Kelemahan: - Tergantung pada time quantum. Jika terlalu besar, algoritma ini akan sama  sajadengan algoritma first come first served. Jika terlalu kecil, akan semakin banyakperalihan proses sehingga banyak waktu terbuang.
-   Jika Time quantum yang ditentukan terlalu kecil, maka sebagian besar prosestidak akan selesai dalam 1 quantum



5.    Multilevel Queue
Ide dasar dari algoritma ini adalah berdasarkan pada sistem prioritas proses. Prinsipnya adalah, jika setiap proses dapat dikelompokkan berdasarkan prioritasnya. Dari gambar tersebut terlihat bahwa akan terjadi pengelompokan-pengelompokan proses-proses berdasarkan prioritasnya. Kemudian muncul gagasan untuk menganggap kelompok-kelompok tersebut sebagai sebuah antrian-antrian kecil yang merupakan bagian dari antrian keseluruhan proses, yang sering disebut dengan algoritma multilevel queue.
Dalam hal ini dapat dilihat bahwa seolah-olah algoritma dengan prioritas yang dasar adalah algoritma multilevel queue dimana setiap antrian akan berjalan dengan algoritma FCFS dan dapat diketahui bahwa algoritma FCFS memiliki banyak kelemahan, oleh karena itu dalam prakteknya, algoritma multilevel queue memungkinkan adanya penerapan algoritma internal dalam masing-masing sub-antriannya untuk meningkatkan kinerjanya, dimana setiap sub-antrian bisa memiliki algoritma internal yang berbeda Berawal dari priority scheduling, algoritma ini pun memiliki kelemahan yang sama dengan priority scheduling, yaitu sangat mungkin bahwa suatu proses pada queue dengan prioritas rendah bisa saja tidak mendapat jatah CPU. Untuk mengatasi hal tersebut, salah satu caranya adalah dengan memodifikasi algoritma ini dengan adanya jatah waktu maksimal untuk tiap antrian, sehingga jika suatu antrian memakan terlalu banyak waktu, maka prosesnya akan dihentikan dan digantikan oleh antrian dibawahnya.



6.    Multilevel feedback Queue
Algoritma ini mirip sekali dengan algoritma Multilevel Queue. Perbedaannya ialah algoritma ini mengizinkan proses untuk pindah antrian. Jika suatu proses menyita CPU terlalu lama, maka proses itu akan dipindahkan ke antrian yang lebih rendah. Ini menguntungkan proses interaksi, karena proses ini hanya memakai waktu CPU yang sedikit. Demikian  pula dengan proses yang menunggu terlalu lama. Proses ini akan dinaikkan tingkatannya. Biasanya prioritas tertinggi diberikan kepada proses dengan CPU burst terkecil, dengan begitu CPU akan dimanfaatkan penuh dan I/O dapat terus sibuk. Semakin rendah tingkatannya, panjang CPU burst proses juga semakin besar.

Algoritma ini didefinisikan melalui beberapa parameter, antara lain:
• Jumlah antrian
• Algoritma penjadwalan tiap antrian
• Kapan menaikkan proses ke antrian yang lebih tinggi
• Kapan menurunkan proses ke antrian yang lebih rendah
• Antrian mana yang akan dimasuki proses yang membutuhkan
algoritma ini dapat digunakan secara fleksibel dan diterapkan sesuai dengan kebutuhan sistem. Pada masa sekarang  ini algoritma multilevel feedback queue adalah salah satu yang paling banyak digunakan.

Thanks for reading & sharing Agus Nur Ikhsan

Previous
« Prev Post

0 komentar:

Posting Komentar

Popular Posts