- •Задачи и интерфейсы Unix-подобных систем.
- •2.Структура ядра ос Linux.
- •3. Процессы в ос Linux. Общие понятия.
- •4. Процессы в ос Linux. Этапы создания процесса.
- •5. Взаимодействие процессов в ос Linux.
- •6. Реализация потоков в ос Linux.
- •7. Планирование в ос Linux.
- •8.Загрузка в ос Linux
- •13.Подкачка в ос Linux.
- •14.Алгоритм замещения страниц в ос Linux.
- •15.Ввод-вывод в ос Linux. Общие понятия.
- •17. Файловые системы в ос Linux. Общие понятия.
- •18. Файловые системы в ос Linux. Файловая система Ext2.
- •19. Файловые системы в ос Linux. Файловая система Ext3.
- •20. Файловые системы в ос Linux. Файловая система nfs.
- •21.Архитектура ос windows nt/2000/xp
- •22. Архитектура ос windows vista
- •23.Структура пользовательского режима. Программный интерфейс Win32 api.
- •24.Реестр ос Windows Vista.
- •25. Реализация объектов в oc windows Vista. Структура объектов.
- •26. Реализация объектов в oc windows Vista. Типы объектов.
- •27. Реализация объектов в oc windows Vista. Пространство имён.
- •Структура пространства имен
- •28. Задания, процессы, потоки, волокна в oc windows Vista.
- •29. Межпроцессное взаимодействие в oc windows Vista.
- •30. Реализация процессов и потоков в oc windows Vista.
- •31. Планирование в oc windows Vista. Условия вызова планировщика.
- •32. Планирование в oc windows Vista. Система приоритетов.
- •33. Планирование в oc windows Vista. Условия изменения приоритетов.
- •34. Технология dll. Структура dll-библиотеки. Наиболее важные dll-библиотеки.
- •35. Технология dll. Преимущества и недостатки dll. Win32 и dll
- •38. Конфигурация виртуального адресного пространства для пользовательского
- •39. Реализация, поддержка, особенности виртуальной памяти в oc windows Vista.
- •40. Реализация управления памятью в oc windows Vista. Обработка страничных
- •41. Алгоритм замещения страниц в oc windows Vista.
- •42. Управление физической памятью в oc windows Vista.
- •44. Файловая система fat. Загрузочный сектор.
- •45. Файловая система fat. Таблица размещения файлов.
- •46. Файловая система ntfs. Структура тома.
- •47. Файловая система ntfs. Структура главной файловой таблицы mft
- •48. Файловая система ntfs. Файловая запись mft для малого и большого файла.
- •49. Файловая система ntfs. Файловая запись mfTдля малого и большого каталога.
- •50. Файловая система ntfs. Файлы метаданных.
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.
