Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
HOR / TOTAL.DOC
Скачиваний:
10
Добавлен:
16.04.2013
Размер:
312.83 Кб
Скачать

2.3. Пример Брокеров Объектных Запросов.

Доступно широкое множество способов реализации конкретных ORB-ов. Далее будут приведены примеры таких реализаций. Следует иметь ввиду, что конкретныйORB может быть реализован сразу несколькими способами.

ORB, включаемый в клиентское и серверное приложение.

Если имеется подходящий механизм коммуникаций, то возможна реализация ORB-а в виде набора подпрограмм как со стороны клиента, так и со стороны реализации объекта. Вызовы методов могут транслироваться в работу со средствами взаимодействия процессов (Inter Process Communication - IPC).

ORB, выполненный в виде сервера.

С целью обеспечения централизованного сбора и управления всевозможной информацией, ORB может быть реализован в виде отдельного приложения. Взаимодействующие приложения устанавливают контакт сORB-ом посредством нормальных механизмовIPC.

ORB как часть системы.

Для повышения надежности, защиты данных и достижения лучшей производительности ORB может быть реализован как часть операционной системы. При этом ссылки на объект могут быть сделаны постоянными, таким уменьшая образом время, необходимое для обработки каждого запроса. При реализацииORB-а как части операционной системы возможны всевозможные виды оптимизации, такие как избежание кодирования и декодирования данных, если клиент и сервер находятся на одной и той же машине.

ORB, основанный на библиотеках.

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

3. Структура системы.

3.1. Уточнение деталей реализации.

Учитывая специфику задачи и возможности операционной системы, разрабатываемая система должна иметь следующую структуру, показанную на рисунке 3-1.

Рисунок 3-1. Структура системы.

Ядро системы реализовано в виде сервиса. В ОСWindows NT под сервисом понимается приложение, которое запускается несколько особым способом и имеющее свои права для доступа к различным ресурсам. Сервис может быть запущен автоматически системой во время старта, либо с помощью специальных системных функций. В последнем случае разрешается запуск с удаленного компьютера. Набор данных характеристик делает реализацию ядра в виде сервиса наиболее оптимальной.

Библиотека для языка C представляет из себя динамически связываемую библиотеку(Dynamic Link Library), которая экспортирует функции и переменные, оговоренные в спецификации отображения для языкаC. Внутренняя часть библиотеки написана на языкеC++. Библиотеки для языковC++ иObject Pascal являются статическими и представляют просто объектную надстройку над библиотекой для языкаC. В результате выбора такой схемы исключается написание избыточного повторяющегося кода для каждого из языков, автоматически гарантируется когерентность всех библиотек и появляется дополнительная возможность взаимодействия с системой приложения, написанного на любом языке программирования, компилятор с которого способен осуществлять вызовы функций из динамически связываемых библиотек.

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

Соседние файлы в папке HOR