Jumat, 26 Desember 2014

Proses Penjadwalan CPU First Come First Served

Sekilas Tentang Penjadwalan CPU

          Penjadwalan CPU adalah pemilihan proses dari antrian ready untuk dapat dieksekusi. Penjadwalan CPU merupakan konsep dari multiprogramming, dimana CPU digunakan secara bergantian untuk proses yang berbeda. Suatu proses terdiri dari dua siklus yaituBurst I/O dan Burst CPU yang dilakukan bergantian hingga proses selesai. Penjadwalan CPU mungkin dijalankan ketika proses:
  1. running ke waiting time
  2. running ke ready state
  3. waiting ke ready state
  4. terminates
        Proses 1 dan 4 adalah proses Non Preemptive, dimana proses tersebut tidak bisa di-interrupt, sedangkan 2 dan 3 adalah proses Preemptive, dimana proses boleh di interrupt.
Pada saat CPU menganggur, maka sistem operasi harus menyeleksi proses-proses yang ada di memori utama (ready queue) untuk dieksekusi dan mengalokasikan CPU untuk salah satu dari proses tersebut. Seleksi semacam ini disebut dengan shortterm scheduler (CPU scheduler). 
        Komponen yang lain dalam penjadwalan CPU adalah dispatcher, Dispatcher adalah suatu modul yang akan memberikan kontrol pada CPU terhadap penyeleksian proses yang dilakukan selama short-term scheduling . Waktu yang diperlukan oleh dispatcher untuk menghentikan suatu proses dan memulai proses yang lain disebut dengan dispatch latency.
Jika dalam suatu proses Burst CPU jauh lebih besar daripada Burst I/O maka disebutCPU Bound. Demikian juga sebaliknya disebut dengn I/O Bound.

ALGORITMA PENJADWALAN FIRST COME FIRST SERVED (FCFS)
            Proses yang pertama kali meminta jatah waktu untuk menggunakan CPU akan dilayani terlebih dahulu. Dan rata-rata waktu tunggu (Average waiting time) cukup tinggi.
Algoritma penjadwalan FCFS merupakan salah satu strategi penjadwalan non-Preemptive karena sekali CPU dialokasikan pada suatu proses, maka proses tersebut akan tetap memakai CPU sampai proses tersebut melepaskannhya, yaitu jika proses berhenti atau meminta I/O. Kelemahan dari Algoritma penjadwalan ini adalah adanya convoy effect.
skema proses yang meminta CPU mendapat prioritas. Implementasi dari FCFS mudah diatasi dengan FIFO queue. Contoh :








urutan kedatangan adalah P1, P2, P3
Gant Chart ini adalah :



Waiting time for P1 = 0; P2 = 24; P3 = 27
Average waiting time: (0 + 24 + 27)/3 = 17
misal proses dibalik sehingga urutan kedatangan adalah P2, P3, P1. Gant Chartnya adalah :













Dibuat Oleh: 
-       Oki Victoria  (1310511038)     
-       Anggi Dwi Pangestu (1310511042)     
-       Rizky Andry Fariz K. (1310511054)     
-       Topan Maulana Pasya  (1310511057)    


                                                                                                                Pada kesempatan kali ini, untuk melengkapi tugas mata kuliah Sistem Operasi kami membuat sebuah program aplikasi menggunakan Visual Basic 6.0 untuk melakukan penjadwalan proses dengan metode First Come First Served.  

Langkah-langkah menjalankan program
-          1. Pertama-tama pilihlah nomor dari proses, bisa 2/3/4/5/6 proses yang akan dimasukkan dalam poroses penjadwalan cpu fcfs.
-          2. Lalu, klik command button OK untuk menampilkan kolom proses burst time dan arrival time.
-          3. Kemudian, masukkan angka yang ingin anda input kedalam kolom proses burst time ataupun arrival time.
-          4. Lalu klik command button KALKULASI untuk mendapatkan hasil nomor proses yang telah dijadwalkan.
-          5. Setelah selesai, Maka akan muncul hasil average waiting time dan average turn around time hasil dari nomor proses yang telah diinput tadi.
-          6. Jika Anda ingin menghitung ulang proses penjadwalan bisa dengan cara mengklik command button RESET, ataupun ingin keluar dari program bisa dengan cara mengklik command button KELUAR.


ScreenShoot Program







untuk mendapatkan source programnya dapat download di SINI
untuk melihat script kodingnya dapat dilihat di SINI
untuk mendapatkan program dalam bentuk exe. unduh di SINI

Terima Kasih. Salam Super.