En prosess er et program i utførelse. En datamaskin skal utføre mange oppgaver på samme tid. Derfor bør CPUen få prosesser og utføre dem. Noen ganger er det nødvendig å utføre noen prosesser enn de andre prosessene. På det tidspunkt avbrytes løpingsprosessen, og CPU er allokert til den nye prosessen. Etter at oppgaven er fullført, blir CPU allokert tilbake til forrige prosess. Planleggingen i henhold til denne mekanismen er kjent som preemptive planlegging. Hvis løpeprosessen ikke kan avbrytes, og det er obligatorisk å utføre løpeprosessen, så er det kjent som uforutsigbar planlegging. Denne artikkelen diskuterer forskjellen mellom preemptive og nonpreemptive planlegging i et operativsystem. Preemptive scheduling er prosessplanleggingsmekanismen, der en prosess som kan avbrytes av en annen prosess i midten av utførelsen. Den ikke-fristende planleggingen er prosessplanleggingsmekanismen gjennom hvilken en prosess starter utførelse bare etter at forrige prosess avsluttes. Det er det nøkkelforskjell mellom Preemptive og Nonpreemptive Scheduling i OS.
1. Oversikt og nøkkelforskjell
2. Hva er Preemptive Scheduling i OS
3. Hva er ikke-forebyggende planlegging i OS
4. Likheter mellom Preemptive og Nonpreemptive Scheduling i OS
5. Side ved side sammenligning - Preemptive vs Nonpreemptive Scheduling i OS i Tabular Form
6. Sammendrag
Round Robin Scheduling er et eksempel på preemptive planlegging. Hver prosess får en liten mengde CPU-tid. Det er vanligvis 10 til 100 millisekunder. Denne lille dataenheten er også kjent som tidskvantum. Etter at denne tiden er gått, blir prosessen preempted og lagt til slutten av klar køen. Anta at det er 4 prosesser som P1, P2, P3 og P4. CPU-bristetidene i millisekunder er som følger. Tidskvantum er 20.
Figur 01: Eksempel på Round Robin Planlegging
P1-prosessen utføres til 20. Det er en annen 33ms igjen. Så utfører P2. Da tiden kvantum er 20 og den nødvendige tiden P2 er 17ms, vil P2 utføre for 17ms. Så, P2 prosessen er fullført. Deretter er sjansen gitt til P3. Det vil utføre for 20ms. Resten er 48ms. Da vil P4 kjøres for 20ms. Det har 4ms å fullføre den totale prosessen. Igjen, vil P1 kjøre for 20ms. Det har en annen 13ms å fullføre prosessen. Endringen er gitt til P3. Den vil utføre for 20ms, og den har en annen 28ms å fullføre helt. P4 kjører. Den har bare 4ms. Derfor fullfører P4 utførelsen. P2 og P4 er allerede ferdig. De gjenværende prosessene er P1 og P3. Sjansen er gitt til P3. Det hadde 13ms å fullføre, så det fullfører. Nå er den eneste gjenværende prosessen P3. Den har 28ms å fullføre. Så P3 vil løpe for 20ms. Resten er 8m. Alle andre prosesser har allerede fullført utførelsen. Derfor vil resten av 8ms av P3 igjen utføres. På samme måte får hver prosess en sjanse til å utføre.
First Come First Served (FCFS) planlegging kan tas som et eksempel på ikke-fristende planlegging. Prosessen som ber om først blir tildelt CPUen først. Denne planleggingen kan enkelt administreres av køen Første i første utgang (FIFO). Hvis det er prosesser kom i orden som P1, P2 og P3, blir sjansen først gitt til P1. Etter at det er fullført, vil P2 utføre. Når P2 er ferdig, vil P3 utføre. Anta at det er 3 prosesser som P1, P2 og P3 med CPU burst ganger i millisekunder som følger.
Figur 02: Eksempel på FCFS-planlegging
I henhold til ovenstående vil P1 utføre. Når den er fullført, utføres prosessen P2 for 3ms. Nå er gjenværende prosess P3. Så vil den utføre. Ventetiden for P1 er null. Prosessen P2 måtte vente 24ms, og prosessen P3 måtte vente 27ms. Hvis prosessene ankom i rekkefølge P2, P3 og P1, vil P2 fullføre først. Neste P3 vil fullføre, og til slutt vil P1 fullføre.
Preemptive vs Nonpreemmive Scheduling i OS | |
Preemptive scheduling er prosessplanleggingsmekanismen gjennom hvilken en prosess kan avbrytes av en annen prosess i midten av dens utførelse. | Den ikke-fristende planleggingen er prosessplanleggingsmekanismen gjennom hvilken en prosess starter utførelse bare etter at forrige prosess avsluttes. |
Prosessavbrudd | |
I forebyggende planlegging kan prosessene avbrytes. | Ved ikke-fristende planlegging kan prosessene avbrytes. |
CPU Utnyttelse | |
I preemptive planlegging er CPU-utnyttelsen høyere enn ikke-planlagt planlegging. | Ved ikke-fristende planlegging er CPU-utnyttelsen minimal sammenlignet med preemptive planlegging. |
fleksibilitet | |
Preemptive planlegging er fleksibel. | Nonpreemptive planlegging er ikke fleksibel. |
Det er flere prosesser som kjører på en datamaskin. Når hver prosess utføres, blir CPU allokert til den spesifikke prosessen. Noen ganger er det nødvendig å stoppe gjennomføringen av den nåværende prosessen og å prioritere en annen prosess. Prosesser planlegging mekanismer kan være preemptive eller nonpreemptive. Preemptive scheduling er prosessplanleggingsmekanismen gjennom hvilken prosess kan avbrytes av en annen prosess i midten av dens utførelse. Den ikke-eksisterende planleggingen er prosessplanleggingsmekanismen, men hvilken prosess starter bare etter at den foregående prosessen avsluttes. Dette er forskjellen mellom Preemptive og Nonpreemptive Scheduling i OS.
Du kan laste ned PDF-versjonen av denne artikkelen og bruke den til nettbasert bruk som per sitatnotat. Vennligst last ned PDF-versjonen her: Forskjellen mellom Preemptive og Nonpreemptive Scheduling i OS
1. Hva er pre-Emptive og non-Preemptive planlegging?. Tilgjengelig her
2.Point, opplæringsprogrammer. "Operativsystem Planlegging algoritmer.", Tutorials Point. 8. januar 2018. Tilgjengelig her
3. "Hva er pre-Emptive og non-Preemptive vilkår i sammenheng med OS?" GeeksforGeeks Q & A. Tilgjengelig her