Technologiczne mity. Lądowanie na Księżycu miał obsługiwać komputer o wydajności kalkulatora
18.07.2019 08:29, aktual.: 19.07.2019 17:58
Zalogowani mogą więcej
Możesz zapisać ten artykuł na później. Znajdziesz go potem na swoim koncie użytkownika
Wiele razy spotkałem się z opinią, że komputer odpowiedzialny za lądowanie na Księżycu miał moc obliczeniową tak niską jak kalkulator. Wokół misji Apollo 11 narosło wiele innych mitów i dziwnych historii - jak rola emerytowanych włókniarek przy tworzeniu komputerów. Oto jak było naprawdę.
Kto wymyślił to porównanie?
Porównanie komputera z Apollo 11 z kalkulatorem często ma na celu podkreślenie, że dawni śmiałkowie, dysponujący znacznie mniej zaawansowaną technologią niż my, byli w stanie dokonać czegoś naprawdę istotnego.
Trochę w tym racji. Większość z nas nosi w kieszeni urządzenie o niewyobrażalnej kilkadziesiąt lat temu mocy obliczeniowej, dające dostęp do wiedzy, jaką ludzkość gromadziła przez tysiąclecia. Co z nim robimy? Zamiast lądować na Marsie, strzelamy ptakami w świnie albo marnujemy czas na coś równie bezsensownego.
Tylko czy naprawdę za lądowanie odpowiadał komputer o mocy obliczeniowej kalkulatora? Czytając o tym po raz kolejny, nabrałem podejrzeń, że z tą opowieścią może być podobnie jak z rzekomymi 10 tysiącami prób Edisona (więcej na ten temat znajdziecie w artykule „Technologiczne mity. Ile prób przeprowadził Edison przed wynalezieniem żarówki?”). Wszyscy o tym piszą i powszechnie uważa się to za coś oczywistego, ale brakuje weryfikacji.
Przed komputerową rewolucją
Warto przypomnieć sobie realia lat 60. Wyścig kosmiczny pochłaniał wówczas ogromne środki, na jego potrzeby uruchomiono liczne programy badawcze. Nie będzie przesadą stwierdzenie, że to właśnie program Apollo zainicjował skok technologiczny, jaki w późniejszych latach dokonał się w branży komputerów.
Komputer, który znalazł się na pokładzie Apollo 11, nosił nazwę AGC (Apollo Guidance Computer). Ważył 32 kilogramy i został zaprojektowany w 1966 roku w Charles Stark Draper Laboratory, należącym do Massachusetts Institute of Technology.
Co istotne, choć astronauci mogli liczyć na wsparcie z Ziemi, to NASA liczyła się z ryzykiem, że Rosjanie będą chcieli sabotować misję i zakłócą łączność. Z tego powodu brano pod uwagę możliwość, że wszystkie obliczenia potrzebne podczas misji będą wykonywane przez sprzęt pokładowy.
W kosmicznej wyprawie wzięły udział dwa zestawy AGC. Pierwszy znajdował się w module dowodzenia, czyli orbiterze, w którym Michael Collins okrążał Księżyc w oczekiwaniu na resztę załogi. Drugi umieszczono w lądowniku, w którym Neil Armstrong i Edwin (w 1988 zmienił imię na powszechnie znany przydomek Buzz) Aldrin dolecieli na Srebrny Glob.
Problemy z lądowaniem
Skąd porównanie z kalkulatorem? Być może odpowiada za to interfejs AGC. Za komunikację astronautów z komputerem pokładowym odpowiadał ciekłokrystaliczny wyświetlacz oraz moduł o nazwie DSKY, czyli klawiatura numeryczna wzbogacona o kilka przycisków funkcyjnych. Klawisze z literami nie były potrzebne, polecenia miały bowiem postać liczb. (Jeśli chcecie pobawić się komputerem pokładowym Apollo 11, możecie zrobić to na stronie Virtual AGC).
Mało znany jest fakt, że niewiele brakowało, by misja Apollo 11 w ogóle się nie powiodła. Podczas podejścia do lądowania zbyt duża ilość danych (niektóre źródła wskazują, że wynikało to z awarii urządzenia odpowiedzialnego za ocenę odległości) spowodowała, że AGC wyświetlił komunikat o błędzie.
W tym momencie NASA była gotowa przerwać misję, a odpowiedzialność za to, czy Apollo 11 wyląduje, wziął na siebie 26-letni programista, Steve Bales. Steve prawidłowo ocenił, że komunikat nie oznacza poważnych problemów i zdecydował o kontynuowaniu procedury lądowania.
Znaczenie tej decyzji zostało później docenione. Medale Wolności za księżycową misję dostali nie tylko trzej astronauci, ale również, jako jedyny z personelu naziemnego, Steve Bales.
23-latek i starsze panie
Warto wspomnieć, że za oprogramowanie AGC odpowiadał 23-latek, Don Eyle. Zastosowana w komputerze pamięć ferrytowa sprawiła, że tysiące magnetycznych rdzeni trzeba było połączyć cienkimi drucikami. W tym celu firma Raytheon zatrudniła najlepszych specjalistów na planecie, czyli… emerytowane włókniarki.
Starsze panie bezbłędnie przewlekały druciki według wzoru, co znalazło odzwierciedlenie w nieoficjalnej nazwie pamięci: LOL, czyli little old ladies. Poniższy film pokazuje, jak wyglądał moduł takiej pamięci. To właśnie elementy wykonane przez emerytki odpowiadały za pamięć stałą AGC, która miała pojemność 74 kB.
Apollo Guidance Computer Part 5: We run a chunk of original Apollo code!
Co istotne, pojęcie bajt nie pojawia się w dokumentacji tego sprzętu – AGC posługiwał się słowami maszynowymi mającymi długość 16 bitów. Pamięć kasowalna, czyli odpowiednik dzisiejszego RAM-u, miała pojemność 2048 16-bitowych słów, czyli 4 kB, a jednostka obliczeniowa Appolo Guidance Computer pracowała z częstotliwością 2,048 MHz.
Jeśli porównamy to ze współczesnymi kalkulatorami graficznymi, to mit znajduje potwierdzenie. Przykładem może być choćby produkowany na przełomie wieków kalkulator Texas Instruments TI-93, wyposażony w 25 kB RAM, 512 kB ROM i procesor Zilog Z80 6 MHz.
Uzupełnienie:
O przepaści technologicznej, dzielącej czasy współczesne i program Apollo dobitnie świadczy informacja, którą przytoczył w komentarzu Czytelnik k3mis. Jak wynika z oficjalnych informacji Google'a, obsługa jednego wyszukiwania pochłania więcej mocy obliczeniowej, niż cały program Apollo razem wzięty. Nie jedna, księżycowa misja, tylko cały 11-letni program, w czasie którego wykonano kilka misji bezzałogowych, 11 załogowych i 6 lądowań na Księżycu.
W artykule wykorzystałem informacje z serwisów Inside Search, The Verge, Mars Society, Bitstoria, NASA i Popular Science.