Algoritma Penjadualan FCFS: Apa itu, Contoh Program

Isi kandungan:

Anonim

Apakah Kaedah Servis First Come First?

First Come First Serve (FCFS) adalah algoritma penjadualan sistem operasi yang secara automatik melaksanakan permintaan dan proses beratur mengikut urutan kedatangan mereka. Ini adalah algoritma penjadualan CPU yang paling mudah dan sederhana. Dalam jenis algoritma ini, proses yang meminta CPU mendapatkan peruntukan CPU terlebih dahulu. Ini diuruskan dengan barisan FIFO. Bentuk penuh FCFS adalah First Come First Serve.

Ketika proses memasuki antrian siap, PCBnya (Proses Kawalan Blok) dihubungkan dengan ekor barisan dan, ketika CPU menjadi bebas, proses tersebut harus ditugaskan untuk proses pada awal antrian.

Dalam tutorial sistem operasi ini, anda akan belajar:

  • Apakah Kaedah Servis First Come First?
  • Ciri-ciri kaedah FCFS
  • Contoh penjadualan FCFS
  • Bagaimana FCFS Berfungsi? Mengira Purata Waktu Menunggu
  • Kelebihan FCFS
  • Kekurangan FCFS

Ciri-ciri kaedah FCFS

  • Ia menyokong algoritma penjadualan bukan preemptive dan pre-emptive.
  • Pekerjaan selalu dilaksanakan berdasarkan 'first-come, first-melayani'.
  • Ia mudah dilaksanakan dan digunakan.
  • Kaedah ini berprestasi rendah, dan masa menunggu umum cukup tinggi.

Contoh penjadualan FCFS

Contoh sebenar kaedah FCFS adalah membeli tiket filem di kaunter tiket. Dalam algoritma penjadualan ini, seseorang dilayan mengikut cara beratur. Orang yang tiba di barisan pertama membeli tiket dan kemudian yang seterusnya. Ini akan berterusan sehingga orang terakhir dalam barisan membeli tiket. Dengan menggunakan algoritma ini, proses CPU berfungsi dengan cara yang serupa.

Bagaimana FCFS Berfungsi? Mengira Purata Waktu Menunggu

Berikut adalah contoh lima proses yang tiba pada masa yang berlainan. Setiap proses mempunyai masa pecah yang berbeza.

Proses Masa pecah Masa ketibaan
P1 6 2
P2 3 5
P3 8 1
P4 3 0
P5 4 4

Dengan menggunakan algoritma penjadualan FCFS, proses ini dikendalikan seperti berikut.

Langkah 0) Proses bermula dengan P4 yang mempunyai waktu ketibaan 0

Langkah 1) Pada masa = 1, P3 tiba. P4 masih dijalankan. Oleh itu, P3 disimpan dalam barisan.

Proses Masa pecah Masa ketibaan
P1 6 2
P2 3 5
P3 8 1
P4 3 0
P5 4 4

Langkah 2) Pada masa = 2, P1 tiba yang disimpan dalam barisan.

Proses Masa pecah Masa ketibaan
P1 6 2
P2 3 5
P3 8 1
P4 3 0
P5 4 4

Langkah 3) Pada masa = 3, proses P4 menyelesaikan pelaksanaannya.

Langkah 4) Pada masa = 4, P3, yang pertama dalam barisan, memulakan pelaksanaan.

Proses Masa pecah Masa ketibaan
P1 6 2
P2 3 5
P3 8 1
P4 3 0
P5 4 4

Langkah 5) Pada masa = 5, P2 tiba, dan disimpan dalam barisan.

Proses Masa pecah Masa ketibaan
P1 6 2
P2 3 5
P3 8 1
P4 3 0
P5 4 4

Langkah 6) Pada waktu 11, P3 menyelesaikan pelaksanaannya.

Langkah 7) Pada masa = 11, P1 memulakan pelaksanaan. Ia mempunyai waktu pecah 6. Melengkapkan pelaksanaan pada selang waktu 17

Langkah 8) Pada masa = 17, P5 memulakan pelaksanaan. Ia mempunyai masa pecah 4. Ia menyelesaikan pelaksanaan pada waktu = 21

Langkah 9) Pada masa = 21, P2 memulakan pelaksanaan. Ia mempunyai masa pecah 2. Melengkapkan pelaksanaan pada selang waktu 23

Langkah 10) Mari kita mengira purata masa menunggu untuk contoh di atas.

Waiting time = Start time - Arrival time

P4 = 0-0 = 0

P3 = 3-1 = 2

PI = 11-2 = 9

P5 = 17-4 = 13

P2 = 21-5 = 16

Masa Menunggu Purata

= 40/5 = 8

Kelebihan FCFS

Berikut adalah kebaikan / faedah menggunakan algoritma penjadualan FCFS:

  • Bentuk termudah dari algoritma penjadualan CPU
  • Mudah diprogramkan
  • First come first serve

Kekurangan FCFS

Berikut, terdapat kekurangan / kekurangan penggunaan algoritma penjadualan FCFS:

  • Ini adalah algoritma penjadualan CPU Non-Preemptive, jadi setelah prosesnya dialokasikan ke CPU, CPU tidak akan pernah melepaskan CPU sampai selesai dijalankan.
  • Purata Waktu Menunggu adalah tinggi.
  • Proses pendek yang berada di belakang barisan perlu menunggu proses panjang di bahagian depan selesai.
  • Bukan teknik yang sesuai untuk sistem perkongsian masa.
  • Kerana kesederhanaannya, FCFS tidak begitu cekap.

Ringkasan:

  • Definisi: FCFS adalah algoritma penjadualan sistem operasi yang secara automatik melaksanakan permintaan dan proses beratur mengikut urutan kedatangan mereka
  • Ia menyokong penjadualan bukan preemptive dan pre-emptive
  • algoritma.
  • FCFS bermaksud First Come First Serve
  • Contoh sebenar kaedah FCFS adalah membeli tiket filem di kaunter tiket.
  • Ini adalah bentuk termudah dari algoritma penjadualan CPU
  • Ini adalah algoritma penjadualan CPU Non-Preemptive, jadi setelah prosesnya dialokasikan ke CPU, CPU tidak akan pernah melepaskan CPU sampai selesai dijalankan.