Переключение контекста
Слои контекста
Компоненты контекста процесса
Ядро помещает контекстный слой, когда возникает прерывание или программа делает системный вызов.
Ядро выталкивает контекстный слой, когда происходит завершение обработки прерывания либо возврат в режим задачи, т.е. в состояние 1.
∙ процесс переходит в состояние сна;
∙ процесс делает системный вызов еxit и завершает работу;
∙ процесс переходит в режим задачи после обработки прерывания;
∙ процесс переходит в режим задачи после системного вызова.
Алгоритм переключения контекста:
1. принять решение о необходимости и допустимости переключения контекста;
2. сохранить контекст;
3. выбрать подходящий процесс;
4. восстановить его контекст.