
- •5. Управление коммуникациями в ос
- •5.1. Общая характеристика коммуникаций
- •5.2. Концепции технологии Клиент-Сервер
- •5.3. Внутренние коммуникации между процессами
- •5.3.1. Неименованные каналы
- •5.3.2. Обмен сообщениями
- •5.3.3. Обмен данными через Clipboard
- •1. Подготовка данных для передачи в Clipboard;
- •1. Открытие Clipboard
- •2. Проверка наличия требуемого формата данных в Clipboard
- •3. Чтение данных из Clipboard
- •4. Закрытие Clipboard
- •5.3.4. Обмен данными по технологии dde
- •5.3.5. Обмен данными по технологии ole
- •5.3.5.1. Введение
- •5.3.5.2. Понятие документ-ориентированной среды
- •5.3.5.3. Принципы ole
- •5.3.5.4. Характеристика технологии ole
- •5.3.5.4.1. Ole реализует концепцию визуального редактирования - редактирования на месте.
- •5.3.5.4.2. Другой особенностью ole является возможность приложения предоставить ряд своих функций (например, проверку орфографии) для доступа из других приложений - ole-Automation.
- •5.3.5.4.3. Ядром ole стал способ хранения данных в составном документе.
- •5.3.5.4.4. Дополнительные возможности ole:
- •5.3.5.4.5. Иерархия средств ole
- •5.3.5.4.6. Недостатки ole
- •5.3.5.4.7. Трехуровневая адресация ole-объекта
- •5.4. Внешние коммуникации
- •5.4.1. Протоколы тср/ip
- •5.4.1.1. Определение и достоинства протокола tcp/ip
- •5.4.1.2. Архитектура tcp/ip
- •5.4.1.3. Соответствие между моделями tcp/ip и iso osi
- •5.4.2. Протокол ip
- •5.4.2.1. Структура заголовка ip-пакета
- •5.4.3. Протокол udp
- •5.4.4. Протокол tcp
- •5.4.4.1. Структура tcp-сегмента
- •5.4.4.2. Этапы tcp-сеанса
- •5.4.5. Программные средства поддержки сетей
- •5.4.5.1. Состав программных средств поддержки сетей
- •1. Почтовые ящики
- •2. Именованные каналы
- •3. Удаленные вызовы процедур
- •4. Протокол NetBios
- •5.4.5.2. Программные средства работы с сокетами
- •5.4.6. Сетевое программное обеспечение уровня приложений
- •5.4.6.1. Протокол ftp
- •5.4.6.2. Протокол smtp
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
Вопрос (
чрезвычайно сложная технология для разработчиков;
некоторая несогласованность в интерфейсах разных приложений;
некоторое расхождение в понятиях «объекта» в OLE и ООП;
ненасытность в отношении аппаратных ресурсов;
трудности перевода на сетевую технологию, связанные с изначальной ориентированностью протокола UTD на одиночную машину, и состоящие в больших объемах передаваемых данных.
)Вопрос
5.3.5.4.7. Трехуровневая адресация ole-объекта
Как уже было сказано, разработка приложения, поддерживающего протокол OLE, является чрезвычайно сложной задачей. Сложность повышается, если отсутствуют внятные описания этого протокола.
Вспомним трехуровневую адресацию данных в протоколе DDE.
В OLE также поддерживается трехуровневая адресация объектов следующего вида:
Вопрос (
Класс OLE-объекта определяет приложение-сервер, которое создало OLE-объект. Класс должен быть определен как для связанного, так и для встроенного объекта.
Документ OLE-объекта определяет файл-источник, который содержит данные для объекта. Документ должен быть определен обязательно только для связанного объекта.
Элемент (item) OLE-объекта определяет, какая часть OLE-документа содержит данные для связывания или встраивания. Элемент используется если необходимо использовать меньшую часть данных, чем целый файл документа.
)Вопрос
Итак, были рассмотрены следующие средства внутренних коммуникаций:
Неименованные каналы;
Сообщения;
Clipboard;
DDE;
OLE.