- •Основные понятия и определения.
- •Эволюция ос.
- •2.Архитектура ос.
- •3.Микроядерная архитектура эвм.
- •Основные концепции управления ос.
- •4. Процессор. Управление процессами.
- •5.Описатели процесса.
- •6. Классификация ос по признаку поддержки процессов и потоков.
- •6 Марта 2012 г.
- •7. Управление задачами.
- •16 Марта 2012 г.
- •8. Асинхронные параллельные процессы.
- •9.Семафоры.
- •Мониторы.
- •10. Тупики.
- •Управление памятью.
- •11.Физическая память.
- •12.Связное и несвязное распределение памяти.
- •13.Виртуальная память.
- •14. Преобразование адреса виртуальной памяти в реальный адрес осуществляется по схеме:
- •15.Управление виртуальной памятью, стратегии управления.
- •16. Кэширование данных.
- •Принцип действия кэш–памяти.
- •17.Способы отображения оп на кэш-память.
- •18. Ввод/вывод. Управление файлами и файловой системой.
- •19.Логическая организация фс.
- •Логическая организация файлов.
- •20. Физическая организация фс.
- •Права доступа к файлу.
- •Часть 2. Unix
- •Имена файлов.
- •Индексный дескриптор файла и жесткие ссылки.
- •2. Типы файлов.
- •Создание и монтирование фс.
- •Структура фс ext2fs.
- •3.Структура дискового раздела.
- •Индексные дескрипторы файлы и системы адресации файлов.
- •4.Структура системы и ядро классической Unix.
- •5.Управление процессами.
- •История.
- •Часть 3.
- •1.Структура ос Windows.
- •2.Подсистема win32.
- •3.Объекты, менеджер объектов.
- •Объекты ядра.
- •Структура объектов.
- •Описатели объектов.
- •Именование объектов.
- •Совместное использование объектов.
- •Реестр.
- •Поиск файлов по имени.
- •Точки повторного анализа.
- •5.Совместный доступ к файлу.
- •Производительность фс.
- •Надежность фс.
- •Поддержка нескольких фс.
2.Подсистема win32.
Взаимодействие между приложениями и ОС осуществляется с помощью системных вызовов, однако, приложение не может произвести системный вызов напрямую, вместо этого оно должно воспользоваться программным интерфейсом win32 API – основный интерфейс программирования в ОС Windows. Функции – документированные вызываемые подпрограммы, например CreateProcess, CreateFile. Состав – серверный процесс csrss.exe, драйверы режима ядра win32k.sys, dll-модули подсистемы. Приложение, ориентированное на win32 API, может работать практически на всех версиях Windows. При запуске процесса все требуемые динамические библиотеки отображаются в виртуальном адресном пространстве, а для быстрого вызова используется специальный вектор передачи.
При вызове приложений одной из win32-функций может возникнуть одна из 3 ситуаций:
Функция полностью выполняется внутри библиотеки.
Для выполнения функции привлекается сервис csrss.exe.
Вызов транслируется в системный вызов, который обычно обрабатывается в модуле ntdll.dll.
В первый версиях практически все вызовы выполняют по второй ситуации. После того, как существенная часть кода была перенесена в ядро, то вызовы идут, как правило, по третьей ситуации. Помимо перечисленных библиотек system32 содержит огромное количество других библиотек. В настоящее время количество вызовов API составляет несколько десяткой тысяч. Список экспортированных функций можно посмотреть с помощью утилиты depends, которая содержится в Platform SDK.
25 мая 2012 г.
3.Объекты, менеджер объектов.
Для слаженной работы системы ресурсов Windows создает объекты, управление которыми происходит с помощью менеджера объектов. Когда приложение открывает файл, создает поток или семафор, оно получает описатель объекта. Например, h Semaphore = CreateSemaphore (NULL, 0, MaxCount, “SemaphoreName”) – создается семафор и возвращается ссылка на объект.
Объекты – это абстрактная концепция, которая активно используется Windows для регулирования системных ресурсов. Наличие таких объектов является достоинством ОС. Преимущества:
Это единый интерфейс ко всем системным ресурсам.
Использование объектов дает возможность обновлять функциональность системы, не затрагивая программного интерфейса.
Удобство с точки зрения системной безопасности. Каждый объект имеет список прав доступа, который проверяется каждый раз, когда приложение создает свой описатель объектов.
Легко организовать совместный доступ к объектам, а также несложно отследить объекты, которые больше не используются.
Объекты ядра.
Поддержка объектов ядра выполняется ядро и исполнительной системой. Помимо объектов ядра существуют объекты для управления окнами (user) и графикой (gdi). Они уже реализуются подсистемой поддержки окон и графики. Ядро поддерживает базовые объекты двух видов: объекты диспетчера – события, мьютексы, семафоры, потоки ядра, таймеры и т.д.; управляющие объекты – DPC, APC, прерывания, процессы, профили и т.д.
Над объектами ядра находятся объекты исполнительной системы, каждый из которых инкапсулирует один или несколько объектов ядра. Они предназначены для управления памятью, процессами и межпроцессным обменом. Экспортируются в распоряжение приложений через win32-функции. К ним относятся процесс, поток, открытый файл, семафор, мьютекс, маркер доступа и др.
Внешние отличия объектов ядра от user и gdi состоит в наличии атрибутов защиты.
Объект представляет собой блок памяти в виртуальном адресном пространстве и содержит информацию об объекте в виде структуры данных. Объекты создаются в процессе загрузки и функционирования ОС и теряются при перезагрузке и выключении питания. Содержимое доступно только ядру.