DDC-I - DDC-I

DDC-I, Inc.
Тип Частный
Промышленность критически важное для безопасности встроенное программное обеспечение
Основан 1985 ; 36 лет назад в Kongens Lyngby , Дания ( 1985 )
Штаб-квартира Феникс, Аризона
Действующие лица
Боб Моррис, президент / генеральный директор
Оле Н. Ост, основатель / технический директор
Продукты Операционные системы реального времени : Deos, HeartOS.
Компиляторные системы: Ada.
Веб-сайт www .ddci .com

DDC-I, Inc. - частная компания, занимающаяся разработкой программного обеспечения для операционных систем реального времени , инструментов разработки программного обеспечения и программных услуг для критически важных с точки зрения безопасности встраиваемых приложений со штаб-квартирой в Фениксе, штат Аризона . Впервые он был создан в 1985 году как датская фирма DDC International A / S (также известная как DDC-I A / S ), коммерческое развитие Dansk Datamatik Center , датской организации по исследованиям и разработке программного обеспечения 1980-х годов. Американская дочерняя компания была создана в 1986 году. В течение многих лет компания специализировалась на компиляторах языков для языка программирования Ada .

В 2003 году датский офис был закрыт, и все операции были перенесены в офис в Фениксе.

Происхождение

Истоки DDC International A / S лежат в Dansk Datamatik Center , датской организации по исследованиям и разработке программного обеспечения, которая была основана в 1979 году для демонстрации ценности использования современных методов, особенно тех, которые включают формальные методы , при проектировании и разработке программного обеспечения. Среди нескольких его проектов было создание системы компиляции для языка программирования Ada . Ада был сложным для реализации языком, и первые проекты компиляторов для него часто приводили к разочарованию. Но конструкция компилятора DDC была надежной, и в сентябре 1984 года он впервые прошел тесты на проверку возможностей компилятора Ada (ACVC), спонсируемые Министерством обороны США, на системе VAX / VMS. стандарт.

Успех проекта Ada привел к тому, что в 1985 году была образована отдельная компания, названная DDC International A / S, с целью коммерциализации продукта системы компилятора Ada. Как и его создатель, он базировался в Люнгбю , Дания . Оле Н. Ост был назначен управляющим директором DDC International. В 1986 году была основана DDC-I, Inc. как дочерняя компания в США. Расположенный в Фениксе, штат Аризона , он занимался продажами, поддержкой клиентов и инженерно-консультационной деятельностью в США.

Компилятор Ada

DDC International A / S размещалась в переоборудованном текстильном комбинате в Люнгбю, Дания, в 1990 году.

DDC-I открыла бизнес по продаже системного продукта компилятора Ada, названного DACS, напрямую фирмам, как в качестве программного обеспечения для разработки проектов на Ada, так и в качестве исходного кода для производителей компьютеров и других лиц, которые будут повторно размещать или перенаправлять его на другие процессоры. и операционные системы .

Первый бизнес продавал как собственные компиляторы, так и кросс-компиляторы , причем последний был более распространенным, поскольку Ada в основном использовалась в сфере встроенных систем . Одним из первых кросс-компиляторов, разработанных DDC-I, был VAX / VMS для Intel 8086 и Intel 80286 ; к началу 1985 года эта работа уже велась. Она начиналась как совместное предприятие с итальянской компанией Selenia по производству оборонной электроники , которое нацелено на их мультипроцессорные компьютеры MARA-860 и MARA-286, основанные на архитектурах 8086 и 80286, а также на универсальные встраиваемые компьютеры. и ОС-хостинг систем 8086 и 80286. Эта работа положила начало тому, что стало самой продаваемой линейкой продуктов для фирмы. DDC-I заработал репутацию производителя качественных кросс-компиляторов Ada и исполняющих систем для процессоров Intel 80x86 .

Второй бизнес использовал то, что стало называться OEM-компилятором DDC, который мог использовать интерфейс Ada для компиляторов для других хостов или целей или для других инструментов, таких как VLSI . На встрече в сентябре 1985 года в Лунде, Швеция , несколько клиентов OEM Kit сформировали DDC Ada Compiler Retargeter's Group. В течение 1985 и 1986 годов было проведено не менее трех встреч. Среди первых OEM-заказчиков были Университет Лунда , Управление материально-технического обеспечения обороны и Ericsson Radio Systems в Швеции; Softplan и Nokia Information Systems в Финляндии; Селения и Оливетти в Италии; ICL Defense Systems и STL Ltd в Соединенном Королевстве; Aitech Software Engineering в Израиле; и Advanced Computer Techniques , Rockwell Collins , Control Data Corporation и General Systems Group в США.

