Архитектура (модель) ОС MS Windows NT (2000/XP). Компоненты ядра и компоненты пользовательского режима. Файловое дерево ОС MS Windows на загрузочном томе

Когда в 1989 году Microsoft приступила к разработке Windows NT, было выдвинуто несколько ключевых требований к новой операционной системе. Это должна была быть полностью 32-разрядная ОС, способная работать на многочисленных аппаратных платформах с разной архитектурой. Кроме того, от NT требовалось выполнение большинства существующих 16-разрядных приложений для MS-DOS и Windows 3.х.

В целях обеспечения эффективности и целостности работы ОС в системе Windows NT реализуются два режима работы (см. схему) :

· режим ядра (kernel mode)

· режим пользователя (user mode)

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

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

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

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

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

Кроме того в режиме ядра работают :

· драйверы устройств включают как файловую систему, так и аппаратные драйверы, которые транслируют пользовательские вызовы функций ввода/вывода в запросы физических устройств ввода/вывода;

· функции графического интерфейса пользователя работают с окнами, элементами управления и рисунками.

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

· не имеет прямого доступа к аппаратуре. Это сделано в целях защиты от неверно работаю­щих приложений или от несанкционированного доступа. Запро­сы на использование аппаратных ресурсов должны быть разре­шены компонентом режима ядра;

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

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

· Приоритет процесса пользовательского типа ниже, чем у процессов режима ядра. Поэтому в сравнении с последним ему, как правило, предоставляется меньше процессорного времени

Имеется четыре базовых типа пользовательских процессов :

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

· Процессы сервера, которые являются службами NT (аналог демонов в ОС Unix). Примером может быть регистратор событий (Event Logger);

· Подсистемы среды, которые обеспечивают пользовательским приложениям среду других операционных систем. Windows NT поставляется с тремя подсистемами: Win32, Posix и OS/2 2.1;

· Пользовательские приложения одного из пяти типов: Win32, Windows 3.1 (Win16), MS-DOS, Posix или OS/2 2.1.


Порядок и основные процедуры для загрузки ОС на аппаратной платформе IBM-совместимых ПЭВМ. Мультисистемная организация, диспетчеры загрузки ОС.