Относителни и абсолютни приоритети

Има два типа приоритетно планиране: услуга с относителен приоритет и услуга с абсолютен приоритет.

И в двата случая изборът на нишка за изпълнение от опашката на готов­Същото е: избрана е нишката с най-висок приоритет. Въпреки това, около­дефект определяне на момента на промяна на активния поток решени по различни начини.

  • В sis­нишки с относителни приоритети, активната нишка се изпълнява, докато не напусне самия процесор, влизайки в състояние на изчакване (или­ще бъде хвърлена грешка или потокът ще приключи). На фиг. 8, и показва графика на състоянията на нишка в система с относителни приоритети.
  • В системи с абсолютни приоритети изпълнението на активна нишка се прекъсва­в допълнение към горните причини, при още едно условие: ако нишка се появи в опашката от готови нишки, чийто приоритет е по-висок от приоритета.­ти поток. В този случай прекъснатата нишка преминава в състояние на готовност (фиг. 8, б).

В системи, в които планирането се основава на относителни приоритети, разходите за превключване на процесора от един процесор към­ботове към друг. От друга страна, тук могат да възникнат ситуации, когато една задача заема процесора за дълго време. Ясно е, че за системите за разделяне на времето­аз и в реално време такава служебна дисциплина не пасва: интер­активно приложение може да чака часове наред, докато изчислителната задача изисква I/O. Но в системите за партидна обработка широко се използват относителни приоритети.

реално време

Фигура: 8.Поставете графики на нишки в системи с относителни и абсолютни приоритети.

В системи с абсолютни приоритети времето за опашка на нишка може да бъде сведено до минимум, като й се присвои най-висок приоритет. Тази нишка ще извади всички други нишки (с изключение на тези със същия най-висок приоритет) от процесора. Това прави планиране в os­нови абсолютни приоритети, подходящи за системи за управление на активи, където е важна бързата реакция на дадено събитие.

3.4.3 Смесени алгоритми за планиране

В много операционни системи са изградени алгоритми за планиране­като се използват както концепцията за квантуване, така и приоритетите.Например, планирането се основава на квантуване, но размерът на кванта и/или редът за избор на нишка от опашката на готовите се определя от приоритетите на нишките. Ето как се изпълнява планирането в Windows NT, който комбинира квантуване с динамични абсолютни приоритети. За изпълнение на виби­Готовият поток с най-висок приоритет се отваря. Разпределен му е квант време­нито едното. Ако по време на изпълнение в опашката за готовност се появи нишка с повече от вас­висок приоритет, той изпреварва текущата нишка. Предварителната нишка се връща в опашката за готовност и изпреварва всички останали нишки със същия приоритет.

График в реално време

В системите в реално време, при които основният критерий за ефективност е да се осигурят времевите характеристики на изчислителния процес, планирането е от особено значение. Всяка система в реално време трябва да реагира на сигнали от контролиран обект в рамките на определените срокове. Необходимостта от внимателно планиране на работата се улеснява от факта, че в системите в реално време е известен целият набор от изпълнявани задачи­нея. Освен това системата често съдържа информация за времената на изпълнение на задачите, моментите на активиране, максимално допустимите времена на изчакване за отговор и др. Тези данни могат да бъдат използвани от планиращия за създаване на сто­график или за изграждане на адекватна динамика­и планиране.