Несколько разработчиков компилятора Ada в DDC International в Люнгби в 1990 году.

Более поздние разработчики часто хуже разбирались в формальных методах и не использовали их в своей работе над компилятором. Это было еще более справедливо в случае перенацеливания компилятора на компании, многие из которых были незнакомы с языком Ada.

DDC-I работала на том же рынке, что и несколько других фирм по разработке компиляторов Ada, включая Alsys , TeleSoft , Verdix , Tartan Laboratories и TLD Systems . (DDC-I продолжал бы оставаться в бизнесе дольше, чем любой из этих других.) Как и в случае с другими поставщиками компиляторов Ada, большая часть времени инженеров DDC-I была потрачена на согласование с большой и сложной возможностью проверки компилятора Ada (ACVC ) стандартизированный язык и набор тестов среды выполнения.

Начиная с 1988 года и продолжаясь в течение нескольких лет, консультанты DDC-I сотрудничали с Honeywell Air Transport Systems, чтобы перенастроить и оптимизировать компилятор DDC-I Ada для процессора AMD 29050 . Эта система кросс-компиляции на основе DDC-I использовалась для разработки основного полетного программного обеспечения для авиалайнера Boeing 777 . Это программное обеспечение, получившее название Airplane Information Management System , возможно, станет самым известным из всех используемых проектов Ada, гражданских или военных. Около 550 разработчиков в Honeywell работали над системой полета, и это было объявлено большой историей успеха Ada.

Офис развития DDC-I в Нью-Йорке находился на 31-м этаже этого здания.

В октябре 1991 года было объявлено, что DDC-I приобрела подразделение встроенных систем на языках Ada и JOVIAL компании InterACT , которая стала предприятием Advanced Computer Techniques. Эта находящаяся в полной собственности нью-йоркская компания была кратко названа DDC-Inter, а затем была включена в собственно DDC-I. Это позволило включить в линейку продуктов кросс-компиляторы Ada для процессоров MIL-STD-1750A и MIPS R3000 , а также кросс-компиляторы языка JOVIAL для MIL-STD-1750A и Zilog Z8002 . Продукт MIPS был одним из тех, что подчеркивал DDC-I, с инженерными усилиями, которые включали автоматическое распознавание определенных оптимизаций задач, и работу в спонсируемом ВВС США проекте Common Ada Runtime System (CARTS) по обеспечению стандартных интерфейсов в среде выполнения Ada.

В конце 1993 года офис в Нью-Йорке был закрыт, и его работа была передана в офис в Фениксе.

К началу 1990-х годов DDC-I предлагал собственные компиляторы Ada для VAX / VMS, Sun-3 и SPARC под SunOS и Intel 80386 под UNIX System V и OS / 2 , а также предлагал кросс-компиляторы для Motorola 680x0 и Intel i860 в дополнение. к вышеуказанным целям.

Ada 95 и исследования других продуктовых линеек

Офис DDC International в Люнгбю продемонстрировал датские элементы дизайна, представленные здесь в 1992 году.

В начале 1990-х годов DDC-I работал над переработкой системы компиляции для широкой версии языкового стандарта Ada 95. Они использовали новый дизайн объектно-ориентированного программирования и по-прежнему придерживались подхода формальных методов, используя VDM-SL . Работа была выполнена при спонсорской поддержке проекта Global Language and Uniform Environment (OMI / GLUE) инициативы Open Microprocessor Initiative Европейского сообщества , где роль DDC-I заключалась в создании компилятора, ориентированного на промежуточный формат нейтрального распределения архитектуры (ANDF). form с намерением быстро перенести Ada 95 на другие платформы. В рамках этой работы DDC-I сотрудничал с Агентством оборонной оценки и исследований в расширении некоторых возможностей ANDF по выражению семантики Ada и быстрорастущего языка программирования C ++ . Работа в областях, специфичных для Ada, таких как исключение проверки границ , была проделана для достижения оптимальной производительности во время выполнения.

Программная среда Ada изначально считалась многообещающим рынком. Но бизнес компиляторов Ada оказался трудным. В то время, с 1987 по 1997 год, действовал правительственный мандат США на использование Ada, хотя и с некоторыми предоставленными исключениями. Многие преимущества языка для программирования общего назначения не рассматривались как таковые ни сообществом разработчиков программного обеспечения, ни преподавателями. Ситуация с продажами была сложной, с периодическими небольшими увольнениями. Несмотря на консолидацию среди других поставщиков инструментов Ada, DDC-I оставалась независимой компанией.

