Каждый процесс также имеет набор регистров, которые соответствуют реальным аппаратным регистрам. Ядро хранит регистры процесса, выполняющегося в текущий момент времени в аппаратных регистрах, и сохраняет регистры остальных процессов в контекстах процессов (специальных структурах данных, отводимых для каждого процесса).
Аппаратный контекст включает содержимое регистров общего назначения, а также набора специальных системных регистров.
Программный счетчик (program counter, PC). Хранит адрес следующей выполняемой инструкции.
Указатель стека (stack pointer, SP). Содержит адрес верхнего элемента стека.
Слово состояния процессора (processor status word, PSW). Содержит несколько битов с информацией о состоянии системы, в том числе о текущем и предыдущем режимах выполнения, текущем и предыдущем уровнях приоритетов прерываний, а также биты переполнения и переноса.
Регистры управления памятью, в которых хранится адреса таблиц трансляции адресов процесса.
Регистры сопроцессора (Floating point unit, FPU).
Машинные регистры содержат аппаратный контекст текущего выполняемого процесса. Когда происходит переключение контекста эти регистры в блоке управления процессом (process control block, PCB). Ядро выбирает следующий процесс для выполнения и загружает его аппаратный контекст из блока РСВ.