Cerca nel blog

7.3 Ma i computer dell’epoca non erano troppo primitivi?

IN BREVE: No. La tecnologia informatica dell’epoca era modesta rispetto a quella di oggi, ma era comunque sufficiente. Inoltre a bordo c’erano tre computer molto potenti: gli astronauti, tutti addestrati a calcolare traiettorie, orbite e rendez-vous a mano. E il grosso della potenza di calcolo era nei grandi computer sulla Terra.


IN DETTAGLIO: Spesso capita di sentir dire che un moderno telefonino ha più memoria e potenza di calcolo del computer delle missioni Apollo e che quindi è impensabile che sia stata raggiunta la Luna con un trabiccolo del genere. Le cose stanno un po’ diversamente.

Innanzi tutto, non c’era un computer a bordo dei veicoli Saturn-Apollo, ma sette: due AGC (Apollo Guidance Computer), uno nel modulo lunare e uno nel modulo di comando; un LVDC (Launch Vehicle Digital Computer) a bordo del Saturn V; e un AGS (Abort Guidance System) nel modulo lunare. Gli altri tre erano gli astronauti, tutti addestrati a calcolare traiettorie, rendez-vous e orbite usando i regoli calcolatori e le tabelle precalcolate presenti a bordo e ad orientarsi usando le stelle.

Concepire gli astronauti come “computer” di bordo non è una battuta: fu la scelta che permise gli allunaggi, sopperendo alle lacune degli automatismi dell’epoca. Basti pensare alle correzioni che dovettero fare Armstrong e Aldrin per evitare che i sistemi automatici di allunaggio li portassero in una distesa irta di massi, o al riallineamento manuale effettuato da James Lovell durante la missione Apollo 13 dopo che il sistema di navigazione era stato spento per risparmiare la poca energia rimasta, in modo da far sopravvivere gli astronauti.

Inoltre non va dimenticato che a Terra c’erano i grandi computer del Controllo Missione: il Real-Time Computer Complex di IBM a Houston, basato su ben cinque mainframe IBM System/360 Model 75J. Il grosso delle operazioni di calcolo era affidato a questi grandi sistemi informatici. Maggiori dettagli sull’RTCC sono nell’ottimo articolo Il Real-Time Computer Complex (RTCC) di Tranquillity Base (in italiano).

È vero che la potenza di calcolo dei computer di bordo dei veicoli Apollo era modestissima rispetto agli standard odierni: per esempio, gli AGC (Figura 7.3-1), progettati dall’Instrumentation Laboratory del MIT sotto la supervisione di Charles Draper, avevano queste caratteristiche:
  • 2048 byte di memoria riscrivibile (RAM), mentre un PC portatile oggi ne ha comunemente 16 gigabyte, cioè otto milioni di volte di più;
  • 36.864 bit di memoria di sola lettura (ROM);
  • un clock a 2,048 megahertz, mentre oggi è normale parlare di clock oltre i 4 gigahertz, cioè duemila volte di più.

Tuttavia bisogna tenere presente che erano computer dedicati a un’unica funzione, cioè la navigazione, e non dovevano gestire interfacce grafiche animate o altri fronzoli.

È falso, invece, che gli AGC fossero meno potenti di una calcolatrice tascabile, come si sente dire spesso: le loro prestazioni erano invece paragonabili a quelle di un Apple II (1977), di un Commodore 64 (1982) o di uno ZX Spectrum (1982).


Figura 7.3-1. Lo schermo e la tastiera (DSKY) di un Apollo Guidance Computer (AGC).


Chi volesse conoscere meglio le reali caratteristiche dell’Apollo Guidance Computer o togliersi dubbi sulla sua autenticità ha a disposizione siti dettagliatissimi come Virtual AGC (che permettono anche di ricostruirne uno fisicamente, oppure di emularne uno su un computer di oggi) e libri come The Apollo Guidance Computer: Architecture and Operation di Frank O’Brien (Springer Praxis, 2010).

Il software originale di questo computer è stato pubblicato su Virtual AGC nel 2003 ed è stato diffuso su Github a luglio del 2016, per cui è liberamente ispezionabile. Ovviamente una comprensione approfondita richiede competenze informatiche di livello medio-alto: chi non le ha può rivolgersi a un informatico di sua fiducia per verificare che il software è reale e funziona.

Un’ipotetica finzione avrebbe comportato anche la scrittura di tutto questo software, la cui quantità è ben illustrata dalla Figura 7.3-2, che ne mostra una stampa accanto a Margaret Hamilton, che era direttore e supervisore della programmazione del software del progetto Apollo a soli 33 anni, in un’epoca in cui i posti chiave erano tutti in mano agli uomini e il sessismo era ovunque.

Figura 7.3-2. Margaret Hamilton con la stampa del software del computer AGC dell’Apollo. Credit: NASA.


Fu lei, insieme alla propria squadra, a definire i criteri di progettazione e di collaudo del software che faceva funzionare il computer di bordo del modulo lunare e a realizzare in particolare i concetti di elaborazione asincrona e schedulazione delle priorità che permisero ai computer delle missioni Apollo di non bloccarsi. Queste scelte tecniche consentirono per esempio agli astronauti di Apollo 11 di salvarsi dal sovraccarico di dati avvenuto durante la discesa sulla Luna e di atterrare sani e salvi.

Per il suo lavoro, nel 2003 la NASA le conferì l’Exceptional Space Act Award, che comprendeva il premio in denaro più alto mai dato a una singola persona dall'ente spaziale. Margaret Hamilton fondò nel 1986 la Hamilton Technologies, una società specializzata in software ad altissima affidabilità, di cui è tuttora CEO.

Tutto questo lavoro non rimase isolato e fine a se stesso, ma fu ben presto traslato nella tecnologia di tutti i giorni. I concetti di base dell’AGC, per esempio, furono incorporati nello Shuttle e gettarono le basi per l’odierna tecnologia di pilotaggio assistito degli aerei militari e di linea. I metodi sviluppati sotto la supervisione di Margaret Hamilton per andare sulla Luna sono quelli che stanno ancora oggi alla base di un’industria che vale circa 400 miliardi di dollari.