В любом случае DDC-I с энтузиазмом выступал за использование языка Ada в компании и за ее пределами. В статье, опубликованной одним из ее инженеров в 1993 году, объектно-ориентированные функции Ada 95 оцениваются по сравнению с C ++ и привлекают некоторое внимание.

Вид на пальмы из офиса DDC-I в Фениксе, 1993 год.

В то же время фирма пыталась расширять и дополнять свою продуктовую линейку. Доступен набор инструментов RAISE, а также Cedar, инструмент для проектирования систем реального времени. Также был предложен Beologic - инструмент для разработки и выполнения частей приложений, связанных с состоянием / событием, который был лицензирован Bang & Olufsen и интегрирован с системой компиляции Ada. Наибольшие усилия были предприняты в направлении C ++. DDC-I начала предлагать 1st Object Exec, операционную систему реального времени на основе C ++, предназначенную для прямой поддержки встроенных приложений на объектном уровне. Несмотря на значительные усилия в 1993–94 годах, 1st Object Exec не удалось завоевать популярность на рынке.

Единственная область, в которой Ada действительно прочно закрепилась, - это приложения реального времени, высоконадежные, с высокой степенью целостности и критически важные для безопасности приложения, такие как аэрокосмическая промышленность. Основываясь на своем опыте работы с Honeywell и другими клиентами, DDC-I приобрела опыт в сопоставлении языка Ada и функций среды выполнения с требованиями сертификатов, критически важных для безопасности, в частности, для DO-178B ( Требования к программному обеспечению в бортовых системах и сертификации оборудования. ) стандарт и предоставленные инструменты для этого процесса. Такие приложения продолжались даже после того, как в 1997 году был отменен мандат Ada. Например, в 1997 году фирма заключила совместный контракт с Sikorsky Aircraft и подразделением вертолетов Boeing Defense & Space Group на разработку программного обеспечения для использования в Boeing / Sikorsky RAH. -66 Команчи .

В марте 1998 года DDC-I приобрела у Texas Instruments права на разработку, продажу и маркетинг компиляторов Tartan Ada для целей Intel i960 , Motorola 680x0 и MIL-STD-1750A.

Поддержка смешанной языковой разработки была добавлена ​​в 2000 году с добавлением языка программирования C как части смешанной среды разработки DDC-I для SCORE (для критически важных для безопасности, объектно-ориентированных, встроенных в реальном времени). Используя формат ANDF, стандартизованный формат отладки DWARF и протокол OMI для связи с мониторами отладки целевой платы, SCORE смогла предоставить разработчикам приложений в реальном времени общую среду построения и отладки. Поддержка Embedded C ++ была добавлена ​​в SCORE в 2003 году, и к тому времени он мог интегрироваться с различными сценариями целевых плат на процессорах Intel x86 и Power PC . Компиляторы C и Embedded C ++ для ANDF были получены в результате лицензионного соглашения с TenDRA Compiler (позже DDC-I стал поддерживать эти компиляторы). Впоследствии в SCORE была добавлена поддержка Ada 95 для старых процессоров 1750A и TMS320C4x .

Штаб-квартира в США и операционные системы реального времени

К апрелю 2003 года промышленность отошла от Ada, и ухудшающееся положение авиастроительной отрасли сказалось на нем, и DDC-I понесла значительные финансовые потери. DDC-I решила закрыть свой датский офис в Люнгбю и перенести все операции в Феникс.

В сентябре 2005 года компания назначила Боба Морриса, ранее работавшего в LynuxWorks , своим президентом и главным исполнительным директором. Ост стал техническим директором. В апреле 2006 года DDC-I переехала в новый офис на севере Феникса, заявив, что она расширяется и ожидает роста доходов на 40–50 процентов по сравнению с предыдущим годом.

С 2006 года компания участвует в Группе экспертов по Java для критически важной для безопасности Java. Эта работа, которая использует спецификацию реального времени для Java в качестве основы, а затем определяет языковые и библиотечные подмножества и правила кодирования для использования для обеспечения достаточного детерминизма, представители фирмы считают, что Java может быть равен или превосходит Ada или C ++. как язык для приложений, критичных к безопасности. Компания рассматривала критически важный для безопасности профиль Java как один, который может помочь оборонной промышленности справиться с проблемой устаревания программного и аппаратного обеспечения. К 2008 году DDC-I называл Ada устаревшим языком и предлагал полуавтоматические инструменты и профессиональные услуги, чтобы помочь клиентам перейти на новые решения.

