Kľúčový rozdiel - preventívne a nepriehľadné plánovanie v OS
Proces je program, ktorý sa vykonáva. Počítač by mal vykonávať veľa úloh súčasne. Preto by CPU mala dostať procesy a vykonať ich. Niekedy je potrebné vykonať niektoré procesy ako iné procesy. V tom okamihu je spustený proces prerušený a CPU je pridelená novému procesu. Po dokončení úlohy je procesor pridelený späť k predchádzajúcemu procesu. Plánovanie podľa tohto mechanizmu je známe ako preventívne plánovanie. Ak bežiaci proces nie je možné prerušiť a je nevyhnutné ho spustiť, je známy ako nepreventívne plánovanie. Tento článok pojednáva o rozdieloch medzi preventívnym a preventívnym plánovaním v operačnom systéme. Preventívne plánovanie je mechanizmus plánovania procesu, prostredníctvom ktorého je proces, ktorý môže byť prerušený iným procesom uprostred jeho vykonávania. Nepreventívne plánovanie je mechanizmus plánovania procesu, prostredníctvom ktorého jeden proces začne vykonávanie až po ukončení predchádzajúceho procesu. To je kľúčový rozdiel medzi preventívnym a neprípustným plánovaním v OS.
OBSAH
1. Prehľad a kľúčový rozdiel
2. Čo je preventívne plánovanie v OS
3. Čo je nepreventívne plánovanie v OS
4. Podobnosti medzi preventívnym a nepreventívnym plánovaním v OS
5. Porovnanie vedľa seba - preventívne vs. nepreventívne plánovanie v OS vo forme tabuľky
6. Zhrnutie
Čo je preventívne plánovanie v OS?
Round Robin Scheduling je príkladom preventívneho plánovania. Každý proces získa malé množstvo času CPU. Spravidla je to 10 až 100 milisekúnd. Táto malá jednotka údajov je tiež známa ako časový kvantum. Po uplynutí tejto doby je proces predbehnutý a pridaný na koniec frontu pripravených. Predpokladajme, že existujú 4 procesy ako P1, P2, P3 a P4. Časy prasknutia procesora v milisekundách sú nasledujúce. Časové kvantum je 20.
Obrázok 01: Príklad plánovania Round Robin
Proces P1 sa spustí do 20. Zostáva ďalších 33 ms. Potom sa vykoná P2. Pretože časové kvantum je 20 a požadovaný čas P2 je 17ms, P2 sa vykoná po dobu 17ms. Proces P2 je teda dokončený. Potom dostane šancu P3. Bude sa vykonávať 20 ms. Zvyšok je 48ms. Potom sa P4 spustí po dobu 20 ms. Na dokončenie celého procesu má 4 ms. Opäť sa P1 vykoná po dobu 20 ms. Na dokončenie procesu má ďalších 13 ms. Zmena sa týka P3. Bude sa vykonávať 20 ms a na dokončenie má ďalších 28 ms. P4 sa vykoná. Má iba 4 ms. Preto P4 dokončí vykonanie. P2 a P4 už skončili. Zvyšné procesy sú P1 a P3. Šancu má P3. Trvalo to 13 ms, takže je to dokončené. Jediným zostávajúcim procesom je teraz P3. Má na dokončenie 28 ms. Takže P3 pobeží 20ms. Zvyšok je 8 ms. Všetky ostatné procesy sa už vykonali. Preto sa vykoná opäť zvyšok 8 ms P3. Rovnako má každý proces šancu vykonať.
Čo je to nepreventívne plánovanie v OS?
Plánovanie FCFS (First Come First Served) možno brať ako príklad nepreventívneho plánovania. Proces, ktorý žiada ako prvý, sa najskôr pridelí CPU. Toto plánovanie je ľahko spravované frontom FIFO (First In First Out). Ak existujú procesy prichádzajúce v poradí P1, P2 a P3, potom sa najskôr dá šanca P1. Po dokončení sa vykoná P2. Po dokončení P2 sa vykoná P3. Predpokladajme, že existujú 3 procesy ako P1, P2 a P3 s časmi prasknutia procesora v milisekundách, a to nasledovne.
Obrázok 02: Príklad plánovania FCFS
Podľa vyššie uvedeného P1 vykoná. Po jeho dokončení sa proces P2 vykoná po dobu 3 ms. Teraz zostáva proces P3. Potom sa vykoná. Čakacia doba pre P1 je nulová. Proces P2 musel čakať 24 ms a proces P3 musel čakať 27 ms. Ak procesy prišli v poradí P2, P3 a P1, potom sa najskôr dokončí P2. Ďalej sa dokončí P3 a nakoniec sa dokončí P1.
Aká je podobnosť medzi preventívnym a neprípustným plánovaním v OS?
Preventívne aj nepriechodné plánovanie v operačnom systéme sú mechanizmy na plánovanie procesov v počítači
Aký je rozdiel medzi preventívnym a neprípustným plánovaním v OS?
Rozdielny článok v strede pred tabuľkou
Preventívne a nepriechodné plánovanie v OS |
|
Preventívne plánovanie je mechanizmus plánovania procesu, prostredníctvom ktorého je možné proces prerušiť iným procesom uprostred jeho vykonania. | Nepreventívne plánovanie je mechanizmus plánovania procesu, prostredníctvom ktorého jeden proces začne vykonávanie až po ukončení predchádzajúceho procesu. |
Prerušenie procesu | |
Pri preventívnom plánovaní je možné procesy prerušiť. | Pri nepreventívnom plánovaní je možné procesy prerušiť. |
Využitie CPU | |
Pri preventívnom plánovaní je využitie procesora vyššie ako pri preventívnom plánovaní. | Pri nepreventívnom plánovaní je využitie CPU minimálne v porovnaní s preventívnym plánovaním. |
Flexibilita | |
Preventívne plánovanie je flexibilné. | Nepreventívne plánovanie nie je flexibilné. |
Zhrnutie - preventívne vs. nepriebežné plánovanie v OS
V počítači beží viac procesov. Keď sa vykoná každý proces, CPU sa pridelí tomuto konkrétnemu procesu. Niekedy je potrebné zastaviť vykonávanie súčasného procesu a uprednostniť iný proces. Mechanizmy plánovania procesov môžu byť preventívne aj preventívne. Preventívne plánovanie je mechanizmus plánovania procesu, prostredníctvom ktorého je možné proces prerušiť iným procesom uprostred jeho vykonania. Nepreventívne plánovanie je mechanizmus plánovania procesu, ktorý však jeden proces začne vykonávať až po ukončení predchádzajúceho procesu. To je rozdiel medzi preventívnym a neprípustným plánovaním v OS.
Stiahnite si PDF preventívneho a neprípustného plánovania v OS
Môžete si stiahnuť PDF verziu tohto článku a použiť ju na offline účely podľa citačnej poznámky. Stiahnite si verziu PDF tu: Rozdiel medzi preventívnym a nepreventívnym plánovaním v OS