Научная статья на тему 'Язык PIML. Реализация подключения удаленной переменной. Обработка событий'

Язык PIML. Реализация подключения удаленной переменной. Обработка событий Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
97
33
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
УДАЛЕННАЯ ПЕРЕМЕННАЯ / ОБРАБОТКА СОБЫТИЙ / PIML / PIME / REMOTE VARIABLE / EVENT HANDLING

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Хлебцов Николай Владимирович

В статье описаны трудности, возникающие при реализации межподсистем-ного обмена данными между элементами систем мониторинга инфраструктурных проектов, приводящие к снижению эффективности их реализации. Для повышения эффективности реализации таких систем предлагается введение в разрабатываемый язык программирования PIML и кроссплатформенный интерпретатор PIME механизмов обработки событий. Описывается их реализация путем подключения удаленной переменной.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Хлебцов Николай Владимирович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

THE PIML LANGUAGE. IMPLEMENTATION OF THE REMOTE VARIABLE CONNECTION. EVENTS PROCESSING

The article describes the difficulties encountered in the implementation ot the exchanging interprocessor data between systems to monitor infrastructure projects, leading to a decrease in the effectiveness of their implementation. To increase the effectiveness of such systems is proposed to introduce a programming language developed by PIML and cross-platform interpreter PIME event handling mechanism. Describes their implementation by connecting remote variable.

Текст научной работы на тему «Язык PIML. Реализация подключения удаленной переменной. Обработка событий»

This paper describes a method for increasing the efficiency of the monitoring of infrastructure projects by introducing a special programming language PIML, cross-platform interpreter and compiler PIME PIML-PIME. Describes the tasks ligament PIML-PIME and its application in the context of monitoring systems.

Key words: infrastructure project monitoring, the interpreter, PIML, PIME.

Hlebtsov Nikolay Vladimirovich, postgraduate, nvhlebagmail.com, Russia, Tula, Tula State University,

Danilkin Fedor Alekseevich, doctor of technical science, professor, fdanilkin@yandex. ru, Russia, Tula, Tula State University,

Novikov Aleksey Vladimirovich, candidate of technical science, novikov82@gmail. com, Russia, Tula, Tula State University

УДК 004.75

ЯЗЫК Р1МЬ. РЕАЛИЗАЦИЯ ПОДКЛЮЧЕНИЯ УДАЛЕННОЙ ПЕРЕМЕННОЙ. ОБРАБОТКА СОБЫТИЙ

Н.В. Хлебцов

В статье описаны трудности, возникающие при реализации межподсистем-ного обмена данными между элементами систем мониторинга инфраструктурных проектов, приводящие к снижению эффективности их реализации. Для повышения эффективности реализации таких систем предлагается введение в разрабатываемый язык программирования Р1МЬ и кроссплатформенный интерпретатор Р1МЕ механизмов обработки событий. Описывается их реализация путем подключения удаленной переменной.

Ключевые слова: Р1МЬ, Р1МЕ, удаленная переменная, обработка событий.

Реализация межподсистемного обмена данными между элементами систем мониторинга[1, 4] предполагает обеспечение устойчивого канала обмена информацией между элементами системы. Реализация такого канала может быть выполнена посредством применения различных физических интерфейсов и протоколов уровней 0Б1[2]. При этом основной задачей является снижение нагрузки на используемые каналы связи. Являясь разновидностью БСАОА-системы, обмен данными в системе мониторинга выполняется по принципу ведущий-ведомый. Такой принцип обмена данными требует от ведущего устройства постоянного опроса всех подключенных к нему ведомых, с целью определения изменения измеряемого параметра. В результате повышая нагрузку на канал связи.

232

С целью уменьшения нагрузки на каналы связи предлагается выполнить построение межподсистемного обмена системы мониторинга в языке PIML на основе событийно-ориентированной архитектуры[3]. Событийно-ориентированная архитектура языка PIML позволяет автоматизировать процесс обработки измерения данных в системе мониторинга. Процесс обмена данными выполняется интерпертатором PIME на основе информации о статусе переменной. Статус переменной определяет ее текущее состояние, показывая, была ли она инициализирована, изменена или удалена. PIME использует следующие статусы переменных:

- IDLE - статус ожидания. Не требует обработки. Выставляется после завершения обработки статусов CHANGE или INIT;

- CHANGE - значение переменной было изменено. После завершения обработки статуса переводится в IDLE;

- INIT - переменная не инициализирована. Статус переводится в CHANGE после первой записи данных в переменную;

- DEL - переменная была удалена или не доступна. При обращении к переменной с таким статусом генерируется системная ошибка ACCE S S_DENIED.

