В МГУ выяснили, почему ускорение софта угрожает безопасности самолёта

Ученые ВМК МГУ установили: ускорение работы программы не всегда безопасно для бортовых систем самолета. Некоторые оптимизации современных компиляторов могут сделать выполнение кода менее предсказуемым и усложнить его верификацию настолько, что доказать соблюдение требований безопасности станет проблематично. Об этом пишет издание «Научная Россия». Об этом пишет портал Life.ru.

Стандартные компиляторы настроены на то, чтобы программы исполнялись быстрее и использовали меньше ресурсов. Для авиационного ПО этого мало: нужно заранее знать, как система отреагирует в конкретной ситуации и сколько времени займет каждая операция. Исследователи проанализировали случаи, когда оптимизация нарушает эти свойства. Отдельно рассматривались требования к системам реального времени для авиации, где процессы разработки и проверки регламентирует стандарт DO-178C.

На базе Clang была создана безопасная версия компилятора, ограничивающая те преобразования, которые могут помешать выполнению требований к подобному ПО. Эта разработка соответствует отечественному ГОСТ Р 71206-2024 для безопасных компиляторов C/C++.

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

Разработчики надеются, что методику можно будет использовать при создании и сертификации не только авиационного ПО, но и других критических систем, требующих строго предсказуемого поведения. Итоги работы представили на конференции «Ломоносовские чтения — 2026».