Лекция: Динамика состояния процесса

Процесс может находиться:

— в активном состоянии, может участвовать в конкуренции за использование

ресурсов вычислительной системы;

— в пассивном состоянии, известен системе, в конкуренции не участвует.

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

выполнения, когда все затребованные ресурсы выделены. В состоянии

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

системы);

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

процесс перейдет в состояние выполнения;

блокирования или ожидания, когда затребованные ресурсы не могут быть

предоставлены или не завершена операция ввода/вывода.

За время существования процесс может неоднократно совершать переходы из

одного состояния в другое. Это обусловлено:

— обращениями к операционной системе с запросами ресурсов;

— выполнением системных функций;

— взаимодействием с другими процессами;

— появлением сигналов прерывания u1086 от таймера, каналов и устройств

ввода/вывода и других устройств.

Процесс из состояния бездействияв состояние готовностиможет перейти в

следующих случаях:

— по команде оператора (пользователя) в диалоговых ОС, где программа может

иметь статус задачи, а не просто быть исполняемым файлом и только на время

исполнения получит статус задачи (ОС на ПК);

— при выборе из очереди планировщиком;

— по вызову из другой задачи (посредством обращения к супервизору один

процесс может создавать, инициировать, приостановить, остановить или

уничтожить другой процесс);

— по прерыванию от внешнего «инициативного» устройства;

— при наступлении запланированного времени запуска программы.

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

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

ему выделены.

Из состояния выполненияпроцесс может выйти по одной из следующих причин:

— процесс завешается, при этом он посредством обращения к супервизору

передает управление ОС и сообщает о своем завершении. Супервизор

уничтожает процесс или переводит его в список бездействующихпроцессов.

В состояние бездействияпроцесс может быть переведен принудительно по

команде оператора или путем обращения к супервизору другой задачи,

требующей остановить данный процесс;

— процесс переводится супервизором ОС в состояние готовности к исполнению

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

выделенного ему кванта времени;

— процесс блокируетсяиз-за невозможности предоставить ему ресурс или

вследствие запроса ввода/вывода, а также по команде оператора на

приостановку задачи.

Процесс деблокируется и переводится в состояние готовности к исполнению при

наступлении соответствующего события:

— завершение операции ввода/вывода;

— освобождение затребованного ресурса;

— загрузка в оперативную память страницы виртуальной памяти и т.д.

Предпосылками изменения состояния процесса являются u1089 события. Один из

основных видов событий – прерывания.

еще рефераты
Еще работы по информатике