В ноябре 2008 года компания вышла на рынок встроенных операционных систем реального времени (RTOS) с двумя продуктами: Deos и HeartOS. Оба были основаны на базовой технологии программного обеспечения, разработанной Honeywell International и уже используемой на многих коммерческих и военных самолетах. В рамках акции DDC-I наняла нескольких ключевых инженеров Honeywell, которые разработали Deos. Другие фирмы в том же сегменте рынка RTOS, что и DDC-I, включают LynuxWorks , Wind River Systems , SYSGO и Express Logic .

Продукты

  • Deos - это операционная система реального времени (ОСРВ) с разделением по времени и пространству, которая была впервые сертифицирована по DO-178B уровня A в 1998 году. Deos содержит несколько запатентованных архитектурных функций, включая улучшения для использования процессора, повторное использование двоичного программного обеспечения и безопасное планирование для многоядерных процессоров. процессоры. Пользователи Deos могут добавлять дополнительные индивидуальные модули ARINC 653, разработанные для удовлетворения различных потребностей приложений. Deos поддерживает процессоры ARM , MIPS , PowerPC и x86 , а также популярные библиотеки SSL / TLS, такие как wolfSSL . Он был включен в список 100 самых популярных электронных продуктов 2009 года по версии журнала EDN .
  • HeartOS - это операционная система жесткого реального времени на основе POSIX , разработанная для малых и средних встраиваемых приложений, включая критически важные для безопасности типы. Он поддерживает ARM, PowerPC, x86 и другие 16-битные и 32-битные процессоры. Его можно настроить без уровня интерфейса POSIX для систем с ограниченным объемом памяти.
  • OpenArbor - это интегрированная среда разработки на основе Eclipse для разработки приложений C, Embedded C ++ и Ada. Об этом было объявлено в 2007 году.
  • SCORE - это смешанный языковой набор интегрированных инструментов для критически важных для безопасности объектно-ориентированных встроенных программных приложений реального времени, поддерживающих приложения Ada, C и Embedded C ++ для различных встроенных архитектур.
  • Устаревшие продукты системы компиляции Ada 83 и JOVIAL также продолжают поддерживаться.

