logo search
Ответы_ОСиСП

Модель программного интерфейса ос windows. Понятие объекта ядра и описателя объекта ядра операционной системы Windows. Нотация программного интерфейса.

Windows API – это системный интерфейс программирования в семействе операционных систем Microsoft Windows. Каждая операционная система реализует разное подмножество WinAPI. Windows API включает тысячи вызываемых функций, которые сгруппи­рованы в следующие основные категории: базовые сервисы (Base Services); сервисы компонентов (Component Services); сервисы пользовательского интерфейса (User Interface Services); сервисы графики и мультимедиа (Graphics and Multimedia Services); коммуникационное взаимодействие и совместная работа (Messaging and Collaboration); сети (Networking); Web­сервисы (Web Services).

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

Когда Вы вызываете функцию, создающую объект ядра, она возвращает описатель, идентифицирующий созданный объект. Описатель следует рассматривать как "непрозрачное" значение, которое может быть использовано любым потоком Вашего процесса. Этот описатель Вы передаете Windows-функциям, сообщая системе, какой объект ядра Вас интересует.

При инициализации процесса система создает в нем таблицу описателей, используемую только для объектов ядра. Таблица описателей, принадлежащая процессу – это просто массив структур данных. Каждая структура содержит указатель на какой-нибудь объект ядра, маску доступа и некоторые флаги.

Windows API подчиняется определенным правилам – нотации – соглашении об именовании констант, типов данных, процедур. API использует венгерскую нотацию: в названии переменной кодируется ее тип. В настоящее время венгерская нотация не используется, т.к. если не известно значение переменной, ее тип ни о чем не скажет. Частью нотации является способ именования процедур: Глагол-Существительное.