Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС шпоры 1.docx
Скачиваний:
24
Добавлен:
25.09.2019
Размер:
876.45 Кб
Скачать
  1. Контекст процесса и его состояния

Контекст процесса.

Информация, для хранения которой предназначен блок управления процессом состоит из:

регистрового контекста (содержимое всех регистров процессора);

системного (запись в таблице процессов, управляющая информация о процессе и т.д.);

пользовательского (код и данные).

Совокупность регистр, сист и польз-го контекстов называется просто контекстом процесса Контекст-информация, полностью характеризуя процесс в любой момент времени.

Переключение контекста.

Деят-ть мультипрограммной ОС состоит из цепочек операций, выполняемых над различными процессами, и сопровождается переключением процессора с одного процесса на другой.

Для корректного переключения процессора с одного процесса на другой необходимо сохранить контекст исполнявшегося процесса и восстановить контекст процесса, на который будет переключен процессор. Такая процедура сохранения/восстановления работоспособности процессов называется переключением контекста.

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

Простейшая диаграмма состояний процесса

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

В состоянии исполнение происходит непосредственное выполнение программного кода процесса. Выйти из этого состояния процесс может по трем причинам:

  • завершает свою деятельность;

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

  • в результате возникновения прерывания в вычислительной системе (например, прерывания от таймера по истечении предусмотренного времени выполнения) его возвращают в состояние готовность.

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

Более детальная схема

Рождение->готовность: выполняются при готовности ОС к обработке дополнительных процессов, что позволяет предотвратить снижение производительности, которое может произойти, если будет загружено слишком много активных процессов.

Готовность-> исполнение: осуществляется выбор процесса для исполнения в соответствии с установленной дисциплиной обслуживания.

Исполнение->готовность: обычно происходит в результате окончания выделенного кванта времени не работы или в результате появления процесса с более высоким приоритетом.

Ожидание->готовность: блокированный процесс переходит в состояние готовности к выполнению в момент появления некоторого ожидаемого события

Исполнение->ожидание: перевод процесса в заблокированное состояние осуществляется в случае, если для продолжения его работы требуется наступление некоторого события.

Исполнение-> завершение: если процесс сигнализирует об окончании своей работы или происходит его аварийное завершение, ОС прекращает его выполнение.

Дополнительное состояние приостановлен->готов может в некоторых случаях существовать в OCPB:

  • при пиковой нагрузке вычислительной системы, когда она не может обеспечить требуемое быстродействие, при расходах времени на смену состояний, превышающих полезную работу;

  • при ненадёжной работе системы и возможном её отказе;

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

Следует помнить, что количество состояний процесса в различных ОС может быть различно:

  • в ОС Windows NT – 7 состояний

в ОС UNIX – 9 состояний