Animasi

https://davitsep.blogspot.com/2019/05/kumpulan-soal-animasi-2-dimensi.html

Source Code C++ ALGORITMA FIFO (First In First Out) pada penjadwalan Processor

Penjadwalan merupakan kumpulan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan oleh sistem komputer. Penjadwalan bertugas memutuskan proses yang harus berjalan dan kapan atau berapa lama proses itu berjalan.

Pada artikel ini penulis akan menjelaskan salah satu algoritma penjadwalan prosesor, yaitu algoritma FIFO (First In First Out). algoritma ini memprioritaskan proses yang terlebih dahulu masuk sampai selesai, kemudian sistem akan memproses proses yang masuk setelahnya, dan seterusnya sampai proses habis.

Pada algoritma ini, bisa dianalogikan seperti saat kita antri pada saat ingin membayar di kasir minimarket. Transaksi yang akan dilayani pertama kali oleh kasir adalah yang pertama kali mengantri, setelah selesai melakukan pembayaran, selanjutnya akan dilayani transaksi selanjutnya, begitu seterusnya sampai antrian di kasir habis. Jadi algoritma ini tidak memprioritaskan antrian dengan kriteria tertentu.

Di algoritma penjadwalan Prosesor, ada istilah CPU Burst Time, yaitu lama waktu kerja CPU dalam setiap proses. Kemudian ada AWT atau Average Waiting Time merupakan rata-rata waktu tunggu setiap proses. Selanjutnya ada Turn Around Time, merupakan waktu penyelesaian setiap proses dalam penjadwalan.

Misal sebuah job merupakan proses yang pertama kali di proses oleh sistem, dan job tersebut memiliki Burst Time selama 24 milidetik, maka Waiting time nya adalah 0 dan Waktu Penyelesaian nya adalah 24. Lebih jelasnya lagi akan saya jelaskan menggunakan program dengan Bahasa C++.

Pada saat menjalankan program, kita harus menginputkan berapa banyak job yang akan diproses. Di sini saya menginputkan 4, berarti aka nada 4 proses dengan masing-masing proses Bernama p1, p2, p3, dan p4. Keempat proses ini akan diproses oleh sistem secara urut dari yang pertama kali di inputkan dengan burst time nya seperti pada gambar. Maka table prosesnya seberti di bawah ini.



Karena semua proses memiliki time arrival 0, maka setiap proses yang didepannya selesai akan langsung memproses job tersebut. Kemudian untuk waiting time setiap proses perhitungannya seperti ini :

P1 merupakan proses pertama dan time arrival 0, berarti waktu tunggu untuk sistem memproses proses tersebut adalah 0. Maka waiting time nya adalah 0.

P2 dijalankan setelah p1 selesai, sedangkan p1 memiliki burst time sebanyak 24 milisecond. Sehingga p2 akan dijalankan setelah 24 milisecond. Waiting time nya adalah 24.

P3 dijalankan setelah p2 selesai. Untuk waiting time nya berarti adalah 24 ditambah dengan 3, yaitu 27.

P4 dijalankan setelah p1, p2, dan p3 selesai. Maka waiting time nya adalah waiting time p3 ditambah burst time p3 yaitu 3. Berarti 27 + 3 = 30.



Untuk perhitungan Turn Around nya, merupakan kapan waktu setiap proses akan selesai diproses oleh sistem.

Contohnya p1 akan selesai setelah 24 milisecond, p2 selesai saat p1 selesai ditambah burst time p2 yaitu 3. Berarti 24 + 3 = 27. Dan seterusnya. Dapat dilihat pada table gambar di atas.

Selanjutnya untuk Gantt Cart dan perhitungan rata-rata Waiting Time dapat dilihat pada gambar di bawah.


  Untuk Source Code Program Algoritma FIFO menggunakan bahasa C++ dapat dilihat di bawah ini :


0 comments:

Post a Comment