Автоматизированные системы управления. Введение и нормативные документы. Назначение, состав и структура АС. Производственное предприятие как объект управления. Технологический процесс как объект управления, страница 62

Обмен по DDE основан на использовании библиотеки управления динамическим обменом данными DDEML (Dynamic Data Exchange Management Library), входящей в состав ОС Windows и выполненной как обычная DLL-библиотека. Данный обмен возможен только между приложениями, в которых реализованы его функции. Связь между двумя программами можно установить таким образом, что изменения в одном приложении будут отражаться во втором. Например, если изменять значение в электронной таблице, то во втором приложении данные обновятся автоматически и отобразят выполненные изменения. Кроме того, с помощью DDE можно из одного приложения управлять другими приложениями.

Динамический обмен можно организовать как между приложениями, запущенными на одном компьютере, так и между приложениями, запущенными на сетевых компьютерах – обмен по Network DDE.

Архитектура «клиент-сервер»

Архитектура «клиент-сервер» является доминирующий технологией распределенной обработки данных.

Клиентом и сервером будем называть процессы (программы или приложения), работающие одновременно на одном или разных сетевых компьютерах, и взаимодействующих между собой определенным образом.

Клиент посылает серверу запрос на получение данных или выполнение какой-либо работы: например запрос к серверу базы данных, задание серверу резервного копирования дисков и т.п. Сервер, получив от клиента запрос, выполняет соответствующие действия и посылает клиенту ответ. Например, сервер базы данных находит нужные записи и посылает их клиенту. Сервер резервного копирования вводит в действие механизм выгрузки данных на магнитную ленту или магнитооптическое дисковое устройство и сообщает клиенту о запуске процедуры.

Процедура обмена между клиентом и сервером, состоящая из трех действий: посылка запроса, выполнение запроса, прием ответа, - называется транзакцией. Транзакция называется завершенной, если выполнены все три действия. Если же на одном из трех этапов произошел сбой, транзакция останется незавершенной. Если транзакция не завершилась – происходит откат к состоянию данных до транзакции. За правильное выполнение отката транзакции отвечает сервер. Например, если сервер базы данных получил от клиента запрос на обновление записей в нескольких файлах и перед аварийным отключением электропитания успел выполнить только часть работы, после восстановления ему необходимо восстановить состояние базы данных на момент начала незавершенной транзакции.

Топология системы с архитектурой "клиент-сервер", может быть различной: система, состоящая из одного клиента и одного сервера; в системе может быть несколько клиентов, работающих с одним сервером, или несколько клиентов, работающих одновременно с несколькими серверами.

Приложение может иметь либо только одну из функций: функцию клиента или сервера, либо обе функции, т.е. выступать и в качестве клиента и в качестве сервера. Приложения, использующие технологию динамического обмена данных DDE, выступают как клиенты или серверы (или одновременно как клиенты и серверы). При этом взаимодействие между ними - это ни что иное, как транзакции.

Основные режимы и команды обмена по DDE

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

Имеется три всегда используемых режима связи:

1.  Режим REQUEST. Для DDE-клиента это режим запроса данных у сервера, а для DDE-сервера – режим ответа (посылки данных по запросу клиента).

2.  Режим POKE. В этом режиме DDE-клиент управляет данными на сервере, а DDE-сервер изменяет значения по командам клиента.

3.  Режим ADVISE. В этом режиме DDE-клиент принимает данные, посылаемые сервером, а DDE-сервер посылает данные по своей инициативе.