Операционные системы. Учебное пособие. Марапулец Ю.В. - 45 стр.

UptoLike

Составители: 

Рис.2.1. Граф состояний процесса
За время своего существования процесс может неоднократно совершать переходы
из одного состояния в другое. Это обусловлено обращениями к операционной системе с
запросами ресурсов и выполнения системных функций, которые предоставляет опера-
ционная система, взаимодействием с другими процессами, появлением сигналов преры-
вания от таймера, каналов и устройств ввода/вывода, а также других устройств. Воз-
можные переходы процесса из одного состояния в другое отображены в виде графа
состояний на рис. 1. Рассмотрим эти переходы более подробно.
Процесс из состояния бездействия может перейти в состояние готовности в
следующих случаях [2]:
по команде пользователя. Имеет место в тех диалоговых операционных системах,
где программа может иметь статус задачи, а не просто быть исполняемым файлом и
только на время исполнения получать статус задачи;
при выборе из очереди планировщиком, что характерно для операционных систем,
работающих в пакетном режиме;
по вызову из другой задачи;
по прерыванию от внешнего инициативного устройства;
при наступлении запланированного времени запуска программы.
Последние два способа запуска задачи, при которых процесс из состояния бездей-
ствия переходит в состояние готовности, характерны для ОСРВ.
Процесс, который может исполняться, как только ему будет предоставлен процес-
сор, находится в состоянии готовности. Считается, что такому процессу уже выделе-
ны все необходимые ресурсы за исключением процессора.
Из состояния выполнения процесс может выйти по одной из следующих причин
[2, 5]:
процесс завершается, при этом он посредством обращения к супервизору передает
управление операционной системе и сообщает о своем завершении. В результате
этих действий супервизор либо переводит его в список бездействующих процессов,
либо уничтожает. В состояние бездействия процесс может быть переведен принуди-
тельно: по команде пользователя, или путем обращения к супервизору операцион-
ной системы из другой задачи с требованием остановить данный процесс;
47
                                Рис.2.1. Граф состояний процесса

       За время своего существования процесс может неоднократно совершать переходы
из одного состояния в другое. Это обусловлено обращениями к операционной системе с
запросами ресурсов и выполнения системных функций, которые предоставляет опера-
ционная система, взаимодействием с другими процессами, появлением сигналов преры-
вания от таймера, каналов и устройств ввода/вывода, а также других устройств. Воз-
можные переходы процесса из одного состояния в другое отображены в виде графа
состояний на рис. 1. Рассмотрим эти переходы более подробно.
       Процесс из состояния бездействия может перейти в состояние готовности в
следующих случаях [2]:
• по команде пользователя. Имеет место в тех диалоговых операционных системах,
     где программа может иметь статус задачи, а не просто быть исполняемым файлом и
     только на время исполнения получать статус задачи;
• при выборе из очереди планировщиком, что характерно для операционных систем,
     работающих в пакетном режиме;
• по вызову из другой задачи;
• по прерыванию от внешнего инициативного устройства;
• при наступлении запланированного времени запуска программы.
       Последние два способа запуска задачи, при которых процесс из состояния бездей-
ствия переходит в состояние готовности, характерны для ОСРВ.
       Процесс, который может исполняться, как только ему будет предоставлен процес-
сор, находится в состоянии готовности. Считается, что такому процессу уже выделе-
ны все необходимые ресурсы за исключением процессора.
       Из состояния выполнения процесс может выйти по одной из следующих причин
[2, 5]:
• процесс завершается, при этом он посредством обращения к супервизору передает
     управление операционной системе и сообщает о своем завершении. В результате
     этих действий супервизор либо переводит его в список бездействующих процессов,
     либо уничтожает. В состояние бездействия процесс может быть переведен принуди-
     тельно: по команде пользователя, или путем обращения к супервизору операцион-
     ной системы из другой задачи с требованием остановить данный процесс;




                                          47