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

Слои контекста

Компоненты контекста процесса

 

 

Ядро помещает контекстный слой, когда возникает прерывание или программа делает системный вызов.

Ядро выталкивает контекстный слой, когда происходит завершение обработки прерывания либо возврат в режим задачи, т.е. в состояние 1.

∙ процесс переходит в состояние сна;

∙ процесс делает системный вызов еxit и завершает работу;

∙ процесс переходит в режим задачи после обработки прерывания;

∙ процесс переходит в режим задачи после системного вызова.

Алгоритм переключения контекста:

1. принять решение о необходимости и допустимости переключения контекста;

2. сохранить контекст;

3. выбрать подходящий процесс;

4. восстановить его контекст.