Язык программирования CAPER
Описание языка параллельного программирования - CAPER4.
Скачайте - Демонстрация некоторых возможностей языка CAPER4.
Сравнение скорости моделирования языков CAPER4 и SystemC - Язык параллельного программирования CAPER как средство для эффективного архитектурного моделирования современных СБИС.
Язык CAPER создавался с целью разрешения следующих концептуальных положений:
- структурированность с возможностью динамического изменения структуры программы в целях самоорганизации;
- возможность динамической компиляции и исполнения программы;
- параллельное исполнение элементов структуры программы;
- управление процессом вычислений на основе событий (программирование событиями).
Программа является таким же ресурсом, как и все прочие атрибуты вычислительной установки и ее операционной среды, а потому ее структурное (организационное) состояние должно быть адекватным целям задачи, а самое важное текущим потребностям вычислительного процесса.
Реорганизация программ может осуществляться удалением собственных компонент, их изменением или же привнесением новых компонент извне. Внешние компоненты могут быть фрагментами исходного текста или объектными модулями. Т.е. речь идет о реструктуризации программы самой программой с целью создания такой ее структуры, которая отвечала бы текущим, сложившимся в процессе вычисления, потребностям решаемой задачи.
Следующим положением языка CAPER является параллельное исполнение структурных элементов программы синхронным или асинхронным способом, с квантованием времени, на множестве исполняющих установок - вычислительных машинах или на процессорах в многопроцессорной системе. В комплексе с предыдущими возможностями программирование в CAPER приобретает особые свойства по транспортированию фрагментов программы на различные вычислительные установки и их реализация.
Наконец, последнее принципиальное свойство, реализованное в языке, относится к проблеме программирования реакций на асинхронные события, происходящие как "внутри" программы, так и "снаружи". Неэффективность большинства существующих практических языков достаточно очевидна - как правило, программисту приходится организовывать довольно рутинные процедуры отслеживания событий, которые загромождают программу, и часто весьма искусственны и субъективны, - в то время как было бы желательным и эффективным описывать множество событий и связанных с ними процедур, немедленно исполняемых при возникновении таких событий.
Кроме перечисленных основных положений подход, принятый в определении структуры программы, ее переменных и принципы ее исполнения позволяют эффективно программировать рекурсивные процедуры, непосредственно, без затрат по программированию описывать реентерабельные рутины (routine). Столь же эффективно в CAPERе решается проблема обработки ошибок, происходящих в процессе вычисления: допускается анализ и исправление команд, целых фрагментов программы, приведших к ошибке.
Язык CAPER реализован для персональных компьютеров. Опыт программирования в течение пяти лет подтверждает эффективность заложенных в него свойств.
Язык CAPER и его методологическая база стали основой создания проектов:
МногоМашинная Параллельная обработка (Процессирование) MMPP
Операционная Cистема Реального Времени OS-RTRU
МногоМашинные Системы Цифрового Кино Сверхвысокого Разрешения AS_SHDDC
|