Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по операционным системам.doc
Скачиваний:
91
Добавлен:
02.05.2014
Размер:
344.06 Кб
Скачать

11.Состояния процесса.

При построении описательной модели все, что выполн-ся в выч-х системах организовано как набор процессов. Реально на однопроцессорной системе в люб. момент t м. выполняться только 1 процесс. Д/мультипрофильных выч. систем псевдопаралл-я обработка нескольких процессов достигается с помощью переключения процессора с одного процесса на другой. Пока 1 пр. выполняется, другие ждут своей очереди, поэтому люб. процесс м. нах-ся как минимум в двух состояниях : процесс исполняется и не исполняется.

Процесс, нах-ся в сост. «процесс исполняется» ч/з некоторое t м. б. завершён ОС или приостановлен и снова приведён в сост. «процесс не испол-ся». Приостановка процесса происходит по двум причинам: д/его дальнейшей работы потребовалось какое-то событие, напр., завершение операции вв/выв или истёк временной интервал, отведённый ОС д/работы этого процесса. После того ОС по определённому алгоритму выбирает на исполнение один из процессов, находящихся в состоянии «процесс не исполняется»

и переводит его в сост-е «процесс исп-ся». Новый процесс, появляющийся в системе первоначально помещается в состояние «процесс не исполняется». Это очень грубая модель и она не учитывает то, что процесс, выбранный д/исполнения м. всё ещё ждать событие из-за которого он был приостановлен и реально к выполнению не готов., поэтому сост-е «процесс не исполняется» разбивается на 2 новых: готовность и ожидание.

Всякий новый процесс, появляющийся в системе попадает в состояние «готовность». ОС, пользуясь каким-либо алгоритмом планирования, выбирает 1 из готовых процессов и переводит его в сост. исполнения. В сост. исполнения происходит непосредств-е выполнение прогами кода процессов. Выйти из этого сост. процесс м. по 3-м причинам:

1)ОС прекращает его деятельность

2)он не м. продолжить свою работу, пока не произойдёт некот. событие и ОС переведёт его в сост. ожидания

3)в рез-те возникновения прерывания в ОС

Эта новая модель хорошо описывает поведение процесса во t время его сущ-я, но она не акцентирует внимание на появление процесса в системе и его исчезновении. Для полноты картины нужны ещё 2 состояния процессов:

1) «рождение»

2) «исполнение»

При рождении процесс получает в своё распоряжение адресное пространство, в кот. загружается прога подпроцесса, ему выделяется стек и сист. ресурсы. Устанавлив-ся начальные значения программного счётчика этого процесса и т.д. родившийся процесс переводится в сост. «готовность». При завершении своей деят-ти процесс из сост. «исполнение» попадает в сост. «закончил исполнение». В конкретных ОС сост. процесса м.б. ещё более детализированным, м. появл-ся некоторые новые варианты переходов из 1 в др. сост.(напр., NT-7разл. сост.,Linux-9 ), тем не менее все ОС подчиняются изложенной выше модели.

12.Операции над процессами.

Процесс не м. перейти из одного сост. в др. самостоятельно. Изменением сост-й процессов занимается ОС, совершая операции над ними. Кол-во таких операций совпадает с кол-вом стрелок на диаграмме состояний. Удобно соединить их в 3 пары:

1)создание процесса - завершение процесса;

2)приостановка (перевод из сост. «исполнение» в сост. «готовность») - запуск (из сост. «готовность» в сост. «исполнение»);

3)блокир-ие процесса (перевод из сост. «исполнение» в сост. «ожидание»)- разблок-ие(ожидание-готовность);

Сущ-ет ещё 1 операция, не имеющая пару: изменение приоритета процесса. Операции создания и завершения процесса явл-ся одноразовыми, т. к. применяются к процессу не более 1 раза. Все остальные операции, связанные с изменением сост. процесса (запуск или блокировка), как правило, явл-ся многоразовыми. ОС выполняет операции над процессами след. образом.