FCFS schemaläggningsalgoritm: Vad är, exempelprogram

Vad är först till kvarn-metoden?

Först till kvarn gäller (FCFS) är en schemaläggningsalgoritm för operativsystem som automatiskt kör förfrågningar och processer i kö i ordning efter ankomst. Det är den enklaste och enklaste CPU-schemaläggningsalgoritmen. I denna typ av algoritm får processer som begär processorn först processortilldelningen först. Detta hanteras med en FIFO-kö. Den fullständiga formen av FCFS är först till kvarn som gäller.

När processen går in i den färdiga kön, länkas dess PCB (Process Control Block) med köns svans och, när CPU:n blir ledig, bör den tilldelas processen i början av kön.

Egenskaper för FCFS-metoden

  • Den stöder icke-förebyggande och förebyggande schemaläggningsalgoritmer.
  • Jobb utförs alltid enligt först till kvarn-principen.
  • Det är lätt att implementera och använda.
  • Denna metod har dålig prestanda och den allmänna väntetiden är ganska lång.

Exempel på FCFS-schemaläggning

Ett verkligt exempel på FCFS-metoden är att köpa en biobiljett på biljettdisken. I denna schemaläggningsalgoritm betjänas en person enligt kösättet. Den som kommer först i kön köper först biljetten och sedan nästa. Detta kommer att fortsätta tills den sista personen i kön köper biljetten. Med denna algoritm fungerar CPU-processen på liknande sätt.

Hur fungerar FCFS? Beräknar genomsnittlig väntetid

Här är ett exempel på fem processer som kommer vid olika tidpunkter. Varje process har olika sprängtider.

Behandla Sprängtid Ankomst tid
P1 6 2
P2 2 5
P3 8 1
P4 3 0
P5 4 4

Genom att använda FCFS-schemaläggningsalgoritmen hanteras dessa processer enligt följande.

Steg 1) Processen börjar med P4 som har ankomsttid 0

FCFS fungerar

Steg 2) Klockan=1 kommer P3. P4 körs fortfarande. Därför hålls P3 i en kö.

Behandla Sprängtid Ankomst tid
P1 6 2
P2 2 5
P3 8 1
P4 3 0
P5 4 4

FCFS fungerar

Steg 3) Vid tid = 2 kommer P1 som hålls i kön.

Behandla Sprängtid Ankomst tid
P1 6 2
P2 2 5
P3 8 1
P4 3 0
P5 4 4

FCFS fungerar

Steg 4) Vid tidpunkten=3 slutför P4-processen sin exekvering.

FCFS fungerar

Steg 5) Vid tidpunkten=4 startar P3, som är först i kön, exekvering.

Behandla Sprängtid Ankomst tid
P1 6 2
P2 2 5
P3 8 1
P4 3 0
P5 4 4

FCFS fungerar

Steg 6) Vid tiden =5 anländer P2, och den hålls i kö.

Behandla Sprängtid Ankomst tid
P1 6 2
P2 2 5
P3 8 1
P4 3 0
P5 4 4

FCFS fungerar

Steg 7) Vid tidpunkten 11 slutför P3 sitt exekvering.

FCFS fungerar

Steg 8) Vid tidpunkten=11 startar P1 exekvering. Den har en skurtid på 6. Den avslutar exekveringen vid tidsintervall 17

FCFS fungerar

Steg 9) Vid tidpunkten=17 startar P5 exekvering. Den har en skurtid på 4. Den slutför exekveringen vid tidpunkten=21

FCFS fungerar

Steg 10) Vid tidpunkten=21 startar P2 exekvering. Den har en skurtid på 2. Den avslutar exekveringen vid tidsintervall 23

FCFS fungerar

Steg 11) Låt oss beräkna den genomsnittliga väntetiden för ovanstående exempel.

FCFS fungerar

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

Genomsnittlig väntetid

FCFS fungerar
= 40/5= 8

Fördelar med FCFS

Här är fördelar/fördelar med att använda FCFS schemaläggningsalgoritm:

Nackdelar med FCFS

Här är nackdelar/nackdelar med att använda FCFS schemaläggningsalgoritm:

  • Det är en icke-förebyggande CPU-schemaläggningsalgoritm, så efter att processen har allokerats till CPU:n kommer den aldrig att släppa CPU:n förrän den är klar.
  • Den genomsnittliga väntetiden är hög.
  • Korta processer som ligger längst bak i kön får vänta på att den långa processen längst fram ska avslutas.
  • Inte en idealisk teknik för tidsdelningssystem.
  • På grund av sin enkelhet är FCFS inte särskilt effektivt.

Sammanfattning

  • Definition: FCFS är en schemaläggningsalgoritm för operativsystem som automatiskt kör förfrågningar och processer i kö efter ankomst
  • Den stöder icke-förebyggande och förebyggande schemaläggning
  • algoritm.
  • FCFS står för först till kvarn som gäller
  • Ett verkligt exempel på FCFS-metoden är att köpa en biobiljett på biljettdisken.
  • Det är den enklaste formen av en CPU-schemaläggningsalgoritm
  • Det är en icke-förebyggande CPU-schemaläggningsalgoritm, så efter att processen har allokerats till CPU:n kommer den aldrig att släppa CPU:n förrän den är klar.