Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции ОС.docx
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
194 Кб
Скачать
☆

Диспетчер объектов

Система Windows написана в среде объектно-ориентированного программирования.

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

В ОС Windows у диспетчера объектов имеется база объектов, которые можно посмотреть с помощью программы WinObj, Process Explorer и др.

При разработке диспетчера объектов Windows к нему предъявлялись следующие требования:

1) должен быть реализован унифицированный механизм, который связывал бы управление ресурсами через объекты;

2) реализовать защиту объектов (а значит, ресурсов, которые им соответствуют) по требованиям к определенному классу безопасности (C2);

3) предоставить механизм, который бы позволял вести учет использования объектов и предоставляемые им ресурсы. Ввести наименования объектов и их типов, которые позволяли бы создавать новые объекты и новые типы объектов в зависимости от появления новых ресурсов;

4) должен быть применен механизм, который позволял бы обращаться к объектам и соответствующих подсистем окружения, т.е. API;

5) определить механизм, каким образом объект ()содержимое объекта) хранится в реальной памяти.

Объекты в Windows бывают исполнительные (Executive objects) и объекты ядра (Kernel Objects). Ядро входит в исполнительную систему. Объекты исполнительной системы (подсистема ввода-вывода, и т.д.) реализуются таким образом, что они невидимы приложением. Объекты ядра непосредственно создают базу для объектов исполнительной системы по управлению ресурсами, т.е. могут инкапсулировать несколько объектов ядра (слайд 44).

Объекты исполнительной системы

Как правило, объекты исполнительной системы создаются подсистемами окружения в интересах пользовательских приложений или компонент ОС. Например, для создания файла приложение вызывает CreateFile, который реализован в DLL подсистемы Windows и Kernel32.dll. После проверки инициализации CreateFile вызывается ntcreatefile – внутренняя функция ядра, в которой создается объект – файл исполнительной системы. Другие объекты, типа мьютекса и семафора, также создаются на основе выполнения внутренних функций ядра.

На слайде 45 показаны основные объекты, которые имеет исполнительная система Windows. Например, объект «процесс», который связывает ресурсы, отводимые процессу, с некоторой структурой данных. Объект «поток», объект «семафор» - аналогично.

Примечание: мьютекс, семафор – см. лекции в электронном виде.

Структура объектов в Windows

В Windows реализована следующая структура объекта:

1) заголовок

2) тело.

Заголовками управляет диспетчер объектов, а телами – колмпоненты исполнительной системы.

Заголовок также указывает на список процессов, которые открыли этот объект, который описывает какие-то ресурсы.

Кроме прочего, заголовок имеет указатель на специальный объект, который называется объектом типа. Объект типа – объект, который хранит информацию, общую для всех объектов данного типа. Слайд 45 – заголовок, тело объекта и объект типа.