Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
shpory_os.docx
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
626.79 Кб
Скачать

22. Архитектура ос windows vista

Уровень HAL – машинно-зависимый уровень, основные функции как и идеология такие же как и в Windows XP.

Структура NTOS — делится на 2 составляющих: уровень ядра (аналогичен слою «Ядро» в Windows XP) и исполнительный уровень (написан на языке Си, содержит несколько компонентов (компоненты исполнительного уровня работают при помощи абстракции, предоставляемых формой ядра). Как и в большинстве ОС большая часть кода исполнительного уровня является библиотечной.

Диспетчер потоков и процессов — аналогично менеджеру процессов Windows XP.

Диспетчер виртуальной памяти и объектов - аналогично менеджеру виртуальной памяти и объектов в Windows XP.

Диспетчер конфигурации - аналогично менеджеру конфигурации Windows XP.

Диспетчер LPC — это усовершенствованный механизм локального вызова процедуры. Данный компонент обеспечивает высокоэффективный межпроцессный обмен. В Windows Vista LPC был значительно улучшен и получил название расширенный LPC (Advanced LPC).

Диспетчер кэширования — аналогично менеджеру кэширования в Windows XP.

Диспетчер ввода/вывода - аналогично менеджеру ввода/вывода Windows XP. Содержит средства для управления P'n'P (Plug and Play). Такжа сюда включается управление энергопотреблением.

Монитор безопасности — обеспечивает работу сложных политик безопастности в Windows.

Ntdll.dll – обеспечивает переключение из режима ядра в режим пользователя и наоборот.

Системы программирования — данный слой включает в себя все реализованные системой программирования Windows XP.

Загрузка любой ОС начинается с инициализации кода энергонезависимой памяти (нежёстких дисков). Чаще всего в этой роли выступает BIOS. Он запускает небольшую программу начальной загрузки, программа начальной загрузки читает файловую систему и находит программу bootmgr (данная программа проверяет была ли система переведена в состояние гибернации: если это так, то bootmgr запускает winresume.exe, в противном случае запускается winload.exe — загружает в память компоненты системы: драйвера, уровень HAL, ядро, исполнительная система и другое). после загрузки необходимых компонентов управление передаётся коду низкого уровня NTOS, который начинает инициализировать драйвера, уровень HAL, ядро, исполнительный уровень и так далее. После инициализации всех компонентов режима ядра создаётся первый процесс пользовательского режима smss.exe.

23.Структура пользовательского режима. Программный интерфейс Win32 api.

Подсистемы программирования. Представляет собой набор API32 (API64). Список системных вызовов никогда не публикуется и меняется с каждым новым выпуском системы. Вместо этого опубликованы и полностью документированы функциональные вызовы WinAPI. Они представляют собой библиотечные процедуры, которые либо обращаются к системным вызовам, чтобы выполнить требуемую работу, либо, в некоторых случаях, выполняют работу прямо в пространстве пользователя. Вызовы Win32 не изменяются от версии к версии, однако добавляются новые. Философия WinAPI отлична от философии Unix. Философия WinAPI заключается в предоставлении всеобъемлющего интерфейса с возможностью выполнить одно и тоже действие несколькими способами (в Unix присутствует минимальный набор вызовов).

В задачи интерфейса WinAPI включается:

создание/управление/уничтожение процессами и потоками;

межпроцессное взаимодействие;

управление семафорами, мьютексами и событиями;

управление файлами (открытие/закрытие/чтение, файловый ввод/вывод);

вызовы безопастности;

и так далее (Большинство выводов WinAPI относятся к графическим функциям).

Динамические библиотеки DLL.

Одним из способов написания программ является описание всех возможных функций в тексте программы. В разных программах список функций может быть одинаковый, тем самым увеличивая повторяемость кода. Такой способ представляет собой статическую компоновку, однако в системе Windows существует другая технология, которая называется DLL (Dynamic Link Library). Суть заключается в следующем: часто повторяющиеся функции, вызовы переносятся в отдельный файл с расширением *.dll и далее данный файл загружается в оперативную память для того, чтобы использовать необходимые функции. Важной особенностью при создании DLL является подбор определённых функций, которые выносятся в DLL-файл. Работа программ в режиме пользователя тесно связана с взаимодействием интерфейсов WiinAPI и технологии DLL (можно сказать, что WinAPI построен на DLL). При этом некоторая работа мжет быть выполнена в режиме пользователя (особенности работы WinAPI, волокна). В DLL-библиотеках сосредоточены сами вызовы WinAPI.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]