Programare preventivă vs. nepreventivă în sistem de operare

Autor: Laura McKinney
Data Creației: 4 Aprilie 2021
Data Actualizării: 1 Mai 2024
Anonim
Programare preventivă vs. nepreventivă în sistem de operare - Alte
Programare preventivă vs. nepreventivă în sistem de operare - Alte

Conţinut

Diferența cheie între planificarea preemptivă și non-preemptivă în sistemul de operare este faptul că planificarea preemptivă are loc atunci când un proces trece de la starea de execuție la starea gata, în timp ce planificarea nepreventivă are loc atunci când procesul se încheie.


Sistemul de operare este o punte de legătură între utilizator și software, sistemul de operare în informatică este cel mai important concept. În sistemul de operare, programarea preventivă și nonpreventivă este cel mai important concept.

Există un programator CPU care este responsabil pentru alocarea unui proces procesorului. Programatorul CPU așteaptă ca CPU să se elibereze și când resursele procesorului sunt gratuite, creează calea altor procese. Planificarea preventivă are loc atunci când un proces trece de la starea de execuție la starea gata, în timp ce planificarea nepreventivă are loc atunci când procesul se încheie. În planificarea preemptivă, procesele pot fi programate, în timp ce procesele de planificare non-preemptive nu pot fi programate. Planificarea preventivă se întâmplă atunci când procesul trece de la starea de execuție la starea gata. În planificarea preemptivă, ciclurile CPU sunt alocate procesării și aceasta este pentru o perioadă limitată de timp. Procesul care trebuie așteptat este în coada pregătită și așteaptă explozia procesorului. Procesul trebuie să rămână în coada pregătită până când procesorul este gata de execuție. Apoi, există priorități ca un proces care va veni cu prioritate mare va primi mai întâi resursele, apoi procesul cu priorități mai puține. Tot acest proces este cunoscut sub numele de programare preventivă. Robin Robin este un exemplu de programare preventivă.


Planificarea nepreventivă are loc atunci când procesul se încheie. Când procesul are resursa de către procesor și când resursa este utilizată de acest proces, procesul este încheiat de CPU. Planificarea preventivă întrerupe procesul imediat după ce procesul are prioritate ridicată, iar în cazul programării nepreventive nu există nicio întrerupere și procesul este încheiat la finalizarea procesului. Când procesul cu timp de explozie al procesorului lung se execută, atunci va trebui să aștepte și în acest fel timpul mediu de așteptare crește.

Cuprins: diferență între programarea preventivă și cea nepreventivă în sistemul de operare

  • Diagramă de comparație
  • Programare preventivă
  • Programare nepreventivă
  • Diferențele cheie
  • Concluzie
  • Video explicativ

Diagramă de comparație

BazăProgramare preventivăProgramare nepreventivă
SensPlanificarea preventivă are loc atunci când procesul rulează de la starea de execuție la starea gata

Planificarea nepreventivă are loc atunci când procesul se încheie.


 

Întrerupe Există o întrerupere în programarea preventivăNu există nicio întrerupere în programarea fără preempțiune
Flexibil Programarea preventivă este flexibilăProgramarea nepreventivă nu este flexibilă
Cost Programarea preventivă este rentabilăProgramarea nepreventivă nu este eficientă din punct de vedere al costurilor

Programare preventivă

Planificarea preventivă se întâmplă atunci când procesul trece de la starea de execuție la starea gata. În planificarea preventivă, ciclurile procesorului sunt alocate procesării și aceasta este pentru o perioadă limitată de timp. Procesul care trebuie să aștepte este în coada pregătită și așteaptă explozia procesorului. Procesul trebuie să rămână în coada pregătită până când procesorul este gata de execuție. Apoi, există priorități ca un proces care va veni cu prioritate mare va primi mai întâi resursele, apoi procesul cu mai puține priorități. Tot acest proces este cunoscut sub numele de programare preventivă. Robin Robin este un exemplu de programare preventivă.

Programare nepreventivă

Planificarea nepreventivă are loc atunci când procesul se încheie. Când procesul are resursa de către procesor și când resursa este utilizată de acest proces, procesul este încheiat de CPU. Planificarea preventivă întrerupe procesul imediat după ce procesul are prioritate ridicată, iar în cazul programării nepreventive nu există nicio întrerupere și procesul este încheiat la finalizarea procesului. Când procesul cu timp de explozie al procesorului lung se execută, atunci va trebui să aștepte și în acest fel timpul mediu de așteptare crește.

Diferențele cheie

  1. Planificarea preventivă are loc atunci când un proces trece de la starea de execuție la starea gata, în timp ce programarea nepreventivă are loc atunci când procesul se încheie.
  2. Există o întrerupere în programarea preventivă, în timp ce nu există nicio întrerupere în programarea nepreventivă.
  3. Planificarea preventivă este flexibilă, în timp ce programarea nepreventivă nu este flexibilă.
  4. Planificarea preventivă este eficientă din punct de vedere al costurilor, în timp ce programarea non-preventivă nu este eficientă din punct de vedere al costurilor

Concluzie

În acest articol de mai sus vedem diferența clară între programarea preventivă și nonpreventivă cu exemple.

Video explicativ