Операционной системе для реализации планирования процессов требуется дополнительная информация: идентификатор процесса, состояние процесса, данные о степени его привилегированности, место нахождения кодового сегмента и другая информация. Информацию такого рода, используемую ОС для планирования процессов, называют дескриптором процесса.
Дескриптор процесса по сравнению с контекстом содержит более оперативную информацию, которая должна быть легко доступна подсистеме планирования процессов. Контекст процесса содержит менее актуальную информацию и используется операционной системой только после того, как принято решение о возобновлении прерванного процесса.
Очереди процессов представляют собой дескрипторы отдельных процессов, объединенные в списки. Каждый дескриптор содержит, по крайней мере, один указатель на другой дескриптор, соседствующий с ним в очереди. Такая организация очередей позволяет легко их переупорядочивать, включать и исключать процессы, переводить их из одного состояния в другое.
|
|
Создание процесса (общие сведения)
Программный код только тогда начнет выполняться, когда для него операционной системой будет создан процесс. Создать процесс - это значит:
· создать информационные структуры, описывающие данный процесс, то есть его дескриптор и контекст;
· включить дескриптор нового процесса в очередь готовых процессов;
· загрузить кодовый сегмент процесса в оперативную память или в область свопинга.
Можно отметить 3 события, приводящие к созданию процесса:
· загрузка ОС (при загрузке ОС автоматически или через системные файлы загружаются системные процессы);
· разработанный процесс создает дочерние процессы;
· пользователь создает запрос на создание процесса (системный процесс посылает системный вызов на создание нового процесса).
Окончание процесса (общие сведения)
Основные события, приводящие к завершению процесса:
· естественное завершение (завершение работы);
· планируемый выход по идентифицированной ошибке;
· уничтожение другим процессом;
· окончание по неисправимой ошибке в программе.