Кабина пилота

Разработана методика повышения надежности ПО для авиации

Современные компиляторы, повышая производительность программ, могут существенно преобразовывать исходный код, что снижает предсказуемость работы бортовых систем. Ученые факультета ВМК МГУ разработали методику, позволяющую адаптировать технологии безопасной компиляции для авиационной электроники.
Автор Наука Mail
Пилот в кабине самолета
В МГУ предложили методику безопасной компиляции для бортовых системИсточник: Freepik

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

Специалисты факультета вычислительной математики и кибернетики (ВМК) МГУ изучили эту проблему на стыке программирования и нормативных требований, включая авиационный стандарт DO-178C и отечественный ГОСТ Р 71206−2024. Выяснилось, что агрессивная оптимизация бинарного кода может нивелировать усилия разработчиков по обеспечению надежности. Программа, прошедшая все тесты, после «улучшения» компилятором иногда ведет себя иначе, чем задумывалось изначально.

Самолет
Разработка может использоваться при создании и сертификации программного обеспечения для авиационных и других критически важных системИсточник: Freepik

Инженеры МГУ предложили методику внедрения так называемого безопасного компилятора на базе Clang. Суть подхода — не запретить оптимизацию полностью, а научить ее работать в жестких рамках, задаваемых архитектурой ARINC 653 (стандарт для авиационной электроники). Исследователи провели сравнительный анализ: оценили, как часто обычный компилятор и его «безопасная» модификация создают потенциальные уязвимости.

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

Предложенная методика позволяет адаптировать технологии безопасной компиляции для использования в бортовых системах и учитывать требования нормативных документов.
Виктор Кулямин
доцент кафедры системного программирования факультета ВМК МГУ

Это шаг к тому, чтобы цифровой мозг самолета действовал строго по утвержденному сценарию, без «сюрпризов» от алгоритмов самооптимизации.

Ранее химики МГУ нашли замену токсичному свинцу в солнечных батареях.