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

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

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

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

Например, в системе "Эльбрус" контекстное переключение выполнялось всего одной аппаратной командой - СМСТЕК (сменить стек, т.е. переключиться с одного облегченного процесса на другой). Однако следует отметить, что такая аппаратная оптимизация была возможна, так как понятие процесса в "Эльбрусе" было фактически сведено к понятию облегченного процесса (lightweight process).