Комментарии 26
А как же Rust ?
Насколько я помню, в NASA в системах реального времени запрещено работать с динамической памятью - вся память должна быть выделена сразу же при старте программы.
Пока я тут проблем не вижу.
А нет ли ссылочки на эту рекомендацию.
https://habr.com/ru/companies/hexlet/articles/303160/
Ссылка на документ из статьи (JPL Standard C) не доступна, но можно здесь взять https://github.com/abougouffa/awesome-coding-standards/tree/master
Там же и MISRA, что примерно то же самое
Забавно, что в 2016 году в комментариях первый вопрос также про Rust
А как это связано с Ржачкой?
Плюсы и Цешку ж не запрещают
Плюсы Rust-а в упрощении работы с динамической памятью и конкуренцией при многопоточности. Ни-то, ни-то в системах реального времени не приветствуется в принципе.
Интересно, а почему в статье обойдён вопрос использования Форт (Forth) языка для программирования научного оборудования т.к. и для него есть и аппаратные процессоры.
Сейчас самой странички http://forth.gsfc.nasa.gov/ на сайте нет, но в Веб архиве она сохранена.
(странно, что даже в каких то репозиториях от Nasa сей факт наличия Форт кода не стал публичным и зачем то была удалена даже официальная страница с сайта)
Чужие: странная архитектура инопланетных компьютеров
P.S. Стековые процессоры есть и у России и Беларуссии, но используются ли они в Космосе
публичных сведений нет.
Intel 8085 (или аналоги), 2006 год
assembly language
На примере "Вояджеров" - идеальный вариант.
Назвать Ada, разработанный в 1980 году, "одним из старейших языков" и не упомянуть возраст созданного на 10 лет раньше C, по меньшей мере странно.
Не надо вводить людей в заблуждение, я видел рекламу в ютубе - "I want to work for NASA, so I'm learning Javascript, Python and React", полгода её крутили, реклама не врет!
Хосспадя. Ну закопайте вы уже стюардессу с именем "ДУРАКОН".
Графит-Флокс — система с использованием оного "инструмента" — держится только и исключительно потому, что есть еще несколько одногодков Паронджанова, и только им он и нужен. И поэтому — писали уже то-ли на oberon.su, то-ли на хабре — разрабами используется "на отвали", "чтобы старперы отвязались". А в работе используют нормальные современные IDE.
При помощи этой среды можно видеть всё, что происходит и работает, на одном экране.
при помощи этой, хм, ~~студенческой поделки ~~ "среды" видеть кроме статических картинок ничего нельзя.
Типа вот бы ещё рассказывали какие российские ИТ-продукты юзают. Все три Труконф)
Интересный документ попался: https://epizodsspace.airbase.ru/bibl/vestnik-lavochkina/2016/2016-1.pdf
48 стр - " Основные принципы построения программной системы подготовки и функционирования блока управления и специализированного языка программирования "
> ПО для Центра принятия решений миссии Аполлон-11. Основная часть кода написана на языках С и С++. Разобраться в коде будет гораздо проще, чем в Ассемблере.
Apollo 11 это 1969, C даже в проекте не было, хотя автор вероятно не в курсе, предшественник ada jovial не упомянут, что характеризует уровень статьи
Со слов автора, он есть на хабре. https://pl1.su/question/
Используется ли сейчас этот компилятор?
Да, с успехом используется в РКК «Энергия». Например, на Российском сегменте МКС на лэптопах (ноутбуках) экипажа постоянно запущена программа, информирующая экипаж о полетной обстановке. Экраны с этой программой часто попадает в кадры хроники с МКС. Она создана с помощью данного компилятора и в данный момент продолжает развиваться.
Что касается Ada, этот язык применялся для управления объектами в режиме реального времени. Но чуть позже стали использовать более современные С, С++ и Perl.
очень хотелось бы посмотреть на систему реального времени, писанную на Перле. Сколь угодно мягкую.
Роскосмос использует для запуска космических кораблей ДРАКОНа.
Блин, звучит как строка из фэнтези. :)
В этой организации код ещё пару десятков лет назад писался почти исключительно на ассемблере, поскольку и чипы с рядом компонентов были не самые новые. Так, например, в 2006 году миссии THEMIS и STEREO работали на базе процессоров Intel 8085, выпущенных ещё в 1976 году.
Степень новизны чипов не объясняет, почему нельзя было использовать кросс-компиляцию, например, с Си? Разве что сами программы настолько примитивны, что решили не тратить время на инструментарий.
Космическая разработка: какие языки программирования используют NASA, SpaceX и Роскосмос