|
Каталоги
ADO в Delphi AJAX Android C++ CakePHP CMS COM CSS Delphi Flash Flex HTML Internet Java JavaScript MySQL PHP RIA SCORM Silverlight SQL UML XML Бази даних Веб-розробка Генетичні алгоритми ГІС Гітара Дизайн Економіка Інтелектуальні СДН Колір Масаж Математика Медицина Музика Нечітка логіка ООП Патерни Подання знань Розкрутка сайту, SEO САПР Сесії в PHP Системне програмування Системний аналіз Тестологія Тестування ПЗ Фреймворки Штучний інтелект
|
Знання
→
Архитектура пк
→
ДИСПЕТЧЕР ОБЪЕКТОВ И КОНТРОЛЬ ДОСТУПА
→
Управление объектами
→
Имена объектов
Каталоги
При определении структуры имен объектов основным ограничением для разработчиков были файловые системы MS-DOS и POSIX, в которых существуют иерархические схемы имен файлов и каталогов. В исполнительной системе NT файлы и каталоги файлов представлены как объекты; таким образом, чтобы выполнять поиск файловых объектов, диспетчер объектов обязан понимать формат имен файлов. Следовательно, имеет смысл, чтобы имена объектов напо-минали имена файлов. Имена объектов NT имеют некоторые характеристики имен файлов как MS-DOS, так и POSIX. На рис. 3-3 изображена иерархия имен объектов NT в виде дерева. Обратите внимание, что корнем иерархического дерева является обратная косая черта ( \ ), как в MS-DOS. Листовые узлы представляют отдельные объекты, а промежуточные узлы — имена каталогов объектов. Для получения имени объекта следует начать из корня и пройти до данного объекта по всей иерархии. Как в MS-DOS и OS/2, для разделения имен при указании пути используется обратная косая черта. Объект-каталог объектов (object directory object) — это средство поддержания изображенной выше иерархической структуры имен диспетчером объектов. Он является аналогом каталога файловой системы и содержит имена других объектов, возможно, даже других каталогов объектов. Подсистема Win32 и другие подсистемы, равно как и компоненты исполнительной системы NT, могут создавать произвольные иерархии каталогов объектов для хранения именованных объектов, На рис. 3-4 показана обобщенная сводка важнейших, уникальных характеристик объекта-каталога объектов. На этом и других рисунках в данной книге тип объекта (object type) обозначает описываемый класс объектов. Атрибуты тела объекта (object body attributes) обозначают поля данных, хранящиеся в телах объектов этого типа. Сервисы (services) — это базовые системные сервисы, предоставляемые некоторым компонентом исполнительной системы NT для работы с атрибутами объекта. (Атрибуты из заголовка объекта не показаны, так как они одинаковы для объектов всех типов, Аналогично, универсальные объектные сервисы, описанные выше, работают с объектами всех типов). Рис. 3-3. Иерархия имен объектов. Рис. 3-4. Объект-каталог объектов5. Сервисы создания и открытия используются для создания каталогов объектов и открытия их описателей. После того, как поток открыл описатель каталога объектов (с доступом по записи), он может создавать другие объекты и помещать их в этот каталог. Сервис опроса позволяет просматривать список имен объектов, хранящихся в каталоге. Объект-каталог объектов содержит достаточно информации, чтобы транслировать имена объектов в указатели на сами объекты. Диспетчер объектов использует эти указатели для создания описателей объектов, которые он возвращает программам пользовательского режима. Каталоги объектов могут создаваться как кодом ядра, так и кодом пользо-вательского режима (таким как подсистемы). Например, диспетчер ввода-вывода создает каталог с именем \Device, в котором хранятся имена объектов, представляющих устройства ввода-вывода. Трио объектных сервисов создания, открытия и опроса часто встречается в исполнительной системе NT. Система ввода-вывода реализует сервис открытия файла для своих файловых объектов, а диспетчер объектов — сервис создания процесса для своих объектов-процессов. Хотя разработчики NT рассмат ривали возможность использования единого, виртуального сервиса создания объекта, такая процедура на С была бы очень сложной, так как набор параметров, необходимый для инициализации, к примеру, файлового объекта, заметно отличается от того, который нужен для инициализации объекта-процесса. Еди-ная процедура на С становилась бы все более сложной по мере добавления к системе новых типов объектов. Кроме того, при всяком вызове потоком объект-ного сервиса диспетчеру объектов пришлось бы нести дополнительные накладные расходы на определение типа объекта, на который ссылается описатель, и вызов соответствующей версии сервиса. По этим и другим причинам сервисы создания, открытия и опроса реализованы отдельно для каждого типа объектов. 5 Такое изображение объектов является упрощенной версией формата, предложенного Питером Кодом и Эдвардом Йордоном в книге Object-oriented Analysis (Englewood Cliffs, N. J.: Prentice-Hall, 1990). Зверніть увагу на додаткові посиланняЯкщо вас цікавить...Головний розділзагрузка...
|
Сторінки, близькі за змістом
|
|
Copyright © 2008—2026 Портал Знань.
При використанні матеріалів посилання, для інтернет-ресурсів — гіперпосилання, на Znannya.org обов'язкове.
Зв'язок
|
НТУУ "КПІ" Інженерія програмного забезпечення КПІ Лабораторія СЕТ |
|