Режим работы процессора () — состояние процессора, определяющее его поведение при выполнении различных команд и возможность доступа к различным данным.
По способу адресации памяти (на примере x86): Реальный режим: обращение к оперативной памяти происходит по реальным (действительным) адресам. Набор доступных операций не ограничен, защита памяти не используется. Защищённый режим: обращение к памяти происходит по виртуальным адресам с использованием механизмов защиты памяти. Набор доступных операций определяется уровнем привилегий.
По уровню привилегий: Режим пользователя (прикладной): минимальный уровень привилегий, разрешены только операции с данными и переходы в пределах адресного пространства пользователя. Все остальные операции либо игнорируются, либо с помощью механизма обработки исключений вызывают переключение в привилегированный режим и передачу управления ядру операционной системы для выполнения специальных функций (например, отображения данных на дисплее) или аварийного завершения потока управления. Привилегированный режим (режим ядра): наравне с операциями режима пользователя, разрешены дополнительные операции — запрет или разрешение прерываний, доступ к портам ввода-вывода, специальным регистрам процессора (например, для настройки блока управления памятью).
После включения процессор всегда начинает работу в реальном привилегированном режиме.
Переключение с понижением уровня привилегий (из режима ядра в режим пользователя) возможно с продолжением работы в любой конфигурации и с любого адреса. Обратное переключение (с повышением уровня привилегий) возможно лишь в определенные конфигурации и адреса в коде, заранее установленные в привилегированном режиме, за счет чего обеспечивается полный контроль ядра за повышением привилегий исполняемого кода.
См. также Кольца защиты Режим супервизора
Категория:Технологии процессоров Категория:Микропроцессоры