Forskjellen mellom forebyggende og ikke-preemptive planlegging i OS

Innholdsfortegnelse:

Forskjellen mellom forebyggende og ikke-preemptive planlegging i OS
Forskjellen mellom forebyggende og ikke-preemptive planlegging i OS

Video: Forskjellen mellom forebyggende og ikke-preemptive planlegging i OS

Video: Forskjellen mellom forebyggende og ikke-preemptive planlegging i OS
Video: DON'T PANIC — Hans Rosling showing the facts about population 2024, Desember
Anonim

Nøkkelforskjell – forebyggende vs ikke-forebyggende planlegging i OS

En prosess er et program som kjøres. En datamaskin skal utføre mange oppgaver samtidig. Derfor bør CPU få prosesser og utføre dem. Noen ganger er det nødvendig å utføre noen prosesser enn de andre prosessene. På det tidspunktet blir den kjørende prosessen avbrutt, og CPU allokeres til den nye prosessen. Etter at oppgaven er fullført, allokeres CPU tilbake til forrige prosess. Planleggingen i henhold til denne mekanismen er kjent som forebyggende planlegging. Hvis den kjørende prosessen ikke kan avbrytes og det er obligatorisk å utføre den kjørende prosessen, er det kjent som ikke-forebyggende planlegging. Denne artikkelen diskuterer forskjellen mellom forebyggende og ikke-forebyggende planlegging i et operativsystem. Den forebyggende planleggingen er prosessplanleggingsmekanismen gjennom hvilken en prosess som kan bli avbrutt av en annen prosess midt i utførelsen. Den ikke-preemptive planleggingen er prosessplanleggingsmekanismen der én prosess starter utførelse først etter at den forrige prosessen avsluttes. Det er den viktigste forskjellen mellom forebyggende og ikke-preemptive planlegging i OS.

Hva er forebyggende planlegging i OS?

Round Robin Scheduling er et eksempel på forebyggende planlegging. Hver prosess får en liten mengde CPU-tid. Det er vanligvis 10 til 100 millisekunder. Denne lille enheten med data er også kjent som tidskvante. Etter at denne tiden har gått, blir prosessen forhåndsaktivert og lagt til på slutten av klarkøen. Anta at det er 4 prosesser som P1, P2, P3 og P4. CPU-bursttidene i millisekunder er som følger. Tidskvantumet er 20.

Forskjellen mellom forebyggende og ikke-preemptive planlegging i OS
Forskjellen mellom forebyggende og ikke-preemptive planlegging i OS
Forskjellen mellom forebyggende og ikke-preemptive planlegging i OS
Forskjellen mellom forebyggende og ikke-preemptive planlegging i OS

Figur 01: Eksempel på Round Robin-planlegging

P1-prosessen kjøres til 20. Det er ytterligere 33 ms igjen. Deretter kjører P2. Ettersom tidskvantumet er 20 og den nødvendige tiden P2 er 17ms, vil P2 utføres i 17ms. Så P2-prosessen er fullført. Da gis sjansen til P3. Den vil kjøre i 20 ms. Resten er 48ms. Deretter vil P4 kjøre i 20 ms. Den har 4ms på å fullføre hele prosessen. Igjen vil P1 kjøre i 20 ms. Den har ytterligere 13 ms til å fullføre prosessen. Endringen er gitt til P3. Den vil kjøre i 20 ms, og den har ytterligere 28 ms å fullføre. P4 kjører. Den har bare 4ms. Derfor fullfører P4 utførelsen. P2 og P4 er allerede ferdige. De resterende prosessene er P1 og P3. Sjansen er gitt til P3. Den hadde 13 ms å fullføre, så den fullfører. Nå er den eneste gjenværende prosessen P3. Den har 28 ms å fullføre. Så P3 vil kjøre i 20 ms. Resten er 8ms. Alle andre prosesser er allerede fullført. Derfor vil igjen resten av 8ms av P3 kjøres. På samme måte får hver prosess en sjanse til å utføre.