Библиография

  • Бьёрнер, Дайнс; Грамм, Кристиан; Oest, Ole N .; Rystrøm, Лейф (2011). "Данск Датаматик Центр". В Impagliazzo, Джон; Лундин, Пер; Wangler, Benkt (ред.). История Nordic Computing 3: Достижения IFIP в области информационных и коммуникационных технологий . Springer. С. 350–359. Немного расширенная версия этой главы доступна в Интернете по адресу https://www.researchgate.net/publication/221271386_Dansk_Datamatik_Center . Дальнейшая расширенная версия является частью онлайн-мемуаров Бьёрнера по адресу http://www.imm.dtu.dk/~dibj/trivia/node5.html . Слайд-презентация Gram на основе статьи доступна в Интернете как Почему Dansk Datamatik Center?
  • Бьёрнер, Дайнс; Хавелунд, Клаус. «40 лет формальных методов: некоторые препятствия и некоторые возможности?». FM 2014: формальные методы: 19-й международный симпозиум, Сингапур, 12–16 мая 2014 г. Материалы . Springer. С. 42–61.
  • Бундгаард, Йорген (май 1985 г.). «Разработка интерфейса Ada для малых компьютеров». SIGAda '85: Материалы ежегодной международной конференции ACM SIGAda 1985 года по Аде . Ассоциация вычислительной техники. С. 321–328.
  • Бундгаард, Йорген. "Система компиляции Ada 95 на основе ANDF". Труды конференции по TRI-Ад '95, 5-10 ноября 1995 года . Ассоциация вычислительной техники. С. 436–445.
  • Clemmensen, Geert B .; Ост, Оле Н. (март 1984 г.). «Формальная спецификация и разработка компилятора Ada - пример VDM». ICSE '84 Материалы 7-й международной конференции по программной инженерии . IEEE Press. С. 430–440.
  • Клемменсен, Герт Б. (январь 1986 г.). «Ретаргетинг и повторный хостинг системы компиляции DDC Ada: пример из практики - Honeywell DPS 6». ACM SIGAda Ada Letters . 6 (1): 22–28. DOI : 10.1145 / 382256.382794 .
  • Информационный бюллетень . Группа дистрибьюторов DDC Ada Compiler. 1 . Ноябрь 1985 г.
  • Информационный бюллетень . Группа дистрибьюторов DDC Ada Compiler. 2 . Август 1986 г.
  • Информационный бюллетень . Группа дистрибьюторов DDC Ada Compiler. 3 . Декабрь 1986 г.
  • Ферганы, Адель; Северенко, Леланд; Рабиновиц, Моше; Соломон, Элиэзер Н .; Питарис, Марк; Бенджамин, Клайв Л. «Реализация вызовов асинхронной записи на двух разных архитектурах». NAECON 1993: Труды IEEE 1993 Национальная конференция Электроника Aerospace и 24-28 мая 1993 . С. 486–495.
  • Фитцджеральд, Джон С .; Ларсен, Питер Горм; Верхоф, Марсель (2009). «Венский метод развития». In Wah, Бенджамин В. (ред.). Энциклопедия компьютерных наук и инженерии Wiley . Вайли. С. 2971–2982.
  • Фрост, Джейкоб. «Решение Ada95 для сертификации встроенных приложений, критически важных для безопасности». Надежные программные технологии - Ada-Europe '99 . С. 52–63.
  • Джордж, Крис. «Язык спецификации RAISE: Учебное пособие». VDM '91: формальные методы разработки программного обеспечения: 4-й международный симпозиум VDM в Европе, Нордвейкерхаут, Нидерланды, октябрь 1991 г., Материалы . 2 . Springer-Verlag. С. 238–319.
  • Ибсен, Лейф (январь 1984 г.). «Портативная виртуальная машина для Ады». Программное обеспечение: практика и опыт . 14 (1): 17–29. DOI : 10.1002 / spe.4380140104 .
  • Йоргенсен, Джеспер. «Сравнение объектно-ориентированных функций Ada 9X и C ++». Ада-Европа '93: 12-я Международная конференция Ада-Европа, Париж, Франция, 14–18 июня 1993 г. Материалы . С. 125–141.
  • Манкузи, Ричард; Tokar, Joyce L .; Рабиновиц, Моше; Соломон, Элиэзер Н .; Питарис, Марк; Бенджамин, Клайв Л. «Поддержка реальных и виртуальных прерываний: отображение функции CARTS в двух разных архитектурах». Ада-Европа '93: 12-я Международная конференция Ада-Европа, Париж, Франция, 14–18 июня 1993 г. Материалы . С. 314–329.
  • Мёллер, Петер Лютцен. «Устранение проверки времени выполнения для Ada 9X». Труды конференции по TRI-Ад '94, 6-11 ноября 1994 года . Ассоциация вычислительной техники. С. 122–128.
  • Ремер, Карл (2009). «Команда HADS». В Стеллмане, Эндрю; Грин, Дженнифер (ред.). Красивые команды: вдохновляющие и поучительные истории от опытных руководителей команд . Севастополь, Калифорния: О'Рейли. С. 299–312.
  • Розен, Жан-Пьер (сентябрь 2009 г.). «Парадокс Ады». Письма SIGAda Ada . 29 (2): 28–35. DOI : 10.1145 / 1620593.1620597 .
  • «Интервью с Оскаром Шахтером» (Интервью). Беседовал Томас Хей. Институт Чарльза Бэббиджа, Университет Миннесоты. 7 мая 2004 г.Запись WorldCat
  • Шиллинг, Джонатан Л. "Использование Ada в коммерческой среде малых компаний". WADAS '93 Труды десятой ежегодной Вашингтон Ada симпозиума по Ada: 28 июня - 1 июля 1993 . ACM. С. 89–94.
  • Шиллинг, Джонатан Л .; Нильсен, Йохан Ольмютц (май – июнь 1994 г.). «Автоматическое распознавание компилятором задач монитора». Письма SIGAda Ada . 14 (3): 91–104. DOI : 10.1145 / 181468.181474 .
  • Суорд, Рики Э. (ноябрь 2010 г.). «Взлет, падение и упорство Ады». SIGAda '10: Материалы ежегодной международной конференции ACM SIGAda, посвященной SIGAda . С. 71–74.
  • Уитакер, Уильям А. (1996). «Ада - Проект: Рабочая группа по высокому уровню языка Министерства обороны США» . In Bergin, Thomas J .; Гибсон, Ричард Г. (ред.). История языков программирования - II . Эддисон-Уэсли Профессионал. С. 173–232.

использованная литература

внешние ссылки

Кружка DDC-I 1990-х годов