Minggu, 05 April 2015

Konsep Dasar Penjadwalan Proses

Konsep Dasar Penjadwalan Proses

Penjadwalan adalah fungsi dasar dari sistem operasi semua resources komputer dijadwalkan sebelum digunakan. Pada sistem komputer terdapat beberapa bentuk penjadwalan: admission (pintu masuk kesistem ), memori, dan CPU scheduler. Penjadwalan CPU adalah pemilihan proses dari Ready Queue untuk dapat dieksekusi. Penjadwalan CPU didasarkan pada sistem operasi yang menggunakan prinsip Multiprogramming.

Penjadwalan bertugas memutuskan :
  • ·         Proses yang harus berjalan.
  • ·         Kapan dan selama berapa lama proses itu berjalan.


Kita mengenal istilah multiprograming, yang bertujuan untuk memaksimalkan penggunaan CPU dengan cara mengatur alokasi waktu yang digunakan oleh CPU, sehingga proses berjalan sepanjang waktu dan memperkecil waktu idle. Akibatnya sistem operasi dapat membuat komputer lebih produktif. Oleh karena itu perlu adanya penjadwalan proses-proses yang ada pada sistem.

Penjadwalan CPU adalah suatu proses pengaturan atau penjadwalan proses-proses yang ada di dalam komputer. Dimana proses-proses tersebut berjalan dalam pola yang disebut Siklus Burst yang akan dijelaskan pada bab ini.

Penjadwalan CPU secara garis besar dibagi menjadi 2, yaitu PenjadwalanPreemptive dan Penjadwalan Non Preemptive. kriteria yang baik bagi suatu konsep penjadwalan dan penjelasan mengenai dispatcher, yaitu suatu komponen yang turut terlibat dalam penjadwalan. Penjadwalan sangat penting dalam menentukan performance sebuah komputer karena mengatur alokasi resource dari CPU untuk menjalankan proses-proses di dalam komputer. Penjadwalan CPU merupakan suatu konsep dasar darimultiprograming, karena dengan adanya penjadwalan dari CPU itu sendiri maka proses-proses tersebut akan mendapatkan alokasi resource dari CPU.
CPU Scheduler

Pada saat CPU menganggur, maka sistem operasi yang harus menyeleksi proses-proses yang ada di memori utama(rady queue),untuk di eksekusi dan mengalokasikan CPU untuk salah satu dari proses tersebut,Seleksi semacam ini di sebut dengan short term scheduler(CPU scheduler).

1      Apabila proses berpindah dari keadaan ruuning ke waiting
2      Apabila proses berpindah dari keadaan ruuning ke ready
3      Apabila proses berpindah dari keadaan waiting ke ready
4     Apabila proses berhenti

Dispatcher
Dispatcher adalah suatu modul yang akan memberikan kontrol pada CPU terhadap penyelesaian proses yang di lakukan selama short-term scheduling.

  KRITERIA PENJADWALAN

Algoritma penjadwalan CPU yang berbeda akan memiliki perbedaan properti,sehingg untuk memiliki algoritma ini harus di pertimbangkan duluh properti-properti algoritma tersebut.

1.      CPU utilization: Diharapkan agar CPU selalu dalam keadaan sibuk
2.      Throughput: Throughput adalah banyaknya proses yang selesai di kerjakan dalam satu satuan waktu
3.      Turnaround time: Banyaknya waktu yang di perlukan untuk mengeskusi proses,dari mulai menunggu untuk memerintah tempat di memori utama,menunggu di ready queue,eksekusi oleh CPU,dan mengerjakan I/O samapi semua proses-proses tersebut diselesaikan.
4.      Waiting time: Waktu yang di perlukan oleh suatu proses untuk menunggu di ready queue
5.      Response time: Waktu yang di butuhkan oleh suatu proses dari minta di layani hingga ada respont pertama yang menanggapi permintaan tersebut
6.      Fairness . Suatu algoritma harus memperhatikan pengawasan nilai prioritas dari suatu proses (menghindari terjadinya starvation CPU time).
7.      Efisiensi. Rendahnya overhead dalam context switching, penghitungan prioritas dan sebagainya menentukan apakah suatu algoritma efisien atau tidak.

      Sebaiknya ketika kita akan membuat algoritma penjadwalan yang dilakukan adalah memaksimalkan CPU utilization dan throughput, dan meminimalkanturnaround time, waiting time, dan response time.


Algoritma Penjadwalan : First Come First Server (FCFS)
Pertama datang, pertama dilayani (First In, First Out atau FIFO) tidak peduli apakah burst time nya panjang atau pendek, sebuah proses yang sedang dikerjakan diselesaikan terlebih dulu barulah proses berikutnya dilayani.

Penjadwalan FCFS merupakan penjadwalan:

·         Penjadwalan non-prevebtive (run-to-completion)
·         Penjadwalan tidak berprioritas

Ketentuan dari penjadwalan FCFS adalah:

·         Proses-proses diberi jatah waktu pemroses, diurut dengan waktu kedatangannya.
·         Begitu proses mendapat jatah waktu pemproses, proses dijalankan sampai proses tersebut selesai, walaupun ada proses lain yang datang, proses tersebut berada dalam antrian sistem atau disebut dengan ready queue.

Pada dasarnya algoritma penjadwalan ini cukup adil dalam hal bahasa, karena proses yang datang lebih dulu dikerjakan terlebih dahulu. Dari segi konsep sistem operasi, penjadwalan model ini tidak adil karena proses-proses yang membutuhkan waktu yang lama membuat proses-proses yang memiliki waktu proses yang lebih pendek menunggu sampai proses yang lama tersebut selesai, sedangkan proses-proses yang tidak penting membuat proses penting menunggu.

Penjadwalan FCFS cocok digunakan untuk sistem batch yang sangat jarang melakukan interaksi dengan user secara langsung, tapi tidak cocok digunakan untuk sistem interaktif karena tidak memberi waktu tanggap yang bagus, begitu juga dengan waktu sistem nyata.




Algoritma Penjadwalan : Shortest Job First (SJF)

Dalam Sistem Operasi dikenal istilah multiprograming, yang bertujuan untuk memaksimalkan penggunaan CPU dengan cara mengatur alokasi waktu yang digunakan oleh CPU,sehingga proses berjalan sepanjang waktu dan memperkecil waktu idle. Oleh karena itu perlu adanyapenjadwalan proses-proses yang ada pada sistem. Untuk sistem yang hanya mempunyai prosesortunggal (uniprosesor), hanya ada satu proses yang dapat berjalan setiap waktunya. Jika ada proseslebih dari satu maka proses yang lain harus menunggu sampai CPU bebas dan siap untuk dijadwalkankembali.

Penjadwalan berkaitan dengan permasalahan memutuskan proses mana yang akandilaksanakan dalam suatu sistem. Proses yang belum mendapat jatah alokasi dari CPU akan mengantridi ready queue. Algoritma penjadwalan berfungsi untuk menentukan proses manakah yang adadi ready queue yang akan dieksekusi oleh CPU. Bagian berikut ini akan memberikan ilustrasialgoritma penjadwalan Shortest Job First.

Pada algoritma ini setiap proses yang ada di ready queue akan dieksekusi berdasarkan burst time terkecil. Hal ini mengakibatkan waiting time yang pendek untuk setiap proses dan karena haltersebut maka waiting time rata-ratanya juga menjadi pendek, sehingga dapat dikatakan bahwa algoritma ini adalah algoritma yang optimal.

Sumber :




Tidak ada komentar:

Posting Komentar