Отправляет email-рассылки с помощью сервиса Sendsay

Внутренее устройство Windows

  Все выпуски  

Внутренее устройство Windows


Обзор архитектуры

Теперь обратимся к ключевым компонентам системы,составляющим ее архитектуру.Упрощенная версия этой архитектуры показана ниже.Учтите,что упрощенная схема не отражает всех деталей архитектуры (например,здесь не показаны уровни сетевых компонентов и различных типов драйверов устройств).

Процессы       Процессы     Пользовательские     Подсистемы
поддержки      сервисов     приложения               окружения
системы                 |                     |                                  |
   |                            |                     |                                  |
   |                          DLL   подсистемы                           |
   |                            |                    |                                   |
   |                            |                    |                                   |                      Пользовательский режим
-------------------------------------------------------------------------------------------------------
                                                                                                                                      Режим ядра
Исполнительная система                          Поддержка
---------------------------------------             окон и графики
   Ядро      | Драйверы устройств
---------------------------------------
Уровень абстрагирования от оборудования (HAL)

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

Существует четыре типа пользовательских процессов:

фиксированные процессы поддержки системы (system support processes) - например,процесс обработки входа в систему и диспетчер сеансов,не являющиеся сервисами Windows (т.е. не запускаемые диспетчером управления сервисами);

процессы сервисов (service process) - носители Windows-сервисов вроде Task Scheduler и Spooler.Многие серверные приложения Windows,например Microsoft SQL Server и Microsoft Exchange Server,тоже включают компоненты,выполняемые как сервисы;

пользовательские приложения (user application) - бывают 6-ти типов: для 32-разрядной Windows,64-разрядной Windows,16-разрядной Windows 3.1,16-разрядной MS-DOS,32-разрядной POSIX и 32-разрядной OS/2;

подсистемы окружения (environment subsystem) - реализованы как часть поддержки среды операционной системы,предоставляемой пользователям и программистам.Изначально Windows NT поставлялась с тремя подсистемами окружения: Windows,POSIX и OS/2.Последняя была изъята в Windows 2000.Что касается Windows XP,то в ней исходно поставляется только подсистема Windows - улучшенная подсистема POSIX доступна как часть бесплатного продукта Services for UNIX.

В Windows пользовательские приложения не могут вызывать родные сервисы операционной системы напрямую,вместо этого они работают с одной или несколькими DLL подсистем.Их назначение заключается в трансляции документированных функций в соответсвующие внутренние (и обычно недокументированные) вызовы системных сервисов Windows.Трансляция может осуществлятся как с помощью сообщения,посылаемого процессу подсистемы окружения,обслуживающему пользовательское приложение,так и без него.

 Windows включает следующие компоненты режима ядра.
 
Исполнительная система (executive) Windows,содержащая базовые сервисы операционной системы,которые обеспечивают управление памятью,процессами и потоками,защиту,ввод-вывод и взаимодействие между процессами.

Ядро (kernel) Windows,содержащее низкоуровневые функции операционной системы,которые поддерживают,например,планирование потоков,диспетчеризацию прерываний и исключений,а также синхронизацию при использовании нескольких процессоров.Оно также предоставляет набор процедур и базовых объектов,применяемых исполнительной системой для реализации структур более высокого уровня.

Драйверы устройств (device drivers),в состав которых входят драйверы аппаратных устройств,транслирующие пользовательские вызовы функций ввода-вывода в запросы,специфичные для конкретного устройства,а также сетевые драйверы и драйверы файловых систем.

Уровень абстрагирования от оборудования (harsware abstraction layer,HAL),изолирующий ядро,драйверы и исполнительную систему Windows от специфики оборудования на данной аппаратной платформе (например,от различий между материнскими платами).

Подсистема поддержки окон и графики (windowing and graphics system),реализующая функции графического пользовательского интерфейса (GUI),более известные как Windows-функции модулей USER и GDI.Эти функции обеспечивают поддержку окон,элементов управления пользовательского интерфейса и отрисовку графики.

Ниже перечислены имена файлов основных компонентов Windows.(Вы должны знать их,потому что в дальнейшем мы будем ссылаться на некоторые системные файлы по именам.)

Ntoskrnl.exe - исполнительная система и ядро
Ntkrnlpa.exe - Исполнительная система и ядро с поддержкой механизма Physical Address Extension (PAE),позволяющего адресовать 64ГБ физической памяти
Hal.dll - Уровень абстрагирования от оборудования
Win32sk.sys - Часть подсистемы Windows,работающая в режиме ядра
Ntdll.dll - Внутренние функции поддержки и интерфейсы (stubs) диспетчера системных сервисов с функциями исполнительной системы
Kernell32.dll,Advapi32.dll,User32.dll,Gdi32.dll - основные DLL подсистемы Windows.

В избранное