Космическое агентство NASA открыло код платформы для создания полётного ПО

Космическое агентство NASA объявило об открытии исходных текстов платформы cFS (core Flight System), включающей в себя инструментарий, набор универсальных программ и фреймворк, используемых в качестве основы для создания полётного ПО, которым комплектуются системы обработки данных на спутниках и приборы, применяемые на космических аппаратах. Несмотря на то, что cFS изначально разработан для полётных компьютеров, практически он может применяться и для другой встраиваемой техники. В настоящее время cFS используется в запущенной в прошлом году миссии GPM, нацеленной на организацию непрерывного мониторинга выпадения осадков по всему земному шару, а также в миссии LADEE, развиваемой НАСА в исследовательском центре Эймса для изучения атмосферы Луны и анализа пылевого окружения её орбиты. Платформа также используется и в других исследовательских центрах, включая Центр космических полётов имени Джорджа Маршалла, Исследовательский центр Гленна и Космический центр имени Линдона Джонсона.

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

Код написан на языке Си и распространяется под лицензией NASA Open Source Agreement, признанной OSI, но не одобренной Фондом СПО из-за требования применения при модификации только собственных наработок, что мешает смешиванию кода из разных источников. cFS имеет модульную структуру и насчитывает 12 компонентов, каждый из которых размещён в виде отдельного проекта на SourceForge.net. Каждый компонент реализует определённый тип приложений обработки команд и данных (Command and Data Handling, C&DH) для космических аппаратов. В сочетании друг с другом компоненты формируют библиотеку типовых функций C&DH и независимое от программных платформ runtime-окружение для выполнения приложений. Для абстрагирования cFS от нижележащей операционной системы применяется специальный уровень абстракции OSAL (Operating System Abstraction Library).

Состав набора:

Checksum Application (GSC-15996–1) File Manager (FM) Application (GSC-16007–1) Stored Command (SC) Application (GSC-16009–1) Limit Checker (LC) Application (GSC-16010–1) Memory Manager Application (GSC-16011–1) Memory Dwell Application (GSC-16012–1) Scheduler Application (GSC-16123–1) CFDP (GSC-16125–1) Data Storage (DS) Application (GSC-16126–1) Housekeeping (HK) Application (GSC-16127–1) Health and Safety Application, (GSC-16151–1) Software Bus Network (SBN) Application (GSC-16917–1)

©  OpenNet