Ключова разлика – Превантивно срещу неизпреварващо планиране в OS
Процесът е програма в изпълнение. Компютърът трябва да изпълнява много задачи едновременно. Следователно процесорът трябва да получава процеси и да ги изпълнява. Понякога е необходимо да се изпълняват някои процеси, отколкото други процеси. В този момент изпълняваният процес се прекъсва и CPU се разпределя за новия процес. След приключване на задачата процесорът се разпределя обратно към предишния процес. Планирането съгласно този механизъм е известно като изпреварващо планиране. Ако изпълняваният процес не може да бъде прекъснат и е задължително да се изпълни изпълняваният процес, тогава той е известен като планиране без изпреварване. Тази статия обсъжда разликата между предварителното и непредварителното планиране в операционна система. Превантивното планиране е механизмът за планиране на процес, чрез който процес, който може да бъде прекъснат от друг процес в средата на неговото изпълнение. Непредварителното планиране е механизмът за планиране на процеса, чрез който един процес започва изпълнение само след като предишният процес приключи. Това е ключовата разлика между превантивното и непредварителното планиране в OS.
Какво е превантивно планиране в OS?
Кръговото планиране е пример за изпреварващо планиране. Всеки процес получава малко време на процесора. Обикновено е от 10 до 100 милисекунди. Тази малка единица данни е известна още като времеви квант. След като изтече това време, процесът се изпреварва и се добавя към края на опашката за готовност. Да приемем, че има 4 процеса като P1, P2, P3 и P4. Времената на избухване на процесора в милисекунди са както следва. Времевият квант е 20.
Фигура 01: Пример за кръгово планиране
Процесът P1 се изпълнява до 20. Остават още 33ms. След това P2 се изпълнява. Тъй като времевият квант е 20 и необходимото време P2 е 17ms, P2 ще се изпълни за 17ms. И така, процесът P2 е завършен. Тогава шансът се дава на P3. Ще се изпълни за 20ms. Останалото е 48ms. След това P4 ще се изпълни за 20ms. Има 4ms за завършване на целия процес. Отново, P1 ще се изпълни за 20ms. Има още 13ms до завършване на процеса. Промяната се дава на P3. Ще се изпълни за 20 ms и има още 28 ms, за да завърши напълно. P4 се изпълнява. Има само 4ms. Следователно P4 завършва изпълнението. P2 и P4 вече са готови. Останалите процеси са P1 и P3. Шансът се дава на P3. Имаше 13 ms за завършване, така че завършва. Сега единственият останал процес е P3. Има 28 ms за завършване. Така че P3 ще работи за 20ms. Останалото е 8ms. Всички други процеси вече са завършили изпълнението. Следователно отново ще се изпълнят останалите 8ms от P3. По същия начин всеки процес получава шанс да се изпълни.
Какво е планиране без изпреварване в OS?
Графикът Пръв дошъл, първи обслужен (FCFS) може да се приеме като пример за планиране без изпреварване. Процесът, който първо поиска, се разпределя първо към процесора. Това планиране се управлява лесно от опашката „Първи влезли, първи излезли“(FIFO). Ако има процеси, дошли в ред като P1, P2 и P3, тогава шансът първо се дава на P1. След като приключи, P2 ще се изпълни. Когато P2 завърши, P3 ще се изпълни. Да приемем, че има 3 процеса като P1, P2 и P3 с времена на избухване на процесора в милисекунди, както следва.
Фигура 02: Пример за планиране на FCFS
Съгласно горното, P1 ще се изпълни. След като приключи, процесът P2 се изпълнява за 3ms. Сега оставащият процес е P3. След това ще се изпълни. Времето за изчакване за P1 е нула. Процесът P2 трябваше да изчака 24ms, а процесът P3 трябваше да изчака 27ms. Ако процесите са пристигнали в ред P2, P3 и P1, тогава P2 ще завърши първи. Следващият P3 ще завърши и накрая ще завърши P1.
Каква е приликата между изпреварващото и неизпреварващото планиране в OS?
Както предварителното, така и непредварителното планиране в операционната система са механизми за планиране на процеси в компютър
Каква е разликата между изпреварващо и неизпреварващо планиране в OS?
Предварително срещу неизпреварващо планиране в OS |
|
Предварителното планиране е механизмът за планиране на процеса, чрез който даден процес може да бъде прекъснат от друг процес по време на неговото изпълнение. | Непредварителното планиране е механизмът за планиране на процеса, чрез който един процес започва изпълнение само след като предишният процес приключи. |
Прекъсване на процеса | |
При изпреварващо планиране процесите могат да бъдат прекъснати. | При планиране без изпреварване процесите могат да бъдат прекъснати. |
Използване на процесора | |
При превантивното планиране, използването на процесора е по-високо от непредварителното планиране. | При планиране без изпреварване, използването на процесора е минимално в сравнение с планиране с изпреварване. |
Гъвкавост | |
Предварителното планиране е гъвкаво. | Неизпреварващият график не е гъвкав. |
Резюме – Превантивно срещу неизпреварващо планиране в OS
На един компютър се изпълняват множество процеси. Когато всеки процес се изпълнява, процесорът се разпределя за този конкретен процес. Понякога е необходимо да спрете изпълнението на текущия процес и да дадете приоритет на друг процес. Механизмите за планиране на процеси могат да бъдат превантивни или непредварителни. Превантивното планиране е механизмът за планиране на процеса, чрез който процесът може да бъде прекъснат от друг процес в средата на неговото изпълнение. Непредварителното планиране е механизмът за планиране на процеса, чрез който един процес започва изпълнение само след като предишният процес приключи. Това е разликата между изпреварващо и неизпреварващо планиране в OS.
Изтеглете PDF файла за изпреварващо срещу неизпреварващо планиране в OS
Можете да изтеглите PDF версията на тази статия и да я използвате за офлайн цели според бележката за цитиране. Моля, изтеглете PDF версията тук: Разлика между изпреварващо и неизпреварващо планиране в OS