|
Типы объектов
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 Системне програмування Системний аналіз Тестологія Тестування ПЗ Фреймворки Штучний інтелект
|
Типы объектов
В заголовке объекта хранятся данные, формат которых одинаков для всех объектов, но значения могут быть разными. Например, у каждого объекта есть уникальное имя и может быть уникальный дескриптор защиты. Однако, есть и некоторые данные, которые постоянны для всех объектов данного типа. Например, при открытии описателя объекта данного типа можно выбирать права доступа из некоторого набора прав, специфичных для этого типа. Исполнительная система NT поддерживает (помимо других) права доступа "завершить" и "приостановить" для объектов-потоков и права доступа "чтение", "запись", "дописывание к концу" и "удаление" для файловых объектов. Другим примером типозависимого атрибута является синхронизация, или, коротко говоря, способность потока ожидать установления объектов некоторых типов в состояние "свободен". В целях экономии памяти и сокращения расходов на управление объектами диспетчер объектов задает эти статические, типозависимые атрибуты один раз при создании нового типа объектов. Для хранения этих данных он использует специальный объект, называемый типовым объектом (type object). Помимо этого, типовой объект связывает друг с другом все объекты одного типа, как показано на рис. 3-2, что позволяет диспетчеру объектов при необходимости перебрать их все. Пользовательский режим не имеет доступа к типовым объектам, так как диспетчер объектов не предоставляет никаких сервисов для них. Однако некоторые определяемые ими атрибуты видимы посредством базовых сервисов и функций API Win32. Атрибуты, хранящиеся в телах типовых объектов, приведены в табл. 3-4. Рис. 3-2. Объекты-процессы и типовой объект "процесс". Таблица 3-2. Стандартные атрибуты заголовка объекта
Синхронизация (synchronization), один из атрибутов, видимых приложениям Win32, указывает на то, что поток может синхронизировать свое выполнение, ожидая, пока не изменится состояние объекта. Поток синхронизируется со следующими о бъектами исполнительной системы: процесс, поток, файл, событие, пара событий, семафор, мутант и таймер. Объекты секция, порт, маркер доступа, каталог объектов, символическая связь, профиль и параметр реестра не поддерживают синхронизацию. Последний атрибут в списке — методы — состоит из набора внутренних процедур, аналогичных конструкторам и деструкторам C++, т.е. процедурам, которые автоматически вызываются при создании и разрушении объекта. Диспетчер объектов развивает эту идею, вызывая методы объектов и в других ситуациях, таких как открытие и закрытие описателя объекта или попытка изменения параметров защиты объекта. Некоторые типы объектов определяют методы, а некоторые нет, в зависимости от назначения типа. Методы, иногда еще называемые виртуальными методами (virtual methods), описаны в разд. 3.2.3. Итак, объекты исполнительной системы NT состоят из двух частей: заголовка объекта, управляемого диспетчером объектов, и тела объекта, которое управляется компонентом ОС, создавшим данный тип. Одним из атрибутов заголовка объекта является указатель на типовой объект — структуру, определяющую статические атрибуты объектов данного типа. Новый тип объектов может быть определен любым компонентом исполнительной системы NT, и каждый компонент предоставляет сервисы для определенных им типов объектов. Зверніть увагу на додаткові посиланняЯкщо вас цікавить...Головний розділзагрузка...
|
Сторінки, близькі за змістом
|
|
Copyright © 2008—2026 Портал Знань.
При використанні матеріалів посилання, для інтернет-ресурсів — гіперпосилання, на Znannya.org обов'язкове.
Зв'язок
|
НТУУ "КПІ" Інженерія програмного забезпечення КПІ Лабораторія СЕТ |
|