Н. К. Токжигитова а ционные системы


 Алгоритмы  планирования процессов



Pdf көрінісі
бет18/79
Дата31.01.2022
өлшемі3,3 Mb.
#116517
түріУчебное пособие
1   ...   14   15   16   17   18   19   20   21   ...   79
Байланысты:
book 0846

4.3 Алгоритмы  планирования процессов

Планирование  процессов  включает  в  себя  решение  следующих 

задач:

- определение  момента  времени  для  смены  выполняемого



процесса;

- выбор процесса на выполнение из очереди готовых процессов;

- переключение контекстов «старого» и «нового»  процессов.

Существует  множество  различных  алгоритмов  планирования

процессов, 

по-разному  решающих  вышеперечисленные  задачи, 

преследующих  различные  цели  и  обеспечивающих  различное 

качество 

мультипрограммирования. 

Среди 


этого 

множества 

алгоритмов  рассмотрим  подробнее  две  группы  наиболее  часто 

встречающихся  алгоритмов:  алгоритмы,  основанные  на  квантовании 

(рисунок 8 а), и алгоритмы, основанные на приоритетах (рисунок 8 б).

В  соответствии  с  алгоритмами,  основанными  на  квантовании, 

смена активного процесса происходит, если:

- процесс завершился и покинул систему;

- произошла ошибка;

- процесс перешел в состояние «ожидание»;

-  исчерпан  квант  процессорного  времени,  отведенный  данному 

процессу.

Процесс,  который  исчерпал  свой  квант,  переводится  в  состояние 

«готовность»  и  ожидает,  когда  ему  будет  предоставлен  новый  квант 

процессорного  времени,  а  на  выполнение  в  соответствии  с 

определенным  правилом  выбирается  новый  процесс  из  очереди 

готовых.  Таким  образом,  ни  один  процесс  не  занимает  процессор 

надолго,  поэтому  квантование  широко  используется  в  системах 

разделения  времени.  Очередь  готовых  процессов  может  быть 

организована:  циклически,  по  правилу  «первый  пришел  -  первый 

обслужился»  (FIFO)  или  по  правилу  «последний  пришел  -  первый 

обслужился» (LIFO).

Другая  группа  алгоритмов  использует  понятие  «приоритет» 

процесса. 

Приоритет  -   это  число,  характеризующее  степень 

привилегированности 

процесса 

при 


использовании 

ресурсов 

вычислительной  машины.  Чем  выше  привилегии  процесса  (выше 

приоритет),  тем  меньше  времени  он  будет  проводить  в  очередях. 

Приоритет  может  назначаться  директивно  администратором  системы

28



в  зависимости  от  важности  работы,  либо  вычисляться  самой  ОС  по 

определенным  правилам,  он  может  оставаться  фиксированным  на 

протяжении  всей  жизни  процесса  либо  изменяться  во  времени  в 

соответствии  с  некоторым  законом.  Существует  две  разновидности 

приоритетных  алгоритмов:  алгоритмы,  использующие  относительные 

приоритеты,  и  алгоритмы,  использующие  абсолютные  приоритеты.  В 

обоих  случаях  выбор  процесса  на  выполнение  из  очереди  готовых 

осуществляется 

одинаково: 

выбирается 

процесс, 

имеющий 


наивысший  приоритет.  По-разному  решается  проблема  определения 

момента  смены  активного  процесса.  В  системах  с  относительными 

приоритетами активный процесс  выполняется  до тех  пор,  пока он сам 

не  покинет процессор,  перейдя  в состояние  «ожидание».  В  системах с 

абсолютными  приоритетами  выполнение  активного  процесса  может 

быть  прервано,  если  в  очереди  готовых  процессов  появился  процесс, 

приоритет  которого  выше  приоритета  активного  процесса.  В  этом 

случае прерванный процесс переходит в состояние готовности.

(а)  -   с  относительными  приоритетами;  (б)  -   с  абсолютными 

приоритетами

Рисунок 8 -  Граф состояний процесса в многозадачной среде

Во  многих  операционных  системах  алгоритмы  планирования 

построены  с  использованием,  как  квантования,  так  и  приоритетов. 

Например,  в  основе  планирования  лежит  квантование,  но  величина 

кванта  и/или  порядок  выбора  процесса  из  очереди  готовых 

определяется приоритетами процессов.





Достарыңызбен бөлісу:
1   ...   14   15   16   17   18   19   20   21   ...   79




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет