Diferența Dintre Programarea Preventivă și Cea Preventivă în Sistemul De Operare

Cuprins:

Diferența Dintre Programarea Preventivă și Cea Preventivă în Sistemul De Operare
Diferența Dintre Programarea Preventivă și Cea Preventivă în Sistemul De Operare

Video: Diferența Dintre Programarea Preventivă și Cea Preventivă în Sistemul De Operare

Video: Diferența Dintre Programarea Preventivă și Cea Preventivă în Sistemul De Operare
Video: Diferenta dintre sistemul de calcul si sistemul de operare 2024, Mai
Anonim

Diferența cheie - Programare preventivă vs nonpreemptivă în sistemul de operare

Un proces este un program în execuție. Un computer ar trebui să efectueze mai multe sarcini în același timp. Prin urmare, CPU ar trebui să obțină procese și să le execute. Uneori este necesar să se execute unele procese decât celelalte procese. În acel moment, procesul de rulare este întrerupt, iar CPU este alocat noului proces. După finalizarea sarcinii, procesorul este alocat înapoi procesului anterior. Planificarea conform acestui mecanism este cunoscută sub numele de planificare preventivă. Dacă procesul de rulare nu poate fi întrerupt și este obligatoriu să executați procesul de rulare, atunci este cunoscut sub numele de programare nepreentivă. Acest articol discută despre diferența dintre planificarea preventivă și cea preventivă într-un sistem de operare. Planificarea preventivă este mecanismul de planificare a procesului prin care un proces care poate fi întrerupt de un alt proces în mijlocul execuției sale. Planificarea nonpreemptivă este mecanismul de planificare a procesului prin care un proces începe executarea numai după terminarea procesului anterior. Aceasta este diferența cheie între programarea preventivă și nonpreemptivă în sistemul de operare.

CUPRINS

1. Prezentare generală și diferența cheie

2. Ce este programarea

preventivă în sistemul de operare 3. Ce este programarea non-preventivă în sistemul de operare

4. Asemănări între programarea preventivă și non-preventivă în sistemul de operare

5. Comparație side by side - Planificare preventivă vs nonpreemptive în sistem de operare în forma tabelară

6. rezumat

Ce este programarea preventivă în sistemul de operare?

Round Robin Scheduling este un exemplu de programare preventivă. Fiecare proces obține o cantitate mică de timp CPU. De obicei este de 10 până la 100 de milisecunde. Această mică unitate de date este, de asemenea, cunoscută sub numele de cuantica timpului. După ce a trecut acest timp, procesul este oprit și adăugat la sfârșitul cozii gata. Să presupunem că există 4 procese ca P1, P2, P3 și P4. Duratele de explozie ale procesorului în milisecunde sunt următoarele. Cuantumul timpului este de 20.

Diferența dintre programarea preventivă și cea preventivă în sistemul de operare
Diferența dintre programarea preventivă și cea preventivă în sistemul de operare

Figura 01: Exemplu de programare Round Robin

Procesul P1 se execută până la 20. Mai sunt încă 33 ms. Apoi P2 se execută. Deoarece timpul cuantic este de 20 și timpul necesar P2 este de 17 ms, P2 se va executa pentru 17 ms. Deci, procesul P2 este finalizat. Apoi, șansa este dată P3. Se va executa timp de 20 ms. Restul este de 48 ms. Apoi, P4 se va executa timp de 20 ms. Are 4 ms pentru a finaliza procesul total. Din nou, P1 se va executa timp de 20 ms. Mai are încă 13 ms până la finalizarea procesului. Modificarea este dată P3. Se va executa timp de 20ms și are încă 28ms pentru a termina complet. P4 se execută. Are doar 4 ms. Prin urmare, P4 finalizează execuția. P2 și P4 au terminat deja. Procesele rămase sunt P1 și P3. Șansa este dată P3. Avea 13ms de finalizat, deci completează. Acum singurul proces rămas este P3. Are 28 ms de finalizat. Deci, P3 va rula pentru 20 ms. Restul este de 8 ms. Toate celelalte procese au finalizat deja executarea. Prin urmare, din nou se vor executa restul de 8 ms de P3. La fel, fiecare proces are șansa de a se executa.

