Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методические указания (новвое форматирование).doc
Скачиваний:
30
Добавлен:
08.02.2015
Размер:
263 Кб
Скачать

Операции диспетчеризации процессов

8. Выбор (имя процесса): готовность -> выполнение.

9. Истечение _кванта (имя процесса): выполнение -> готовность.

10. Запрос_ресурса (имя процесса, вид ресурса):

выполнение -> ожидание_ресурса.

11. Выделение_ресурса (имя процесса, вид ресурса):

ожидание_ресурса -> готовность.

Рис.2. Состояния процессов и возможные переходы.

Пассивные состояния

Активные состояние

Запуск

Приостановка

Порождение

Возобновление

Прекращение

Удаление

Завершение

  1. активные и пассивные состояния процессов

Начальное состояние

Активные состояния

Порождение Запуск Завершение

Прекращение

Приоста-новленное состояние

Прекращен-ное состояние

Завершен-ное состояние

Приостановка

Возобновление

Удаление_п

Удаление_з

б) конкретизация неактивных действий

Готовность

Выполнение

Выбор

Запуск Завершение

Истеч. кванта

Выделение ресурса Запрос ресурса

П

Ожидание

риостановка/

Прекращение

Возобновление

в) конкретизация активных действий

Итак, процесс – это по сути абстракция, используемая для построения и восприятия концепции функционирования компонентов ОС, организующих распределение ресурсов в условиях многопрограммной работы. Однако процессу соответствуют два реальных объекта: машинная программа, на основании которой процесс будет развиваться, будучи переведенным в активное состояние, и Блок управления процессом (БУП) или дескриптор процесса, представляющий собой информационную структуру (например, таблицу), в которой содержит­ся информация о процессе, необходимая для управления им.

Процесс – динамический объект ВС, он может в ходе своего развития запрашивать и использовать ресурсы, изменять состояние. Динамика изменения состояния, а также связей с ресурсами, обуславливает необходимость создание и поддержание соответствующими компонентами ОС сложных динамических структур, отражающих различ­ные характеристики процессов и ресурсов ВС. Такими информационными структурами, например, являются списки процессов, находящихся в текущий момент времени в одном и том же состоянии: как то, список процессов находящихся в состоянии готовности, список процессов, находящихся в состоянии ожидания, или список процес­сов, ожидающих доступа к какому-либо определенному ресурсу.

Подобные структуры строятся на основании использования дескрипторов процесса, содержащих в таком случае ссылки на другие процессы (точнее на дескрипторы других процессов), а также на таблицы или блоки управления ресурсами; так, например, одной из основных ссылок, хранящихся в дескрипторе процесса, является ссылка (может быть косвенная) на область ОП, в которой будет размещаться машинная программа при нахождении процесса в активных состояниях.

Информацию, содержащуюся в дескрипторе, можно разделить на ряд функциональных групп:

информация по идентификации отражает уникальное имя процесса, необходимое для выполнения операций управления процессом;

информация, о приоритете процесса;

информация о ресурсах – содержит информацию о ресурсах, которые затребованы и (или) используются процессом в течение времени его существования;

информация о состоянии процесса – отражает текущее состояние процесса, возможность его перехода в следующее и данные, необходимые для такого перехода;

информация о родственных связяхиспользуется для коррект­ного инициирования и окончания процесса, связанного с другими процессами, передачи для совместного использования некоторых ресурсов, для установления информационных связей, определяет ссылки на средства синхронизации между процессами;

информация необходимая для поддержания списковых структур процессов,определяет адресные ссылки на другие процессы, отража­ющие различные списковые структуры дескрипторов процессов.

Вне зависимости от своего представления на физическом уров­не, дескрипторы процессов, как отмечалось выше, упорядочиваются в виде списковых структур, в соответствии с состоянием, в котором находятся представляемые ими процессы. Для процессов, находящихся в одинаковых состояниях, доступ к списковым структурам дескрипто­ров и их упорядочивание часто осуществляется в соответствии с принципом (или правилом) HPF–Highest Priority First (наивысший приоритет обслуживается первым)в сочетании с принципом FCFS -First Come - First Served (первым посту поступил - первым обслужен), называемым также правиломFIFO(First In - First Out).Из-за принципаFCFS, наиболее часто использовавшегося для структуриза­ции процессов в условиях многопрограммного режима работы ВС, соответствующие списки называют "очередями".

Отметим, что доступ (помещение/извлечение) к спискам (де­скрипторов) процессов производится при выполнении практически всех операций осуществляемых над процессами.

Совокупность правил и условий, в соответствии с которыми осуществляются планирование и диспетчеризация процессов, называ­ются Дисциплинами планирования (ДП) и диспетчеризации (ДД).

При формировании ДП и ДД могут использоваться правила FCFS (FIFO) и HPF, упомянутые выше, а также ряд других. Одни из них принимают во внимание атрибуты процесса (например, HPF- приори­тет), другие - время поступления процесса в систему (FIFOи "про­тивоположное" ему правилоLIFO–Last In - First Out).

Среди правил формирования, точнее - упорядочивания, списко­вых структур, использующих для определения ДП и ДД атрибуты процесса, упомянем правило или принцип SMN – Shorted Memory - Next (следующий с наименьшей областью ОП). При использования данного принципа процесс, занимающий меньший объем ОП, раньше попадет на выполнение ЦП.

В системах разделения времени (см. выше) диспетчеризация процессов осуществляется в соответствии с циклическим принципом выделения каждому процессу времени ЦП. Этот принцип – RR (Round-robin) отражает суть разделения времени ЦП, в соответствии с принципом квантования, предоставлением процессу короткого промежутка времени работы ЦП. Одним из принципов диспетчеризации процесса упомянем правило или принцип SMN – Shorted Memory - Next (следующий с наименьшей областью ОП). При использования данного принципа процесс, занимающий меньший объем ОП, раньше попадет на выполнение ЦП.

В системах разделения времени ЦП между активными процессами диспетчеризация процессов осуществляется в соответствии с циклическим принципом выделения каждому процессу времени ЦП. Этот принцип – RR (Round-robin) отражает суть разделения времени ЦП, в соответствии с которым каждому процессу последовательно для его выполнения на ЦП выделяется квант времени по истечении которого, процесс, если он к этому моменту не был переведен из состояния выполнение (завершен, приостановлен, переведен в состояние ожида­ние и т.д.), "снимается" с ЦП, переводится в состояние готовность и поступает в очередь готовых процессов.

Правила упорядочивания списков процессов могут объединяться, например, при одинаковых приоритетах необходимо учитывать время поступления процесса. Такие комплексные принципы упорядочивания будем обозначать мнемониками простых правил, объединенных знаком "равно": "=": RR=HPF=FCFS,HPF=SMN=FCFSи т.п.