Kod koji je odveo ljude na Mjesec sada je javno dostupan!

Kod koji je Neil Armstronga i Buzz Aldrina sigurno spustio na površinu Mjeseca više nije zaključan u arhivama. Gotovo šest desetljeća nakon Apollo 11 misije, originalni softver koji je upravljao letom sada je javno dostupan na GitHubu. Da, isti onaj kod koji je odlučivao između “slijetanje uspješno” i “abortiraj misiju odmah”.

Objava dolazi zahvaljujući NASA-inom inženjeru Chris Garryu, a cijeli repozitorij je u javnoj domeni. U njemu se nalaze dva ključna programa: Comanche055 za komandni modul i Luminary099 za lunarni modul. Ukratko, sve ono što je trebalo da čovjek prvi put ne ostane “parkiran” u orbiti.

Kako je softver od nekoliko kilobajta odveo ljude na Mjesec?

Oba programa pisana su za Apollo Guidance Computer (AGC), računalo čije specifikacije danas zvuče kao šala. Imao je 3.840 bajtova RAM-a i ukupno 69 KB memorije. Za usporedbu, to je manje nego što zauzme jedna prosječna web stranica s oglasima.

Ipak, taj “kalkulator na steroidima” izvršavao je oko 85.000 instrukcija u sekundi i morao biti apsolutno pouzdan. Nije bilo prostora za bugove, updateove ili ono klasično “restartaj pa probaj opet”.

Digitalizacija ovog koda rezultat je suradnje projekta Virtual AGCa i MIT Museuma, gdje su se čuvali originalni ispisani listingi. Sve je skenirano i ručno provjereno liniju po liniju. Drugim riječima, netko je morao pročitati svaki red assembly koda iz 60-ih i paziti da ne pogriješi. Respekt.

Unutar Comanche055 koda kriju se fascinantni detalji. Primjerice, datoteka ALARM_AND_ABORT.agc pokazuje kako je sustav reagirao na kritične greške – od paljenja upozoravajućih lampica do donošenja odluke treba li prekinuti misiju. Bez AI-a, bez machine learninga, samo čista logika i precizno napisan kod.

Još impresivnije, navigacija svemirske letjelice svodi se na tridesetak linija assembly koda. Danas bi takav zadatak vjerojatno uključivao nekoliko frameworka, tri API-ja i barem jedan Stack Overflow tab otvoren sa strane.

Možete li danas pokrenuti Apollo kod na svom računalu?

Kratko rečeno – možete. I to bez NASA badgea.

Zahvaljujući Virtual AGC alatima, ovaj softver moguće je kompajlirati i pokrenuti na modernim sustavima, uključujući Linux, macOS pa čak i starije verzije Windowsa. To znači da možete simulirati rad računala koje je vodilo najvažniju misiju u povijesti čovječanstva – iz udobnosti vlastite sobe.

Naravno, nemojte očekivati fancy UI. Sučelje AGC-a zvalo se DSKY i izgledalo je kao križanac kalkulatora i komandne ploče iz znanstvene fantastike 60-ih. Ali radilo je. I to savršeno.

Zanimljivo je usporediti ovaj minimalistički pristup s današnjim misijama poput Artemis II, gdje se koriste laserske komunikacije i šalju ultra-HD snimke natrag na Zemlju. Današnji softver broji milijune linija koda, dok je Apollo morao stati u nekoliko kilobajta.

Apollo Guidance Computer fizički je bio veličine modernog desktop računala i težio oko 30 kilograma. Astronauti su s njim komunicirali putem DSKY jedinica, koje su bile dovoljno robusne da prežive vibracije, radijaciju i vakuum svemira.

Objava ovog softvera nije samo nostalgični izlet u prošlost, nego i podsjetnik koliko se može postići s ograničenim resursima. U vremenu kada aplikacije od nekoliko gigabajta znaju “zapeti” na najjednostavnijim zadacima, Apollo kod djeluje gotovo kao inženjerski minimalizam doveden do savršenstva.

Ako ništa drugo, sada imamo priliku zaviriti u kod koji je doslovno promijenio povijest. I možda se zapitati – radimo li danas stvari pametnije ili samo s više RAM-a.

IZVOR

Svi korisnici koji žele koristiti ili prenositi sadržaj s Bajtbox portala moraju se pridržavati sljedećih pravila: Citiranje Izvora: Obavezno je jasno i precizno navesti izvor informacija, uključujući naziv autora (ako dostupno), naslov članka ili teksta te datum objave. Poveznica na Originalni Tekst: Svaka upotreba sadržaja mora uključivati aktivnu poveznicu (link) koja vodi na izvorni tekst na Bajtbox portalu. Pravna Odgovornost: Kršenje ovih pravila može imati pravne posljedice sukladno zakonima o autorskim pravima.

guest

0 Comments
Inline Feedbacks
Pogledaj sve komentare
0
Pogledaj komentare ili komentirajx