Изменение состояния процесса


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

 

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

 

Ядро вне процессов

 

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

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

 



Дата добавления: 2016-06-05; просмотров: 1576;


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

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

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

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