Язык PIML определяет два способа адресации к данным: по динамическому и статическому идентификатору. Динамический идентификатор используется для мест хранения, расположение данных в которых может меняться от запуска к запуску. Статический идентификатор используется для мест хранения, расположение данных в которых не должно изменяться при перекомпиляции или перезапуске программы.

Принцип изменения статуса переменной зависит от типа ее идентификатора. Для переменных с динамическим идентификатором после старта программы происходит автоматическая установка состояния INIT, означающего, что переменная еще не была инициализирована значением. Попытки чтения такой переменной приведут к системной ошибке UNINIT_VARIABLE.

После установки значения переменной, ее статус будет изменен на CHANGED, означающий, что значение переменной было изменено. Обработка данного статуса производится механизмом расчета значения переменной, а затем - обработкой событий.

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

Под статистической обработкой значений понимается статистическая обработка данных произвольной природы. Задачами статистической обработки данных в языке являются:

- усреднение значения переменной;

- получения максимального или минимального значения.

Арифметическая обработка данных осуществляет произвольный пересчет значений переменной по установленной формуле.

Под логической обработкой понимается обработка значений переменной по определенному алгоритму.

Смешанная обработка представляет собой комбинацию статистической, математической и логической обработок.

По завершению обработки статус переменной меняется на IDLE, означающий, что переменная инициализирована и изменение ее значения уже было обработано.

В случае удаления переменной, ее статус меняется на DEL. Статус DEL означает невозможность чтения или записи содержимого переменной. При попытке выполнения таких операций возникнет ошибка INACCESSIBLE_VARIABLE.

Блок-схема изменения статуса переменной с динамическим идентификатором показана на рис. 1.

Рис. 1. Изменение статуса переменной с динамическим идентификатором

Блок-схема изменения статуса переменной со статическим идентификатором показана на рис. 2.

Рис. 2. Изменение статуса переменной со статическим идентификатором

235

Принцип обработки переменной со статическим идентификатором аналогичен переменной с динамическим. Разница в обработке заключается в том, что при старте программы статус переменной не меняется, а его значение остается равным сохраненному. При этом, если переменная еще не была инициализирована, ее статусом будет значение INIT. Если изменена - CHANGED, удалена - DEL. В случае, если переменна не требует обработки, она будет иметь статус IDLE.

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

Со стороны PIME производится анализ содержимого переменной и нового значения. В случае, если они равны, перезапись содержимого и установка статуса CHANGED не производится. В случае, если для такой переменной применяется статическая обработка, новое значение данных все равно обрабатывается в расчете значения переменной.

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

Список литературы

1. Седельников Ю.В., Сычугов А. А. Сегменты системы комплексной безопасности при реализации инфраструктурных проектов // Известия ТулГУ. Технические науки. Вып. 56 в 3 ч. Тула: Изд-во ТулГУ, 2011. Ч. 3. С. 239-245.

2. Управление информационными потоками. Сборник трудов Института системного анализа Российской академии наук. // Редакторы: Владимир Арлазаров, Николай Емельянов, Издательство: Едиториал УРСС, 2002.

3. Хлебцов Н.В. Реализация подсистемы сетевой безопасности комплексных систем мониторинга состояния региона // В мире научных открытий. №8.1(20), 196с. Красноярск, 2011. С. 472-481.

4. Данилкин Ф.А., Новиков А.В., Седельников Ю.В., Сычугов А. А. Применение целочисленного квадратичного программирования в задачах

проектирования систем мониторинга // Известия ТулГУ. Технические науки. Вып. 3. Тула: Изд-во ТулГУ, 2012. С. 288-295.

Хлебцов Николай Владимирович, аспирант факультета кибернетики, nvhleb@,gmail. com, Россия, Тула, Тульский государственный университет

THE PIML LANGUAGE. IMPLEMENTATION OF THE REMOTE VARIABLE CONNECTION. EVENTS PROCESSING

N.V. Hlebtsov

The article describes the difficulties encountered in the implementation ot the exchanging interprocessor data between systems to monitor infrastructure projects, leading to a decrease in the effectiveness of their implementation. To increase the effectiveness of such systems is proposed to introduce a programming language developed by PIML and cross-platform interpreter PIME event handling mechanism. Describes their implementation by connecting remote variable.

Key words: PIML, PIME, remote variable, event handling.

Hlebtsov Nikolay Vladimirovich, postgraduate, nvhleb@gmail. com, Russia, Tula, Tula State University

i Надоели баннеры? Вы всегда можете отключить рекламу.