Round Robin Schemaläggning Algoritm med exempel

⚡ Smart sammanfattning

Round-Robin-schemaläggning är den äldsta och enklaste preemptiva CPU-algoritmen, där varje färdig process körs under en fast tidsintervall i en cyklisk kö, vilket säkerställer rättvis och svältfri exekvering för multitasking.

  • 🔄 Definition: Varje färdig uppgift körs i tur och ordning under en fast tidsperiod.
  • ⏱️ Tidskvantum: CPU:n växlar processer efter ett fast intervall, tidskvantumet.
  • ⚖️ Rättvisa: Varje process får samma CPU-tid, vilket undviker svält.
  • 🧮 Förebyggande: En förberedd process flyttas till slutet av kön.
  • fördelar: Rättvis fördelning, ingen konvojeffekt, förutsägbar svarstid.
  • ⚠️ Nackdelar: Prestanda beror på tidskvantiteten och lägger till kontextväxlingsoverhead.

Round Robin Scheduling Algoritm

Vad är Round-Robin-schemaläggning?

Namnet på denna algoritm kommer från round-robin-principen, där varje person får en lika stor del av något i tur och ordning. Det är den äldsta, enklaste schemaläggningsalgoritmen, som mestadels används för multitasking.

I Round-robin-schemaläggning körs varje färdig uppgift tur för tur i en cyklisk kö under en begränsad tidsperiod. Denna algoritm erbjuder också svältfri exekvering av processer.

Kännetecken för Round-Robin-schemaläggning

Här är de viktiga egenskaperna hos Round-Robin Scheduling:

  • Round robin är en förebyggande algoritm.
  • CPU:n skiftas till nästa process efter ett fast tidsintervall, vilket kallas tidskvantum/tidsskiva.
  • Processen som förebyggs läggs till i slutet av kön.
  • Round robin är en hybridmodell som är klockdriven.
  • Tidsintervallet bör vara minimalt och tilldelas en specifik uppgift som behöver bearbetas. Det kan dock variera från operativsystem till operativsystem.
  • Det är en realtidsalgoritm som reagerar på händelser inom en viss tidsgräns.
  • Round robin är en av de äldsta, rättvisaste och enklaste algoritmerna.
  • Det är en vanligt förekommande schemaläggningsmetod i traditionella operativsystem.

Exempel på Round-robin-schemaläggning

Betrakta följande tre processer:

Processkö Sprängtid
P1 4
P2 3
P3 5

Round-robin Schemaläggning

Steg 1) Exekveringen börjar med process P1, som har bursttid 4. Här körs varje process i 2 sekunder. P2 och P3 står fortfarande i väntekön.

Round-robin Schemaläggning

Steg 2) Vid tidpunkten 2 läggs P1 till i slutet av kön och P2 börjar köras.

Round-robin Schemaläggning

Steg 3) Vid tidpunkten 4 preemptas P2 och läggs till i slutet av kön. P3 börjar exekveras.

Round-robin Schemaläggning

Steg 4) Vid tidpunkten 6 preemptas P3 och läggs till i slutet av kön. P1 börjar exekveras.

Round-robin Schemaläggning

Steg 5) Vid tidpunkten 8 har P1 en bursttid på 4. Den har slutfört exekveringen. P2 startar exekveringen.

Round-robin Schemaläggning

Steg 6) P2 har en bursttid på 3. Den har redan exekverats i 2 intervaller. Vid tidpunkten 9 slutför P2 exekveringen. Sedan börjar P3 exekveringen tills den är klar.

Round-robin Schemaläggning

Steg 7) Låt oss beräkna den genomsnittliga väntetiden för exemplet ovan.

Wait time
P1 = 0 + 4 = 4
P2 = 2 + 4 = 6
P3 = 4 + 3 = 7

Fördelar med Round-robin-schemaläggning

Här är fördelarna/nyttorna med Round-robin-schemaläggningsmetoden:

  • Den står inte inför problemen med svält eller konvojeffekt.
  • Alla jobb får en rättvis fördelning av CPU.
  • Den hanterar alla processer utan prioritering.
  • Om du vet det totala antalet processer i körkön kan du också anta den värsta svarstiden för samma process.
  • Denna schemaläggningsmetod är inte beroende av bursttid. Det är därför den är lätt att implementera i systemet.
  • När väl en process exekveras för en specifik uppsättning av perioden, är processen förebyggd, och en annan process körs för den givna tidsperioden.
  • Tillåter operativsystemet att använda kontextväxlingsmetoden för att spara tillstånd för förberedda processer.
  • Det ger den bästa prestandan när det gäller genomsnittlig svarstid.

Nackdelar med Round-robin Scheduling

Här är nackdelarna/nackdelarna med att använda Round-robin-schemaläggning:

  • Om operativsystemets slicingtid är låg kommer processorns utdata att minska.
  • Den här metoden lägger mer tid på kontextväxling.
  • Dess prestanda beror mycket på tidskvantum.
  • Det går inte att prioritera processerna.
  • Round-robin-schemaläggning prioriterar inte viktigare uppgifter särskilt.
  • Det minskar förståelsen.
  • En lägre tidskvantitet resulterar i högre kontextväxlingsoverhead i systemet.
  • Att hitta ett korrekt tidskvantum är en ganska svår uppgift i detta system.

Värsta fall latens

Denna term används för den maximala tiden det tar för att utföra alla uppgifter.

  • dt = Anger detekteringstid när en uppgift tas med i listan
  • st = Anger växlingstid från en uppgift till en annan
  • et = Anger uppgiftens körningstid

Formel:

Tworst = {(dti+ sti + eti ), + (dti+ sti + eti )2 +...+ (dti+ sti + eti )N., + (dti+ sti + eti  + eti) N} + tISR
tISR = sum of all execution times

Vanliga frågor

Tidskvantum, eller tidsintervall, är den fasta CPU-tid som varje process körs innan den förbereds. För stor beter sig som FCFS; för liten lägger till kraftig kontextväxlingsoverhead.

FCFS kör varje process till slutförande i ankomstordning och är inte preemptiv. Round Robin är preemptiv: den ger varje process en fast tidsintervall och cyklar genom kön, vilket förbättrar svarstiden och förhindrar att långa jobb blockerar andra.

Eftersom varje process placeras i en cyklisk kö och i tur och ordning får en fast tidsintervall. Ingen process hoppas över eller fördröjs på obestämd tid, så var och en får så småningom CPU-tid oavsett dess längd eller ankomstordning.

AI och maskininlärning kan förutsäga processbeteende och arbetsbelastningsmönster för att finjustera schemaläggningsbeslut i realtid. Istället för en fast policy kan systemet anpassa prioriteringar och tidsintervall dynamiskt, vilket förbättrar CPU-utnyttjande, dataflöde och svarstid.

Ja. AI-modeller kan analysera tidigare bursttider och systembelastning för att föreslå en optimal tidskvantitet och justera den när förhållandena förändras. Detta balanserar kontextväxlingskostnader mot svarstid bättre än ett enda fast värde.

Sammanfatta detta inlägg med: