Pagrindinis skirtumas – prevencinis ir neprevencinis planavimas OS
Procesas yra vykdoma programa. Kompiuteris turi atlikti daug užduočių vienu metu. Todėl CPU turėtų gauti procesus ir juos vykdyti. Kartais kai kuriuos procesus reikia vykdyti nei kitus. Tuo metu veikiantis procesas nutrūksta, o CPU priskiriamas naujam procesui. Atlikus užduotį, CPU vėl priskiriamas ankstesniam procesui. Planavimas pagal šį mechanizmą yra žinomas kaip prevencinis planavimas. Jei vykdomo proceso negalima nutraukti ir jį būtina vykdyti, tai yra žinoma kaip neprevencinis planavimas. Šiame straipsnyje aptariamas skirtumas tarp prevencinio ir neprevencinio planavimo operacinėje sistemoje. Prevencinis planavimas yra proceso planavimo mechanizmas, per kurį procesas gali būti nutrauktas kito proceso jo vykdymo viduryje. Neprevencinis planavimas yra proceso planavimo mechanizmas, per kurį vienas procesas pradeda vykdyti tik pasibaigus ankstesniam procesui. Tai yra pagrindinis skirtumas tarp prevencinio ir neprevencinio planavimo OS.
Kas yra prevencinis planavimas OS?
Round Robin planavimas yra prevencinio planavimo pavyzdys. Kiekvienas procesas gauna šiek tiek procesoriaus laiko. Paprastai tai yra nuo 10 iki 100 milisekundžių. Šis mažas duomenų vienetas taip pat žinomas kaip laiko kvantas. Praėjus šiam laikui, procesas užkertamas kelias ir įtraukiamas į parengtų eilės pabaigą. Tarkime, kad yra 4 procesai: P1, P2, P3 ir P4. CPU pliūpsnio laikas milisekundėmis yra toks. Laiko kvantas yra 20.
01 pav.: „Round Robin“planavimo pavyzdys
P1 procesas vykdomas iki 20. Liko dar 33 ms. Tada P2 vykdomas. Kadangi laiko kvantas yra 20, o reikalingas laikas P2 yra 17 ms, P2 veiks 17 ms. Taigi, P2 procesas baigtas. Tada galimybė suteikiama P3. Jis veiks 20 ms. Likusi dalis yra 48 ms. Tada P4 veiks 20 ms. Visam procesui užbaigti reikia 4 ms. Vėlgi, P1 veiks 20 ms. Procesui užbaigti liko dar 13 ms. Pakeitimas pateikiamas P3. Jis veiks 20 ms, o dar 28 ms bus visiškai baigtas. P4 vykdo. Turi tik 4ms. Todėl P4 užbaigia vykdymą. P2 ir P4 jau baigti. Likę procesai yra P1 ir P3. Galimybė suteikta P3. Jis turėjo atlikti 13 ms, todėl jis baigtas. Dabar vienintelis likęs procesas yra P3. Jis turi 28 ms užbaigti. Taigi P3 veiks 20 ms. Likusi dalis yra 8 ms. Visi kiti procesai jau baigti vykdyti. Todėl vėl bus vykdomos likusios 8 ms P3. Taip pat kiekvienas procesas turi galimybę vykdyti.
Kas yra neprevencinis planavimas OS?
First Come First Served (FCFS) planavimas gali būti laikomas neprevencinio planavimo pavyzdžiu. Procesas, kuris pirmiausia pateikia užklausas, pirmiausia priskiriamas CPU. Šį planavimą lengvai valdo FIFO (First In First Out) eilė. Jei yra procesų eilės tvarka kaip P1, P2 ir P3, tada galimybė pirmiausia suteikiama P1. Kai jis bus baigtas, P2 bus vykdomas. Kai P2 bus baigtas, P3 bus vykdomas. Tarkime, kad yra 3 procesai, tokie kaip P1, P2 ir P3, kurių procesoriaus serijos laikas milisekundėmis, kaip nurodyta toliau.
02 pav.: FCFS planavimo pavyzdys
Atsižvelgiant į tai, kas išdėstyta pirmiau, P1 bus vykdomas. Kai jis bus baigtas, P2 procesas vykdomas 3 ms. Dabar likęs procesas yra P3. Tada jis bus įvykdytas. P1 laukimo laikas yra lygus nuliui. Procesas P2 turėjo laukti 24 ms, o procesas P3 – 27 ms. Jei procesai buvo pateikti P2, P3 ir P1 tvarka, tada P2 bus baigtas pirmiausia. Kitas P3 bus baigtas ir galiausiai P1 bus baigtas.
Koks yra prevencinio ir neprevencinio planavimo panašumas OS?
Ir prevencinis, ir neprevencinis planavimas OS yra mechanizmai, skirti planuoti procesus kompiuteryje
Kuo skiriasi prevencinis ir neprevencinis planavimas OS?
Prevencinis ir neprevencinis planavimas OS |
|
Prevencinis planavimas yra proceso planavimo mechanizmas, per kurį procesą gali nutraukti kitas procesas jo vykdymo viduryje. | Neprevencinis planavimas yra proceso planavimo mechanizmas, per kurį vienas procesas pradedamas vykdyti tik pasibaigus ankstesniam procesui. |
Proceso nutraukimas | |
Taikant prevencinį planavimą, procesai gali būti nutraukti. | Neprevencinio planavimo atveju procesai gali būti nutraukti. |
CPU naudojimas | |
Taikant prevencinį planavimą, procesoriaus naudojimas yra didesnis nei neprevencinio planavimo. | Neprevencinio planavimo atveju procesoriaus panaudojimas yra minimalus, palyginti su prevenciniu planavimu. |
Lankstumas | |
Prevencinis planavimas yra lankstus. | Neprevencinis planavimas nėra lankstus. |
Santrauka – prevencinis ir neprevencinis planavimas OS
Kompiuteryje veikia keli procesai. Kai kiekvienas procesas vykdomas, CPU priskiriamas tam konkrečiam procesui. Kartais reikia sustabdyti esamo proceso vykdymą ir suteikti pirmenybę kitam procesui. Procesų planavimo mechanizmai gali būti prevenciniai arba neprevenciniai. Prevencinis planavimas yra proceso planavimo mechanizmas, per kurį procesą gali nutraukti kitas procesas jo vykdymo viduryje. Neprevencinis planavimas yra proceso planavimo mechanizmas, kurį naudojant vienas procesas pradeda vykdyti tik pasibaigus ankstesniam procesui. Tai yra skirtumas tarp prevencinio ir neprevencinio planavimo OS.
Atsisiųskite prevencinio ir neprevencinio planavimo PDF failą OS
Galite atsisiųsti šio straipsnio PDF versiją ir naudoti ją neprisijungus, kaip nurodyta citatos pastaboje. Atsisiųskite PDF versiją čia: Skirtumas tarp prevencinio ir neprevencinio planavimo OS