Ce este programarea nonpreemptivă în sistemul de operare?

Planificarea First Come First Served (FCFS) poate fi luată ca exemplu de planificare nonpreemptivă. Procesul care solicită mai întâi este alocat mai întâi procesorului. Această programare este ușor gestionată de coada First In First Out (FIFO). Dacă există procese în ordine ca P1, P2 și P3, atunci șansa este dată mai întâi lui P1. După ce este finalizat, P2 se va executa. Când P2 se finalizează, P3 se va executa. Să presupunem că există 3 procese ca P1, P2 și P3 cu timp de explozie CPU în milisecunde după cum urmează.

Diferența cheie între programarea preventivă și nonpreemptivă în sistemul de operare
Diferența cheie între programarea preventivă și nonpreemptivă în sistemul de operare

Figura 02: Exemplu de programare FCFS

Conform celor de mai sus, P1 se va executa. Odată finalizat, procesul P2 este executat timp de 3 ms. Acum procesul rămas este P3. Apoi se va executa. Timpul de așteptare pentru P1 este zero. Procesul P2 a trebuit să aștepte 24 ms, iar procesul P3 a trebuit să aștepte 27 ms. Dacă procesele au ajuns în ordinea P2, P3 și P1, atunci P2 se va finaliza mai întâi. Următorul P3 se va finaliza și, în cele din urmă, P1 se va finaliza.

Care este asemănarea dintre programarea preventivă și nonpreemptivă în sistemul de operare?

Atât programarea preventivă, cât și cea nonpreemptivă din sistemul de operare sunt mecanisme de programare a proceselor într-un computer

Care este diferența dintre programarea preventivă și nonpreemptivă în sistemul de operare?

Difuzarea articolului din mijloc înainte de tabel

Programare preventivă vs nonpreemtivă în sistemul de operare

Planificarea preventivă este mecanismul de planificare a procesului prin care un proces poate fi întrerupt de un alt proces în mijlocul execuției sale. Planificarea nonpreemptivă este mecanismul de planificare a procesului prin care un proces începe executarea numai după terminarea procesului anterior.
Întreruperea procesului
În programarea preventivă, procesele pot fi întrerupte. În programarea nepreventivă, procesele pot fi întrerupte.
Utilizarea CPU
În planificarea preventivă, utilizarea procesorului este mai mare decât planificarea nonpreemptivă. În programarea nonpreemptive, utilizarea CPU este minimă în comparație cu programarea preventivă.
Flexibilitate
Programarea preventivă este flexibilă. Programarea nepreventivă nu este flexibilă.

Rezumat - Programare preventivă vs nonpreemptivă în sistemul de operare

Există mai multe procese care rulează pe un computer. Când fiecare proces se execută, procesorul este alocat acestui proces specific. Uneori, este necesar să opriți execuția procesului curent și să acordați prioritate unui alt proces. Mecanismele de planificare a proceselor pot fi preventive sau non-preventive. Planificarea preventivă este mecanismul de planificare a procesului prin care procesul poate fi întrerupt de un alt proces în mijlocul execuției sale. Planificarea nonpreemptivă este mecanismul de planificare a procesului, deși un proces începe executarea numai după ce procesul anterior se termină. Aceasta este diferența dintre programarea preventivă și cea nonpreemptivă în sistemul de operare.

Descărcați PDF-ul programării preventive vs nonpreemptive în sistemul de operare

Puteți descărca versiunea PDF a acestui articol și o puteți folosi în scopuri offline conform notei de citare. Vă rugăm să descărcați versiunea PDF aici: Diferența dintre programarea preventivă și cea nonpreemptivă în sistemul de operare

Recomandat: