FCFS algoritam raspoređivanja: što je, primjer programa
Što je metoda "prvi dođe prvi posluži"?
Prvi dođe prvi posluži (FCFS) je algoritam za raspoređivanje operativnog sustava koji automatski izvršava zahtjeve u redu čekanja i procese redoslijedom njihovog dolaska. To je najlakši i najjednostavniji CPU algoritam za raspoređivanje. U ovoj vrsti algoritma, procesi koji prvi zatraže CPU prvi dobivaju CPU alokaciju. Ovim se upravlja pomoću FIFO reda čekanja. Puni oblik FCFS-a je First Come First Serve.
Kako proces ulazi u red čekanja, njegov PCB (Process Control Block) je povezan s repom reda i, kada se CPU oslobodi, trebao bi biti dodijeljen procesu na početku reda.
Karakteristike FCFS metode
- Podržava ne-preemptivni i preventivni algoritam raspoređivanja.
- Poslovi se uvijek izvršavaju po načelu tko prvi dođe, prvi poslužen.
- Jednostavan je za implementaciju i korištenje.
- Ova metoda ima lošu izvedbu, a općenito vrijeme čekanja je prilično dugo.
Primjer FCFS rasporeda
Primjer FCFS metode iz stvarnog života je kupnja ulaznice za kino na blagajni. U ovom algoritmu raspoređivanja, osoba se poslužuje prema redu čekanja. Onaj tko prvi dođe u red prvi kupuje kartu, a zatim sljedeći. To će se nastaviti sve dok posljednja osoba u redu ne kupi kartu. Koristeći ovaj algoritam, CPU proces radi na sličan način.
Kako radi FCFS? Izračunavanje prosječnog vremena čekanja
Ovdje je primjer pet procesa koji stižu u različito vrijeme. Svaki proces ima drugačije vrijeme praska.
Proces | Vrijeme praska | Vrijeme dolaska |
---|---|---|
P1 | 6 | 2 |
P2 | 2 | 5 |
P3 | 8 | 1 |
P4 | 3 | 0 |
P5 | 4 | 4 |
Korištenjem FCFS algoritma za raspoređivanje, ovim se procesima rukuje na sljedeći način.
Korak 1) Proces počinje s P4 koji ima vrijeme dolaska 0
Korak 2) U vrijeme=1, stiže P3. P4 se još uvijek izvršava. Stoga se P3 drži u redu čekanja.
Proces | Vrijeme praska | Vrijeme dolaska |
---|---|---|
P1 | 6 | 2 |
P2 | 2 | 5 |
P3 | 8 | 1 |
P4 | 3 | 0 |
P5 | 4 | 4 |
Korak 3) U trenutku = 2, stiže P1 koji ostaje u redu čekanja.
Proces | Vrijeme praska | Vrijeme dolaska |
---|---|---|
P1 | 6 | 2 |
P2 | 2 | 5 |
P3 | 8 | 1 |
P4 | 3 | 0 |
P5 | 4 | 4 |
Korak 4) U trenutku = 3, proces P4 završava svoje izvršenje.
Korak 5) U trenutku = 4, P3, koji je prvi u redu čekanja, počinje izvršenje.
Proces | Vrijeme praska | Vrijeme dolaska |
---|---|---|
P1 | 6 | 2 |
P2 | 2 | 5 |
P3 | 8 | 1 |
P4 | 3 | 0 |
P5 | 4 | 4 |
Korak 6) U trenutku =5, P2 stiže i zadržava se u redu čekanja.
Proces | Vrijeme praska | Vrijeme dolaska |
---|---|---|
P1 | 6 | 2 |
P2 | 2 | 5 |
P3 | 8 | 1 |
P4 | 3 | 0 |
P5 | 4 | 4 |
Korak 7) U trenutku 11, P3 završava svoje izvršenje.
Korak 8) U trenutku = 11, P1 počinje izvršavanje. Ima vrijeme praska od 6. Završava izvršenje u vremenskom intervalu 17
Korak 9) U trenutku = 17, P5 počinje izvršavanje. Ima vrijeme praska od 4. Završava izvršenje u vrijeme=21
Korak 10) U trenutku = 21, P2 počinje izvršavanje. Ima vrijeme praska od 2. Završava izvršenje u vremenskom intervalu 23
Korak 11) Izračunajmo prosječno vrijeme čekanja za gornji primjer.
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
Prosječno vrijeme čekanja
Prednosti FCFS-a
Ovdje su prednosti/prednosti korištenja FCFS algoritma za zakazivanje:
- Najjednostavniji oblik a CPU algoritam raspoređivanja
- Jednostavno programiranje
- Prvi dodje prvi je posluzen
Nedostaci FCFS-a
Ovdje su mane/nedostaci korištenja FCFS algoritma za zakazivanje:
- To je algoritam za raspoređivanje CPU-a bez preemptive, tako da nakon što je proces dodijeljen CPU-u, nikada neće otpustiti CPU dok ne završi s izvođenjem.
- Prosječno vrijeme čekanja je visoko.
- Kratki procesi koji su na začelju reda čekanja moraju čekati da dugi proces na početku završi.
- Nije idealna tehnika za sustave dijeljenja vremena.
- Zbog svoje jednostavnosti, FCFS nije vrlo učinkovit.
rezime
- Definicija: FCFS je algoritam za raspoređivanje operativnog sustava koji automatski izvršava zahtjeve u redu čekanja i procese prema redoslijedu njihovog dolaska
- Podržava ne-preemptivno i preventivno raspoređivanje
- algoritam.
- FCFS je kratica za First Come First Serve
- Primjer FCFS metode iz stvarnog života je kupnja ulaznice za kino na blagajni.
- To je najjednostavniji oblik CPU algoritma za raspoređivanje
- To je algoritam za raspoređivanje CPU-a bez preemptive, tako da nakon što je proces dodijeljen CPU-u, nikada neće otpustiti CPU dok ne završi s izvođenjem.