Описание межпрограммного протокола – DDE
Развитие механизмов взаимодействия приложений друг с другом протекало постепенно. В первых версиях операционной системы Windows для организации обмена данными между потоками различных приложений использовался механизм DDE (Dynamic Data Exchange – динамический обмен данными). Протокол DDE применялся также в первых человеко-машинных интерфейсах в качестве механизма разделения данных между прикладными системами и устройствами типа ПЛК.
Механизм DDE основан на пересылке данных через буфер обмена Windows.
Буфер обмена – это область памяти, предоставляемая операционной системой для обмена данными между приложениями. В Windows существуют специальные средства для работы с этим буфером. К ним относятся:
- функции помещения данных в буфер и извлечения данных из буфера;
- функции проверки наличия данных в буфере;
- предусмотрены 25 встроенных в операционную систему форматов данных (изображение, фрагмент текста, звук и т.д.);
- имеется возможность создания своих типов данных;
- имеется возможность обмениваться командами.
В настоящее время единственным преимуществом DDE является поддержка этого механизма обмена данными во всех версиях MS Windows. Кроме того, механизм DDE очень важен для работы графического интерфейса пользователя, т.к. с помощью DDE осуществляются такие операции, как копирование информации, перенос ее из одного окна в другое и т.д.
К недостаткам DDE относятся:
- низкая скорость обмена данными;
- низкая надежность, в частности, за счет того, что буфер обмена доступен одновременно всем выполняющимся приложениям.
До последнего времени DDE оставался основным механизмом, используемым для связи с внешним миром в открытых программных системах, в частности, в ИСПиУ. Но он не совсем пригоден для обмена информацией в реальном масштабе времени из-за своих ограничений по производительности и надежности.
Для преодоления недостатков DDE, прежде всего для повышения скорости обмена, разработчики предложили свои собственные протоколы, такие как AdvancedDDEи FastDDE. В основе этих протоколов лежит пакетирование информации, что позволяет ускорить обмен данными. Но такие частные решения приводят к ряду проблем:
- для каждой программной системы необходим свой собственный драйвер для поставляемого на рынок оборудования;
- в общем случае две системы не могут одновременно иметь доступ к одному драйверу, поскольку каждая из них поддерживает обмен именно со своим драйвером.
Взамен семейства протоколов обмена, основанных на DDE, компания Microsoft предложила более эффективное и надежное средство передачи данных между процессами – OLE.
Дата добавления: 2018-11-26; просмотров: 1158;