FCFS-planlægningsalgoritme: Hvad er, eksempelprogram

Hvad er først til mølle-metoden?

Først til mølle (FCFS) er en styresystems planlægningsalgoritme, der automatisk udfører forespørgsler og processer i kø i rækkefølge efter deres ankomst. Det er den nemmeste og enkleste CPU-planlægningsalgoritme. I denne type algoritme får processer, der anmoder CPU'en først, CPU-allokeringen først. Dette styres med en FIFO-kø. Den fulde form for FCFS er først til mølle.

Når processen kommer ind i klarkøen, er dens PCB (Process Control Block) forbundet med køens hale, og når CPU'en bliver fri, bør den tildeles processen i begyndelsen af ​​køen.

Karakteristika for FCFS-metoden

  • Det understøtter ikke-forebyggende og forebyggende planlægningsalgoritme.
  • Opgaver udføres altid efter først-til-mølle-princippet.
  • Det er nemt at implementere og bruge.
  • Denne metode er dårlig i ydeevne, og den generelle ventetid er ret høj.

Eksempel på FCFS-planlægning

Et virkeligt eksempel på FCFS-metoden er at købe en biografbillet på billetskranken. I denne planlægningsalgoritme betjenes en person i henhold til kømåden. Den, der kommer først i køen, køber først billetten og derefter den næste. Dette fortsætter indtil den sidste person i køen køber billetten. Ved at bruge denne algoritme fungerer CPU-processen på en lignende måde.

Hvordan fungerer FCFS? Beregning af gennemsnitlig ventetid

Her er et eksempel på fem processer, der kommer på forskellige tidspunkter. Hver proces har en forskellig burst-tid.

Proces Burst tid Ankomsttid
P1 6 2
P2 2 5
P3 8 1
P4 3 0
P5 4 4

Ved at bruge FCFS-planlægningsalgoritmen håndteres disse processer som følger.

Trin 1) Processen begynder med P4, som har ankomsttid 0

FCFS fungerer

Trin 2) På tidspunktet=1 ankommer P3. P4 kører stadig. Derfor holdes P3 i en kø.

Proces Burst tid Ankomsttid
P1 6 2
P2 2 5
P3 8 1
P4 3 0
P5 4 4

FCFS fungerer

Trin 3) Ved tid = 2 ankommer P1 som holdes i køen.

Proces Burst tid Ankomsttid
P1 6 2
P2 2 5
P3 8 1
P4 3 0
P5 4 4

FCFS fungerer

Trin 4) På tidspunkt = 3 fuldfører P4-processen sin udførelse.

FCFS fungerer

Trin 5) Ved time=4 starter P3, som er først i køen, eksekveringen.

Proces Burst tid Ankomsttid
P1 6 2
P2 2 5
P3 8 1
P4 3 0
P5 4 4

FCFS fungerer

Trin 6) Ved tiden =5 ankommer P2, og den holdes i kø.

Proces Burst tid Ankomsttid
P1 6 2
P2 2 5
P3 8 1
P4 3 0
P5 4 4

FCFS fungerer

Trin 7) På tidspunkt 11 afslutter P3 sin udførelse.

FCFS fungerer

Trin 8) Ved tidspunkt = 11 starter P1 udførelse. Den har en burst-tid på 6. Den afslutter udførelsen med tidsinterval 17

FCFS fungerer

Trin 9) Ved tid=17 starter P5 udførelse. Den har en burst-tid på 4. Den fuldfører eksekveringen på time=21

FCFS fungerer

Trin 10) Ved tidspunkt = 21 starter P2 udførelse. Den har en burst-tid på 2. Den afslutter udførelsen med tidsinterval 23

FCFS fungerer

Trin 11) Lad os beregne den gennemsnitlige ventetid for ovenstående eksempel.

FCFS fungerer

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

Gennemsnitlig ventetid

FCFS fungerer
= 40/5= 8

Fordele ved FCFS

Her er fordele/fordele ved at bruge FCFS planlægningsalgoritme:

Ulemper ved FCFS

Her er ulemper/ulemper ved at bruge FCFS-planlægningsalgoritme:

  • Det er en ikke-forebyggende CPU-planlægningsalgoritme, så efter at processen er blevet allokeret til CPU'en, vil den aldrig frigive CPU'en, før den er færdig med at udføre.
  • Den gennemsnitlige ventetid er høj.
  • Korte processer, der står bagerst i køen, må vente på, at den lange proces forrest er færdig.
  • Ikke en ideel teknik til tidsdelingssystemer.
  • På grund af sin enkelhed er FCFS ikke særlig effektiv.

Resumé

  • Definition: FCFS er et operativsystem planlægningsalgoritme, der automatisk udfører forespørgsler og processer i kø efter deres ankomst
  • Det understøtter ikke-forebyggende og forebyggende planlægning
  • algoritme.
  • FCFS står for først til mølle
  • Et virkeligt eksempel på FCFS-metoden er at købe en biografbillet på billetskranken.
  • Det er den enkleste form for en CPU-planlægningsalgoritme
  • Det er en ikke-forebyggende CPU-planlægningsalgoritme, så efter at processen er blevet allokeret til CPU'en, vil den aldrig frigive CPU'en, før den er færdig med at udføre.