Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПО верхнего уровня( 8 первых вопросов).docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
98.52 Кб
Скачать

Общий протокол межброкерного взаимодействия (giop)

GIOP (General Inter-ORB Protocol) — абстрактный протокол в стандарте CORBA, обеспечивающий интероперабельность брокеров. Стандарты, связанные с протоколом выпускает Object Management Group (OMG). Архитектура GIOP включает несколько конкретных протоколов:

  1. Internet InterORB Protocol (IIOP) (Межброкерный протокол для Интернет) — протокол для организации взаимодействия между различными брокерами, опубликованный консорциумом OMG. IIOP используется GIOP в среде интернет, и обеспечивает отображение сообщений между GIOP и слоем TCP/IP.

  2. SSL InterORB Protocol (SSLIOP) — IIOP поверх SSL, поддерживаются шифрование и аутентификация.

  3. HyperText InterORB Protocol (HTIOP) — IIOP поверх HTTP.

Ссылка на объект (Corba Location)

CorbaLoc (англ. Corba Location) — является строковой ссылкой на объект технологии CORBA, подобной URL.

Все реализации CORBA должны поддерживать как минимум два варианта OMG URL: corbaloc: и corbaname:. Их назначение в том, чтобы предоставить человеку способ читать и править ссылку, посредством которой можно получить ссылку на объект CORBA.

Пример corbaloc:

corbaloc::160.45.110.41:38693/StandardNS/NameServer-POA/_root

Реализация CORBA может предоставлять поддержку форматов «http:», «ftp:» и «file:». Назначение этих форматов в том, чтобы указать способ, откуда взять строковое представление ссылки на объект CORBA.

Список брокеров (corba orBs)

  • Borland Enterprise Server, VisiBroker Ed.[1] — CORBA 2.6-совместимый коммерческий ORB от Borland, поддерживает Java и C++.

  • MICO[2] — свободный (LGPL) ORB с поддержкой C++.

  • omniORB[3] — свободный (LGPL) ORB для C++ и Python.

  • ORBit2[4] — свободный (LGPL) ORB для CC++ и Python.

  • JacORB[5] — свободный (LGPL) ORB, написан на Java.

  • TAO[6] — The ACE ORBоткрытый ORB для C++.

  • Orbacus[7] — коммерческий ORB для C++Java от IONA Technologies.

  • Orbix — коммерческий ORB от IONA Technologies.

  • PolyORB — ORB от AdaCore для языка программирования Ada. Есть как свободная, так и коммерческая версии.

См. также

  • Internet Communications Engine

  • ILU

  • Component Object Model

Примечания

  1.  CORBA Environment for Distributed Processing & Computing Applications — from Borland

  2.  MICO CORBA

  3.  Проект omniORB на сайте SourceForge.net

  4.  ORBit2

  5.  JacORB

  6.  Real-time CORBA with TAO (The ACE ORB)

  7.  Products — Orbacus — Embeddable CORBA ORB — Progress Software | Progress Software

Ссылки

  • OMG CORBA 3

  • Официальный сайт CORBA

5.DCOM – Distributed COM

DCOM

DCOM (англ. Distributed COM) — расширение Component Object Model для поддержки связи между объектами на различных компьютерах по сети.

Принцип работы

Для создания объекта на удалённой машине, библиотека COM вызывает менеджер управления сервисами (SCM) локального компьютера, который связывается с SCM сервера и передаёт ему запрос на создание объекта. Имя сервера может задаваться при вызове функции создания объекта или храниться в реестре.

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

Для выполнения маршалинга и демаршалинга необходимо иметь точное описание метода, включая все типы данных и размеры массивов. Для описания используется язык описания интерфейсов (IDL), входящий в стандарт DCE RPC. Полученные файлы описания компилируются специальным компилятором IDL в исходный код на языке Си, производящий маршалинг и демаршалинг для указанных интерфейсов. Код, запускаемый на стороне клиента, называется «прокси», на стороне объекта – «стаб» и загружается библиотекой COM по необходимости.