Историческият софтуер на бордовия компютър, който отведе „Аполо 11“ до Луната вече е отворен и достъпен за четене, изтегляне и изучаване от всеки желаещ. Служителят на НАСА Крис Гари публикува кода в отворен достъп в GitHub. Публикуваният ресурс се състои от две големи кодови бази: едната за командния модул (Comanche055), а другата за лунния модул (Luminary099). Всеки от тези модули имаше свой собствен бордов компютър Apollo Guidance Computer (AGC), на който се изпълняваше този код и те бяха ключови за успеха на изключителната мисия – първото в историята кацане на човек на Луната.
В GitHub Хари посочва, че този знаменателен код е бил дигитализиран от екипа на проекта Virtual AGC (Virtual Apollo Guidance Computer) и Музея на MIT. Това означава, че хартиените копия на кода, съхранявани в музея на MIT са били сканирана и преобразувани за дигитално разпространение. Сега огромните масиви от машинен код са обществено достояние и са лесно достъпни в мрежата.
За да се запознаем по-отблизо с примерите за код, първия интересен файл, който прави впечатление е ALARM_AND_ABORT.agc в директорията Commanche055. След стандартното въведение в началото на файла се разкрива предназначението на кода – което е доста очевидно от неговото име. Освен това коментарите в кода показват, че той регистрира аварийни състояния, включва предупредителен светлинен сигнал, ако е приложимо, и обработва различни аварийни и неаварийни алармени сигнали.
Друг интересен пример за код, публикуван в социалните мрежи (по-горе в поста), показва 30 критично важни реда код за изчисляване на навигационните траектории на „Аполо 11“. Ако искате не просто да разгледате историческата кодова база, а да отидете по-далеч, вече можете да компилирате кода, прехвърлен в публичното достояние с помощта на инструмента Virtual AGC. Той е разработен за работа в Linux, Windows XP/Vista/7, Mac OS X 10.3 и по-нови версии, както и в някои версии на FreeBSD. Това хранилище е също така добро място, където да научите повече за бордовите компютри AGC, инсталирани както в командния модул, така и в лунния модул.
Характеристиките на AGC бледнеят в сравнение дори с най-простите съвременни компютри. AGC имаше само 3840 байта оперативна памет и 69 120 байта постоянна памет. Максималната му производителност беше около 85 000 операции в секунда. Въпреки това по размери той беше сравним със съвременен геймърски системни блок: 61,595 x 31,580 x 15,174 сантиметра и тежеше 31,8 килограма. За него бяха необходими също два контролни блока DSKY с тегло по 8,1 килограма всеки в командния модул и един DSKY в лунния модул.
Повече от половин век преди „Артемис II“
Интересно е да видим този код от „Аполо 11“, написан преди почти 60 години в контекста на лунната мисия „Артемис II“, която завърши успешно. Днес ние не се възхищаваме на лаконичния и ефективен машинен код, който НАСА използва, за да изпраща хора до Луната и обратно. По-скоро проблемите с Microsoft Outlook и неизправната тоалетна на космическия кораб Orion могат да помрачат впечатлението от грандиозното постижение, което представлява тази последна мисия.
Всичко важно от света на технологиите, директно в пощата ти.
С абонирането приемате нашите Условия и Политика за поверителност. Може да се отпишете с един клик по всяко време.
Коментирайте статията в нашите Форуми. За да научите първи най-важното, харесайте страницата ни във Facebook, и ни последвайте в Google Новини, TikTok, Telegram и Viber или изтеглете приложението на Kaldata.com за Android, iPhone, Huawei, Google Chrome, Microsoft Edge и Opera!