Скачиваний:
73
Добавлен:
17.06.2016
Размер:
1.2 Mб
Скачать

20. Объектная модель corba

CORBA (Common Object Request Broker Architecture) – Общая Архитектура Брокера Объектных Запросов - это стандарт, набор спецификаций для промежуточного программного обеспечения (ППО, middleware) объектного типа.

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

Объектная модель OMG определяется в виде объектной модели - ядра (Core Object Model - COM) и совокупности расширений. Объектная модель - ядро - специфицирует некоторый набор базовых понятий. Примерами понятий COM являются объекты, операции, типы, отношение тип/подтип, наследование, интерфейс типа. Каждое расширение вводит дополнительный набор понятий. Расширяться может либо COM, либо уже существующие и согласованные расширения. При этом вводится понятие профиля, как некоторой комбинации COM, и одного или нескольких расширений, вместе поддерживающих определенную целевую архитектуру [3].

Объектная модель CORBA определяет взаимодействие между клиентами и серверами. Клиенты - это приложения, которые запрашивают сервисы, предоставляемые серверами. Объекты-серверы содержат набор сервисов, разделяемых между многими клиентами. Операция указывает запрашиваемый сервис. Интерфейсы объектов описывают множество операций, которые могут быть вызваны клиентами определенного объекта. Реализации объектов - это приложения, исполняющие сервисы, запрашиваемые клиентами [10].

Технология CORBA создана для поддержки разработки и развёртывания сложных объектно-ориентированных прикладных систем.

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

Рис. 1.6. Схема работы объектного брокера запросов

Спецификация CORBA разработана для обеспечения возможности интеграции совершенно различных объектных систем. На рис. 1.6 показана схема работы объектного брокера. Его задачей является предоставление механизма выполнения запроса, сделанного клиентом: поиск объекта, к которому относится данный запрос, передача необходимых данных, подготовка объекта к обработке. Интерфейс, с помощью которого клиент может запрашивать выполнение необходимых операций, не зависит от местонахождения объекта и языка программирования, с помощью которого он реализован. Клиент может запрашивать выполнение операций с помощью ORB несколькими способами. На рис. 1.7 показаны способы возможного взаимодействия объектов.

Рис. 1.7. Статический и динамический способы взаимодействия объектов с использованием ORB

Вызов операций разделяемого объекта-сервера может быть сделан статическим (IDL stub) и динамическим (Dynamic Invocation Interface) способами. Интерфейсы описываются, используя язык определения интерфейсов, получивший название OMG Interface Definition Language. В случае статического вызова описания интерфейсов отображаются в программный код на языках С, С++, Smalltalk. Информация об интерфейсах объектов может быть получена клиентом двумя способами: статически (compile time) и динамически (runtime). Интерфейсы могут быть также указаны с помощью службы репозитория интерфейсов (Interface Repository). Этот сервис представляет интерфейсы как объекты, обеспечивая доступ к ним в время работы приложения (runtime режиме).

Главная функция объектного адаптера, используемого для реализации объекта, – предоставление доступа к сервисам объектного брокера ORB. Объектный адаптер обеспечивает все низкоуровневые средства для связи объекта с его клиентами. Основными задачами объектного адаптера являются: генерация ссылок на удаленные объекты; вызов метода объекта, определенного в IDL; обеспечение безопасности взаимодействия; активация и деактивация объектов; установление соответствия между ссылками на удаленные объекты (proxy) и реальными экземплярами объектов; регистрация объектов.

Спецификация OMG CORBA определяет базовый объектный адаптер, который должен быть реализован во всех брокерах запросов. Basic Object Adapter (BOA) – это набор интерфейсов для создания ссылок на удаленные объекты, регистрации объектов, авторизации запросов и активизации приложений. Роль базового объектного адаптера в архитектуре CORBA иллюстрируется рис. 1.8.

Рис. 1.8. Схема получения запроса

Соседние файлы в папке К экзамену