Fikarcnyi memóriája volt a 36 évvel ezelőtt Holdra szálló Apollo 11 küldetés számítógépeinek
A hidegháborús rivalizálás egyik legnagyobb sikert hozó küldetése ért véget pontosan 36 évvel ezelőtt, 1969. július 20-án délután 4 óra 17 perckor -- illetve GMT időzóna szerint már július 21-én --, amikor az Apollo 11 küldetés keretében az Eagle modul leszállt a Holdra. Hat órával később Neil A. Armstrong leugrott a lépcsőről, s azóta legendává vált kis lépését kísérő szavai betöltötték az étert. A küldetés hajszál híján meghiúsult, az Eagle névre keresztelt holdraszálló modulnak ugyanis meghibásodást jelzett a számítógépe, s csupán 30 másodpercre elegendő üzamanyagtartaléka maradt a landolás végére.
Armstrong és társa, Buzz Aldrin 21 órát töltött a Hold felszínén, ahol első látogatóként körülbelül 20 kilogrammnyi holdkőzetet gyűjtöttek össze, és apróbb kísérleteket végeztek el. A küldetés végén beszálltak az Eagle kabinjába és sikeresen dokkoltak a Columbia parancsnoki modulhoz, melyen Michael Collins várta őket.
Akkori csúcstechnika
A sikeres küldetést mai szemmel tekintve őskőkori számítógépek szolgálták ki. Miközben ma akkori szemmel elképzelhetetlen, szuperszámítógépes számítási teljesítménnyel rendelkezhet bárkinek az otthoni mikrosütője, illetve terabájtos kapacitással a számítógépe, az Apollo 11 számítógépeinek csupán pár kilobájtnyi memóriája volt.
A 13 tonnás, 3500 km/h sebességgel Hold körül keringő modul navigációját mintegy 5 ezer igen primitív integrált áramkörből álló -- ekkor alkalmaztak először integrált áramköröket --, 30 kilogramm súlyú számítógép vezérelte. Akkoriban még nem rendelkeztek szoftvert tároló merevlemezekkel, a rendszernek mindössze 74 kilobájtnyi, rögzített memóriája volt, illetve 4 kilobájtnyi "valami", amit ma RAM-nak nevezhetnénk. Egy számítógép kapott helyet a parancsnoki modulban, egy pedig a holdraszálló egységben.
"Kis lépés az
embernek, hatalmas ugrás az emberiségnek"
Navigációs szoftver
Ekkora tárolási kapacitás állt rendelkezésére az MIT Instrumentation Lab kutatóinak, Peter Adlernek és Don Eylesnek, hogy az Apollo 11 küldetés holraszálló moduljának navigációs szoftvert fejlesszenek. Mindkét számítógép egy rögzített és egy törölhető memóriával rendelkezett.
A rögzített memória tárolta a programokat, az állandó paramétereket és a holdraszálláshoz szükséges koordinátákat, melyek összesen mintegy 36864 "szóból" álltak, mindegyik 15 bitnyi + 1 bit paritás hosszúságú volt. Ez összesen csupán 74 kilobájtnyi memóriát jelent. A törölhető memóriában kaptak helyet a számítások eredményei, illetve itt foglaltak helyet a logikai műveletek regiszterei. Ez a memória csupán 2048 x 15+1 bitnyi adatot volt képes tárolni.
AGS
Ezek a számítógépek alkották az Apollo Navigációs Rendszer (AGS, Apollo Guidance and Navigation System) lelkét és az 1960-as évek csúcstechnikáját képviselték. A rögzített memóriát műanyagba ágyazott, ferritgyűrűk köré szőtt rézvezetékek alkották, ezek alkották végül a szoftverek bitjeit, bájtjait. Minden egyes mag egy-egy apró "transzformátor" volt, melyek 64 vezetéken keresztül kapcsolódtak egymáshoz. A törölhető memória hasonló anyagokból épült fel, de az 1-eseket és a nullákat mágnesek segítségével lehetett "beírni".
A számítógép használatához egy interfészre is szükség volt. Az újabb 10 kilogrammot nyomó DSKY beviteli és kijelző eszköz nem rendelkezett a mai számítógépekhez hasonló billentyűzettel, csupán számbillentyűket és néhány speciális gombot használhattak rajta az asztronauták. A parancsokat a "Verb" gomb megnyomását követően lehetett kiadni, míg az adatokat a "Noun" gomb egyidejű lenyomásával lehetett bevinni.
Az Apollo 11 számítógépeinek központi interfésze,
a billentyűzet és kijelző modul
Bár a számítógépek igen lassúak voltak és hihetetlenül kevés memóriával rendelkeztek, már valós idejű, többszálú programfuttatásra képes multitasking rendszert kaptak -- emlékezzünk csak a 74 kilobájtos rögzített memória méretre! A megszakításvezérelt programok voltak felelősek az ereszkedő holdmodul hajtóműveinek megfelelő időpillanatban történő működtetéséért, illetve más, kevésbé fontos műveletek elvégzéséért. Az előre beállított programok némelyike a törölhető memóriát is használta futása során.
Mivel igen kevés memória állt rendelkezésre, a programoknak osztozniuk kellett a memóriacímeken. A fejlesztőknek a tesztelés során arra kellett a legnagyobb figyelmet fordítaniuk, hogy a programok na használjanak azonos memóriaterületet futásuk során. Az adatok véletlen felülírása veszélybe sodorta volna a küldetést és az űrhajósok életét is. Egyes memóriarészeket hét napon keresztül használtak egymást követően különböző programok.
A számítógépeket felkészítették arra az esetre is, ha valami miatt újra kellene indítani őket, illetve a hibatűrés is elsődleges szempont volt a fejlesztés során. A megszakításvezérelt rendszer egyes kritikus processzeket, például az automatikus pilóta programot magasabb prioritáson futtatta, ennek köszönhetően azok akkor is üzemeltek, ha a számítógép programjai hibásan működtek, vagy lefagytak.
Apró hiba
Azon a bizonyos 1969. július 20-ai napon Neil Armstrong és Buzz Aldrin beszállt a holdraszálló modulba és megkezdte az ereszkedést. Mindössze 2000 méter magasan jártak és a rakéták hat perce üzemeltek a végső, 12 perces lassítási művelet során, amikor a számítógép sárga jelzőfénye kigyulladt és a rendszer 1202-es hibát, memória túlterhelést jelzett. Az űrhajósok eligazítást kértek a központtól.
A memória túlterhelést a radarvezérlő program okozta. A hibatűrő számítógép azonban ezeket a másodlagos, az ereszkedés szempontjából lényegtelen adatokat figyelmen kívül hagyta, s folytatta a kritikus számítások további elvégzését. A végső szót Steve Bales, a vezérlőteremben tartózkodó 26 éves AGS-szakértő mondta ki, miután a szimuláció során hasonló problémákat megtapasztalt Jack Garman is megerősítette abban, hogy a küldetés tovább folytatódhat. Bales később gyors és helyes döntéséért szintén megkapta az űrhajósoknak is járó Szabadság Érem kitüntetést.
A visszatérés előtt a számítógépet többször újraindították, s bár a radar programja továbbra sem működött megfelelően -- folyton 1201-es vagy 1202-es hibát jelzett a számítógép -- a rendszer képes volt minden fontos művelet elvégzésére, így az űrhajósok elhagyhatták a Holdat, és végül épségben hazatérhettek.
- Google Moon -- a Google szerint sajtból van a Hold