Объекты. Преимущества использования объектов. Структура объекта.



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

Достоинства.

1) единый интерфейс ко всем системным ресурсам и структурам данных, таким, как процессы, потоки, семафоры и т.д. Именование объектов и доступ к ним осуществляются по одной и той же схеме

 2) очень удобно с точки зрения системной безопасности. Каждый объект имеет список прав доступа, который проверятся каждый раз, когда приложение создает свой описатель объекта. Соответственно, все проверки, связанные с защитой, могут быть выполнены в одном модуле - диспетчере объектов (в соответствии с требованиями безопасности), с гарантией, что ни один процесс не может их обойти.

3) легко организовать совместный доступ к объектам, несложно отследить объекты, которые больше не используются, и т.д.

Объекты присутствуют почти во всех компонентах системы, особенно там, где есть данные, которые нужно разделять, защищать, именовать или сделать доступными.

Как показано на рис. 5.1, каждый объект имеет заголовок с информацией, общей для всех объектов, а также тело объекта, содержащее специфичные данные для конкретного объекта.

Рис. 5.1. Структура объекта

Счетчик ссылок на объект увеличивается на 1 при создании и открытии объекта, и уменьшается на 1 при его закрытии. Значение счетчика ссылок, равное нулю, означает, что объект больше не используется и выделенное ему адресное пространство ядра может быть освобождено. Наличие счетчика означает, что даже после завершения процесса, создавшего объект, этот объект может не быть разрушен (если его счетчик не обнулен).

Множество объектов делится на типы, поэтому у каждого объекта есть ссылка на объект типа, где содержатся атрибуты атрибуты, характерные для объектов данного типа. В состав компонентов объектов типа входит атрибут методов, указатели на внутренние процедуры для выполнения стандартных операций. Методы вызываются менеджером объектов. ОС Windows позволяет динамически создавать новые типы объектов.

Объекты. Преимущества использования объектов. Описатели объектов.

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

Достоинства.

1) единый интерфейс ко всем системным ресурсам и структурам данных, таким, как процессы, потоки, семафоры и т.д. Именование объектов и доступ к ним осуществляются по одной и той же схеме

 2) очень удобно с точки зрения системной безопасности. Каждый объект имеет список прав доступа, который проверятся каждый раз, когда приложение создает свой описатель объекта. Соответственно, все проверки, связанные с защитой, могут быть выполнены в одном модуле - диспетчере объектов (в соответствии с требованиями безопасности), с гарантией, что ни один процесс не может их обойти.

3) легко организовать совместный доступ к объектам, несложно отследить объекты, которые больше не используются, и т.д.

Объекты присутствуют почти во всех компонентах системы, особенно там, где есть данные, которые нужно разделять, защищать, именовать или сделать доступными.

Создание новых объектов, или открытие по имени уже существующих, приложение может осуществить при помощи Win32-функций, таких, как CreateFile, CreateSemaphore, OpenSemaphore и т.д. Это библиотечные процедуры, за которыми стоят сервисы Windows и методы объектов. В случае успешного выполнения создается 64-битный описатель – handler, и сохраняется в таблицу описателей процесса в памяти ядра. На эту таблицу есть ссылка из блока управления процессом, создавшему этот объект.

Из 64-х разрядов описателя 29 разрядов используются для ссылки на блок памяти объекта ядра, 3 - для флагов, а оставшиеся 32 - в качестве маски прав доступа. Маска прав доступа формируется на этапе создания или открытия объекта, когда выполняется проверка разрешений. Таким образом, описатель объекта - принадлежность процесса, создавшего этот объект.

Функции создающие объект, возвращают приложению не сам описатель, а индекс в таблице описателей. Это же значение передаётся функциям, которые принимают описатель в качестве аргументов.


Дата добавления: 2018-05-31; просмотров: 384; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!