Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
os5.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
494.08 Кб
Скачать

5.3.5.4.5. Иерархия средств ole

OLE - это набор интерфейсов, позволяющих клиенту и серверу обмениваться данными.

Базовый протокол обмена – это протокол UTD - Uniform Data Transfer (Унифицированная передача данных).

UTD - это расширение протокола обмена через Clipboard, предусматривающее механизмы уведомления об изменении данных и переговоры о форматах.

При этом нет ограничений на размер данных, т.к. можно передавать и через диск, или пользоваться передачей ссылки, а не самих данных.

Самое важное в механизмах OLE - это отказ от протокола DDE, основанного на механизме передачи сообщений, в пользу протокола COM - Component Object Model, основанного на механизме удаленных процедурных вызовов - RPC Remote Procedure Call.

COM - это протокол низкого уровня OLE, предусматривающий набор стандартов для реализации объектов, способы коммуникации объектов друг с другом и набор функций API.

СОМ - это технология, которая лежит под OLE, но сама не является частью OLE.

СОМ - это способ реализации объектов на уровне ОС. Это означает, что объекты СОМ могут быть интегрированы в саму ОС и действовать в качестве естественного ее расширения.

Если объекты СОМ располагаются в DLL, то они становятся доступными из различных языков, таким образом, объекты СОМ разрабатываются для преодоления границ между программами, языками, операционными системами и машинами.

Примером конкурентной технологии является технология CORBA.

Объекты СОМ могут размещаться либо в DLL, либо в исполняемых модулях, или, со временем, на удаленных машинах. Когда они размещены в DLL, то известны под именем серверов внутренней обработки.

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

Взаимосвязь уровней представлена ниже:

Вопрос (

)Вопрос

5.3.5.4.6. Недостатки ole

Вопрос (

  1. чрезвычайно сложная технология для разработчиков;

  2. некоторая несогласованность в интерфейсах разных приложений;

  3. некоторое расхождение в понятиях «объекта» в OLE и ООП;

  4. ненасытность в отношении аппаратных ресурсов;

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

)Вопрос

5.3.5.4.7. Трехуровневая адресация ole-объекта

Как уже было сказано, разработка приложения, поддерживающего протокол OLE, является чрезвычайно сложной задачей. Сложность повышается, если отсутствуют внятные описания этого протокола.

Вспомним трехуровневую адресацию данных в протоколе DDE.

В OLE также поддерживается трехуровневая адресация объектов следующего вида:

Вопрос (

  1. Класс OLE-объекта определяет приложение-сервер, которое создало OLE-объект. Класс должен быть определен как для связанного, так и для встроенного объекта.

  2. Документ OLE-объекта определяет файл-источник, который содержит данные для объекта. Документ должен быть определен обязательно только для связанного объекта.

  3. Элемент (item) OLE-объекта определяет, какая часть OLE-документа содержит данные для связывания или встраивания. Элемент используется если необходимо использовать меньшую часть данных, чем целый файл документа.

)Вопрос

Итак, были рассмотрены следующие средства внутренних коммуникаций:

  1. Неименованные каналы;

  2. Сообщения;

  3. Clipboard;

  4. DDE;

  5. OLE.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]