Порядок выделения ресурсов


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

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

Стадия готовности к выполнению возникает:

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

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

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

К стадиивыполнения процесс переходит, когда все ресурсы, необходимые для его выполнения, выделены системой.

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

Выделение ресурсов производится в следующем порядке. В случае возникновения потребности в каком-либо ресурсе задача обращается к супервизору операционной системы, указывая вид ресурса и, если надо, его объем и передавая, при этом, управление супервизору.

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

1) выделение ресурса задаче и возврат ей управления,

2) постановка задачи в очередь к требуемому ресурсу, переводя ее в состояние ожидания.

 

Супервизор выделяет ресурс задаче в следующих случаях:

- ресурс свободен и в системе нет запросов к нему от задач более высокого приоритета;

- ресурс является разделимым и допускает совместное свое использование различными задачами;

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

После окончания работы с ресурсом задача опять с помощью специального вызова супервизора сообщает операционной системе об отказе от ресурса. Супервизор операционной системы, получив управление по этому обращению, освобождает ресурс и проверяет, имеется ли очередь к освободившемуся ресурсу. Если очередь есть, он выводит из состояния ожидания задачу, ждущую ресурс, и переводит ее в состояние готовности к выполнению. После этого управление передается той задаче, которой выделены все требуемые ресурсы.

 

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

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

- по команде оператора;

- при выборе из очереди;

- по вызову из другой задачи;

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

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

- процесс завершается, при этом он посредством обращения к супервизору передает управление операционной системе и сообщает о своем завершении. В результате этих действий супервизор переводит его в список пассивных процессов.

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

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

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

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



Дата добавления: 2022-02-05; просмотров: 77;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.009 сек.