Hva er ikke-forebyggende planlegging i OS?

Først til mølla-planlegging (FCFS) kan tas som et eksempel på ikke-forebyggende planlegging. Prosessen som ber om først, tildeles CPU-en først. Denne planleggingen administreres enkelt av First In First Out-køen (FIFO). Hvis det er prosesser som kom i rekkefølge som P1, P2 og P3, så er sjansen først gitt til P1. Etter at den er fullført, vil P2 kjøres. Når P2 er fullført, vil P3 kjøres. Anta at det er 3 prosesser som P1, P2 og P3 med CPU-bursttider i millisekunder som følger.

Nøkkelforskjellen mellom forebyggende og ikke-preemptive planlegging i OS
Nøkkelforskjellen mellom forebyggende og ikke-preemptive planlegging i OS
Nøkkelforskjellen mellom forebyggende og ikke-preemptive planlegging i OS
Nøkkelforskjellen mellom forebyggende og ikke-preemptive planlegging i OS

Figur 02: Eksempel på FCFS-planlegging

I henhold til ovenstående vil P1 kjøres. Når den er fullført, utføres prosessen P2 i 3ms. Nå er den gjenværende prosessen P3. Da vil den utføres. Ventetiden for P1 er null. Prosessen P2 måtte vente 24ms, og prosessen P3 måtte vente 27ms. Hvis prosessene ankom i rekkefølgen P2, P3 og P1, vil P2 fullføres først. Neste P3 vil fullføres, og til slutt vil P1 fullføres.

Hva er likheten mellom forebyggende og ikke-forebyggende planlegging i OS?

Både forebyggende og ikke-preemptive planlegging i OS er mekanismer for å planlegge prosesser i en datamaskin

Hva er forskjellen mellom forebyggende og ikke-forebyggende planlegging i OS?

Preemptive vs Non-Preemtive Scheduling in OS

Den forebyggende planleggingen er prosessplanleggingsmekanismen der en prosess kan avbrytes av en annen prosess midt i utførelsen. Den ikke-forebyggende planleggingen er prosessplanleggingsmekanismen der én prosess starter utførelse først etter at den forrige prosessen er avsluttet.
Prosessavbrudd
I forebyggende planlegging kan prosessene bli avbrutt. I ikke-forebyggende planlegging kan prosessene bli avbrutt.
CPU-utnyttelse
I forebyggende planlegging er CPU-bruken høyere enn ikke-forebyggende planlegging. I ikke-forebyggende planlegging er CPU-bruken minimum sammenlignet med forebyggende planlegging.
Fleksibilitet
Forebyggende planlegging er fleksibel. Ikke-forebyggende planlegging er ikke fleksibel.

Sammendrag – Forebyggende kontra ikke-forebyggende planlegging i OS

Det er flere prosesser som kjører på en datamaskin. Når hver prosess kjøres, blir CPU tildelt den spesifikke prosessen. Noen ganger er det nødvendig å stoppe utførelsen av den nåværende prosessen og prioritere en annen prosess. Prosessplanleggingsmekanismer kan være forebyggende eller ikke-forebyggende. Den forebyggende planleggingen er prosessplanleggingsmekanismen der prosessen kan avbrytes av en annen prosess midt i utførelsen. Den ikke-preemptive planleggingen er prosessplanleggingsmekanismen gjennom hvilken prosess som starter utførelse først etter at den forrige prosessen avsluttes. Dette er forskjellen mellom forebyggende og ikke-forebyggende planlegging i OS.

Last ned PDF-en av Preemptive vs Non-preemptive Scheduling i OS

Du kan laste ned PDF-versjonen av denne artikkelen og bruke den til offline-formål i henhold til sitat. Last ned PDF-versjonen her: Difference Between Preemptive and Non-preemptive Scheduling in OS

Anbefalt: