Режим пользователя режим супервизора

Режим супервизора, привилегированный режим [1] , режим ядра (англ. kernel mode ) — привилегированный режим работы процессора, как правило, используемый для выполнения ядра операционной системы.

В данном режиме работы процессора доступны привилегированные операции, такие, как операции ввода-вывода к периферийным устройствам, изменение параметров защиты памяти, настроек виртуальной памяти, системных параметров и прочих параметров конфигурации. Как правило, в режиме супервизора или вообще не действуют ограничения защиты памяти [2] , или же они могут быть произвольным образом изменены, поэтому код, работающий в данном режиме, как правило, имеет полный доступ ко всем системным ресурсам (адресное пространство, регистры конфигурации процессора и так далее). Во многих типах процессоров это наиболее привилегированный режим из всех доступных режимов.

У некоторых современных процессоров может присутствовать ещё более привилегированный режим гипервизора, как правило, используемый с целью виртуализации, то есть обеспечения параллельной работы сразу нескольких операционных систем на одном процессоре. В этом случае настройки, сделанные из режима гипервизора [3] , могут вносить некоторые ограничения на прямой доступ к системным ресурсам и периферии из режима супервизора с целью предоставить гипервизору возможность арбитража и разграничения доступа к системным ресурсам и периферии незаметно для работающих параллельно операционных систем.

Вопрос №4. «Режим пользователя, режим супервизора».

Режим супервизора — привилегированный режим работы процессора, используемый для выполнения ядра операционной системы.

Код, работающий в данном режиме, имеет полный доступ ко всем системным ресурсам (адресное пространство, регистры процессора).

Ядро́ — центральная часть операционной системы, обеспечивающая приложениям координированный доступ к ресурсам компьютера, таким как процессорное время, память и внешнее аппаратное обеспечение. Также обычно ядро предоставляет сервисы файловой системы и сетевых протоколов.

Режим пользователя. – здесь запускаются в пользовательские приложения.

Читайте также  Просмотр фото на андроид лучшая программа

Программы, выполняющие специализированные функции – это программы, которые работают в пользовательском режиме, но помогают операционной системе или выполняют специализированные функции (программы, позволяющие пользователям изменить пароль). Они не являются частью операционной системы, но выполняемые ими функции влияют на работу системы,.

Прикладные программы — покупаются или пишутся пользователем для решения собственных проблем — обработка текста, электронная таблица.

Операционные системы структурно ее можно разделить на две части.

Первая часть работает в режиме ядра (kernel mode) и называется исполнительной системой. Компоненты режима ядра обладают следующими функциональными возможностями:

· имеют доступ к оборудованию;

· имеют прямой доступ ко всем видам памяти компьютера;

· не выгружаются на жесткий диск в файл подкачки;

· имеют более высокий приоритет, нежели процессы режима пользователя.

Вторая часть работает в режиме пользователя (user mode) – пользовательские поцессы:

· не имеют прямого доступа к оборудованию, все запросы на использование аппаратных ресурсов должны быть разрешены компонентом режима ядра;

· ограничены размерами выделенного адресного пространства;

· могут быть выгружены из физической памяти в виртуальную на жесткий диск;

· приоритет процессов данного типа ниже приоритета процессов режима ядра.

Защищенные подсистемы — это серверные процессы пользовательского режима, создаваемые ОС во время загрузки. После создания они функционируют постоянно, обрабатывая сообщения от прикладных процессов и других подсистем.

В Windows два типа защищенных подсистем.

1. Подсистемы среды. — Win32 Win64. К ее функциям относятся:

· предоставление приложениям стандартного программного интерфейса к функциям ОС;

· реализация графического пользовательского интерфейса;

· управление пользовательским вводом/выводом.

2. Внутренние подсистемы.

2.1. Подсистема безопасности. Осуществляет контроль доступа, поддерживает базы данных учетных записей пользователей, осуществляет процесс аутентификации пользователей.

Читайте также  Робот пылесос поларис эльдорадо

2.2. Служба рабочей станции. Предоставляет приложениям доступ к сетевым ресурсам (файлы, папки, принтеры )

2.3. Служба сервера. Обслуживает входящие из сети запросы на доступ к ресурсам компьютера, например, к файлам и папкам.

Дата добавления: 2014-01-14 ; Просмотров: 2759 ; Нарушение авторских прав? ;

Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет

У меня есть несколько вопросов в пользовательском режиме и режиме супервизора на Unix-подобных машинах.

В чем разница между пользовательским режимом и режимом супервизора? Я знаю, что пользовательские процессы не могут получить доступ ко всей памяти и оборудования и выполнять все инструкции. Есть ли еще больше?

В чем преимущества наличия разных режимов?

Каковы шаги, связанные с переходом из режима пользователя в режим супервизора?

Когда системный вызов выполняется с помощью пользовательской программы, режим должен изменяться с режима пользовательского режима на супервизор. Я читал в другом месте, что это достигается на машинах x86, используя int x80. Итак, как режим переключения отличается от обработки прерываний?

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

Как режимы супервизора реализованы в разных архитектурах?

Любые ответы или указатели будут оценены!

2 ответа

4 Spence [2009-01-26 08:59:00]

ЦП не будет физически разрешать доступ к областям, которые определяются как "привилегированные". Поскольку это принудительно применяется на оборудовании, оно дает вашей операционной системе возможность защитить себя. Без этого механизма в операционной системе не было бы "безопасности", так как самая неясная часть кода могла бы просто получить доступ к памяти ядра и, например, прочитать все пароли.

Пользовательский режим для переключателя режима супервизора является дорогостоящим, потому что он является контекстным переключателем, и для целей безопасности кеш должен быть очищен (в противном случае вы могли бы получить доступ к тому, к которому вы не предназначались.

Читайте также  Проверка контрольного числа снилс

Что касается коммутатора контекста, это по своей сути включает в себя переход к режиму ядра для выполнения задачи. Когда прерывается таймер прерывания CPU Scheduler, он переключается в режим ядра, выбирает следующую задачу для выполнения, а затем переключается обратно в пользовательский режим с возобновлением следующей задачи.

Существуют два понятия:

  • программные режимы пользователя/ядра, которые переключаются между собой при выполнении системного вызова или системного вызова формы возврата,
  • аппаратные режимы пользователя/супервизора, которые переключаются между собой на прерываниях.

Очень мало кода выполняется в режиме супервизора HW, в основном процедуры прерывания на низком уровне и самом начале запуска. Даже большинство режимов ядра ОС выполняется в пользовательском режиме HW.

Ссылка на основную публикацию
Adblock
detector