Высокоуровневое проектирование встраиваемых систем. Часть 1. Платунов А.Е - 19 стр.

UptoLike

18
ASIC, программируемые процессоры всех типов, конфигурируемые
процессоры и блоки, специализированные блоки аппаратуры и ПО, взятые из
библиотек.
Очень важным является то, что большая часть перечисленных выше
проблем и задач, которые являются типичными для ВПО, обычно не
воспринимаются в сообществе специалистов по программному обеспечению.
Развитием и конкретизацией представленной выше точки зрения
на
проблемы создания ВПО является [60]. Автор работы, Э.А. Ли, предметно
критикует сегодняшнюю ситуацию в области ВПО, однако в отличие от авторов
[71] он понимает ВПО в большей степени как традиционное ПО различного
рода последовательных интерпретаторов в составе ВсС.
ВПО предназначено не для трансформации данных (как ПО «обычных»
ВС), но для
взаимодействия ВС с реальным миром. Рассматривая организацию
ВПО на уровне архитектуры, Э.А. Ли выделяет в качестве основных
абстракций программирования своевременность (timeliness), параллельность,
живучесть (оригинальное liveness) и неоднородность (heterogeneity).
Анализируя основные проблемы в области ВПО, Э.А.Ли [63, 62, 65, 60]
указывает на следующее: «Что следовало бы сделать для получения
параллельного и сетевого ВПО, которое было бы
абсолютно надежным во
времени? К сожалению, все необходимо было бы изменить. Базовые
абстракции вычисления необходимо модифицировать для охвата времени.
Архитектуру компьютера необходимо изменить для получения точного
временно
́
го поведения. Сетевые методы необходимо изменить для обеспечения
параллельности во времени. Необходимо изменить языки программирования
для включения времени и параллелизма в их базовую
семантику. ОС необходимо
изменить для того, чтобы меньше полагаться на свойства для определения
(косвенно) временны
́
х требований. Необходимо изменить методы
проектирования ПО для определения и анализа временно
́
й динамики ПО. А
традиционная граница между ОС и языком программирования должна быть
переосмыслена. То, что необходимо, является почти переизобретением
компьютерной науки».
К
счастью есть достаточно много того, что можно использовать. Подводя
итог, Э.А. Ли призывает компьютерное сообщество собрать перечисленные
методы вместе и направить усилия на построение «Встроенной Компьютерной
Науки 21 века».
Важным является тезис о потенциальной неэффективности современных
универсальных процессорных платформ со статистическими механизмами
повышения производительности с позиций требований встроенного ПО.
Применение
подобных вычислителей, а также ряда технологий
программирования (например, многих реализаций языка Java) вступает в
прямое противоречие с основными критериями проектирования ВсС, и в
первую очередь, с надежностью. Требуемая надежность, а во многих случаях и