Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Отчет по дог_№2051 от 12_10_98.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.22 Mб
Скачать

5.1.1.2 Среда программирования

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

Оно определяется:

  • быстродействием технических средств;

  • количеством операторов в машинном коде, выполняемых при решении задачи.

Вопросы быстродействия технических средств будут рассмотрены ниже в п. 5.1.2.

Количество же операторов в машинном коде выполняемых по конкретной задаче определяется:

  • компактностью и продуманностью алгоритма решения задачи;

  • структурой программы и квалификацией программиста.

  • средой программирования

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

Рассмотрим типичные решения по среде разработки.

Среда программирования включает:

  • языки программирования;

  • средства компиляции8;

  • средства отладки программы.

Для создания специализированных программ, предназначенных для управления технологическим процессом, используют как правило или алгоритмический язык С и С++, или специализированные языки функционально-логического программирования.

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

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

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

Что же касается средств компиляции и отладки программы для функционирования в режиме реального времени, то их наличие и объем зависит от степени специализации общесистемного программного обеспечения. В ОС предназначенных для реализации решения реального времени (например, QNX) изначально разрабатываются средства компиляции и отладки направленные на поддержку данного режима.

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

В MS DOS, Windows NT специальные средства разработки для поддержки режима реального времени не предусматриваются.