Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Режимы ядра_прочитайте на четверг _это следующа...docx
Скачиваний:
3
Добавлен:
27.11.2019
Размер:
75 Кб
Скачать
☆

Архитектура Windows nt

Операционная система Windows NT проектировалась как модульная, мно­гоуровневая архитектура, поддерживающая расширения за счет добавлениеновых функций. Архитектура позволяет добавлять поддержку новых ус­тройств и новых возможностей, например шифрующей файловой системы(EFS). Архитектура системы позволяет добавлять поддержку приложений, которые Основаны на других операционных системах, например OS/2 или P0SIX.

На рис. 1 показана высокоуровневая архитектура Windows NT.

рис 1. Архитектура системы Windows NT

Режим ядра содержит все привилегированные процессы, которые выпол­няются на уровне 0 архитектуры Intel x86. Режим ядра Windows NT состоит из трех основных подсистем.

Уровень аппаратных абстракций.

Ядро Windows NT.

Выполняемый модуль Windows NT.

Уровень аппаратных абстракций

Уровень аппаратных абстракций (Hardware Abstraction Layer — HAL) обеспечивает защиту данных за счет управления доступом к аппаратным ре­сурсам. Это единственный модуль операционной системы Windows NT, кото­рый содержит код, зависящий от аппаратного обеспечения (или от архитекту­ры процессора).

Ядро Windows NT

Ядро Windows NT представляет собой следующий уровень после уровня аппаратных абстракций, который обеспечивает работу выполняемого модуля Windows NT

Ядро системы выполняет следующие основные функции:

  • помощь в синхронизации данных;

  • планирование выполнения потоков и процессов;

  • управление прерываниями и исключениями;

  • восстановление системы после аварийных ситуаций, например после от­каза питания.

Данные ядра всегда находятся в оперативной памяти и никогда не вы­гружаются на диск, как это происходит с пользовательскими приложениями. Данные ядра не могут быть вытеснены другими данными.

Это значит, что вы­полнение кода ядра не может быть прервано ради другого кода, если только ядро не выполняет это самостоятельно. Ядро представляет собой объектно-ориентированную систему, в которой используется два класса объектов.

1. Объекты-диспетчеры, которые позволяют управлять потоками и про­цессами и применяются для

синхронизации различных потоков/процес­сов.

2. Объекты управления, например асинхронные вызовы процедур (asyn­chronous procedure calls — АРС) и процедуры обслуживания прерыва­ний (interrupt service routines — ISR)

Выполняемый модуль Windows NT

Выполняемый модуль (Windows NT Executive) обеспечивает работу клю­чевых функций, включая программные интерфейсы приложений (API), ко­торые позволяют потокам из пользовательского режима в Windows NT вза­имодействовать с ядром Windows NT для запроса на предоставление услуг. Как и ядро Windows NT, выполняемый модуль не может быть выгружен из памяти.

Модуль управляет несколькими операциями, включая ввод-вы­вод данных, поддержку работы системы безопасности, межпроцессное взаи­модействие, управление памятью и процессами, поддержку интерфейса Plug and Play, управление питанием, файловыми системами, объектами и графиче­скими устройствами. Весь выполняемый модуль Windows NT размещен в од­ном файле — ntoskrnl.exe.

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

Выполняемый модуль Windows NT, в свою очередь, содержит следующие компоненты:

  1. диспетчер объектов;

  2. монитор ссылок безопасности;

  3. диспетчер процессов;

  4. подсистема Plug and Play;

  5. диспетчер энергопитания;

  6. диспетчер виртуальной памяти;

  7. диспетчер' кэша.