Skillnad mellan Preemptive och Nonpreemptive Scheduling i OS

Huvudskillnad - Preemptive vs icke-förebyggande schemaläggning i operativsystemet
 

En process är ett program i körning. En dator ska utföra många uppgifter samtidigt. Därför bör CPUen få processer och genomföra dem. Ibland är det nödvändigt att utföra vissa processer än de andra processerna. Vid den tiden avbryts körprocessen och CPU tilldelas den nya processen. När uppgiften är klar tilldelas CPU-enheten tillbaka till föregående process. Schemaläggningen enligt denna mekanism är känd som förebyggande schemaläggning. Om körprocessen inte kan avbrytas och det är obligatoriskt att genomföra körprocessen, är det känt som icke-förebyggande schemaläggning. I denna artikel diskuteras skillnaden mellan förebyggande och icke-förebyggande schemaläggning i ett operativsystem. Preemptive scheduling är processplaneringsmekanismen genom vilken en process som kan avbrytas av en annan process i mitten av dess utförande. Den icke-förebyggande schemaläggningen är processplaneringsmekanismen genom vilken en process börjar exekvering först efter det att den tidigare processen avslutats. Det är nyckelskillnad mellan Preemptive och Nonpreemptive Scheduling i OS.

INNEHÅLL

1. Översikt och nyckelskillnad
2. Vad är Preemptive Scheduling i OS
3. Vad är icke-förebyggande schemaläggning i operativsystemet
4. Likheter mellan Preemptive och Nonpreemptive Scheduling i OS
5. Jämförelse vid sida vid sida - Preemptive vs Nonpreemptive Scheduling i OS i Tabular Form
6. Sammanfattning

Vad är Preemptive Scheduling i OS?

Round Robin Scheduling är ett exempel på förebyggande schemaläggning. Varje process får en liten mängd CPU-tid. Det är vanligtvis 10 till 100 millisekunder. Denna lilla dataenhet är också känd som tidskvantum. Efter denna tid har förflutit, förbehålls processen och läggs till i slutet av färdkön. Antag att det finns 4 processer som P1, P2, P3 och P4. CPU-bursttiden i millisekunder är som följer. Tidskvoten är 20.

Figur 01: Exempel på Round Robin Scheduling

P1-processen körs till 20. Det finns ytterligare 33ms kvar. Då exekverar P2. Eftersom tidskvoten är 20 och den erforderliga tiden P2 är 17ms, kommer P2 att utföras för 17ms. Så, P2-processen är klar. Då ges chansen till P3. Det kommer att utföras för 20ms. Resten är 48ms. Då kommer P4 att utföras i 20ms. Det har 4ms att slutföra den totala processen. Återigen kommer P1 att utföras i 20ms. Det har ytterligare 13ms att slutföra processen. Förändringen ges till P3. Det kommer att utföras för 20ms, och det har ytterligare 28ms att slutföra helt. P4 körs. Den har bara 4ms. Därför slutför P4 utförandet. P2 och P4 har redan slutförts. De återstående processerna är P1 och P3. Chansen ges till P3. Det hade 13ms att slutföra, så det slutfördes. Nu är den enda återstående processen P3. Den har 28ms att slutföra. Så P3 kommer att springa för 20ms. Resten är 8ms. Alla andra processer har redan genomfört genomförandet. Därför kommer resten av 8ms av P3 igen att utföras. På samma sätt får varje process en chans att utföra.

Vad är icke-förebyggande schemaläggning i operativsystemet?

First Come First Served (FCFS) schemaläggning kan tas som ett exempel på icke-förebyggande schemaläggning. Processen som begärs först tilldelas CPU först. Denna schemaläggning hanteras enkelt av köpet första i första ut (FIFO). Om det finns processer kom i ordning som P1, P2 och P3, så ges chansen först till P1. När det är klart kommer P2 att utföras. När P2 slutförts, kommer P3 att utföras. Antag att det finns 3 processer som P1, P2 och P3 med CPU-utbrottstider i millisekunder enligt följande.

Figur 02: Exempel på FCFS-planering

Enligt ovanstående kommer P1 att utföras. När det är klart körs processen P2 för 3ms. Nu är återstående process P3. Då kommer det att utföras. Väntetiden för P1 är noll. Processen P2 måste vänta 24ms, och processen P3 måste vänta 27ms. Om processerna kom till ordning P2, P3 och P1 kommer P2 att slutföra först. Nästa P3 kommer att slutföra, och slutligen kommer P1 att slutföra.

Vad är likheten mellan Preemptive och Nonpreemptive Scheduling i OS?

  • Både Preemptive och Nonpreemptive Scheduling i OS är mekanismer för att schemalägga processer i en dator.

Vad är skillnaden mellan Preemptive och Nonpreemptive Scheduling i OS?

Preemptive vs Nonprepreive Scheduling i OS

Preemptive scheduling är processplaneringsmekanismen genom vilken en process kan avbrytas av en annan process i mitten av dess utförande. Den icke-förebyggande schemaläggningen är processplaneringsmekanismen genom vilken en process börjar exekvering först efter det att den tidigare processen avslutats.
 Processavbrott
Vid förebyggande schemaläggning kan processerna avbrytas. Vid icke-förebyggande schemaläggning kan processerna avbrytas.
CPU Utnyttjande
Vid förebyggande schemaläggning är CPU-utnyttjandet högre än icke-förebyggande schemaläggning. Vid icke-förebyggande schemaläggning är CPU-utnyttjandet minimalt jämfört med förebyggande schemaläggning.
 Flexibilitet
Preemptive schemaläggning är flexibel. Icke-förebyggande schemaläggning är inte flexibel.

Sammanfattning - Preemptive vs icke-förebyggande schemaläggning i operativsystemet 

Det finns flera processer som körs på en dator. När varje process körs, tilldelas CPU till den specifika processen. Ibland är det nödvändigt att stoppa genomförandet av den aktuella processen och att prioritera en annan process. Processer schemaläggningsmekanismer kan vara förebyggande eller icke-förebyggande. Preemptive scheduling är processplaneringsmekanismen genom vilken process kan avbrytas av en annan process i mitten av dess utförande. Den icke-förebyggande schemaläggningen är processplaneringsmekanismen, men vilken process startar exekveringen först efter det att den tidigare processen avslutats. Detta är skillnaden mellan Preemptive och Nonpreemptive Scheduling i OS.

Ladda ner PDF-filen för Preemptive vs Nonpreemptive Scheduling i OS

Du kan ladda ner PDF-versionen av den här artikeln och använda den för offline-ändamål enligt citationsnotat. Var god ladda ner PDF-versionen här: Skillnad mellan förebyggande och icke-förebyggande schemaläggning i OS

Referens:

1. Vad är pre-Emptive och non-Preemptive schemaläggning?. Tillgänglig här  
2.Point, handledning. "Schemaläggningsalgoritmer för operativsystemet.", Tutorials Point. 8 jan 2018. Tillgänglig här 
3. "Vad är pre-Emptive och non-Preemptive termer inom ramen för OS?" GeeksforGeeks Q & A. Tillgänglig här