Système multitâches, mise en réseau, clavier, crainte de l'espionnage... Il y a 50 ans, l'informatique était au cœur de la mission Apollo avec des technologies naissantes qui deviendront très vite indispensables pour la conquête spatiale, mais aussi dans tous les secteurs et la vie de tous les jours.
au sommaire
À l'approche du 50e anniversaire du premier pas de l'Homme sur la Lune, cette prouesse technologique et humaine semble d'autant plus incroyable avec le recul. Tous les ordinateurs utilisés à l'époque pour un tel exploit n'égaleraient pas les performances d'un smartphone d'aujourd'hui. Deux chercheurs de chez GoogleGoogle avaient d'ailleurs comparé en 2012 le fonctionnement du moteur de recherche avec les ordinateurs de la mission spatiale. Une seule et simple recherche équivalait alors à toute la puissance de calcul utilisée en vol et au sol au cours du programme spatial Apollo, qui a duré pendant 11 ans... Une comparaison qui serait d'autant plus édifiante en 2019.
La mission ApolloApollo s'est appuyée sur plusieurs ordinateurs différents, avec des innovations aussi bien au sol que sur les navettes. Au sol, IBMIBM avait fourni les ordinateurs centraux utilisés pour les programmes Mercury et Gemini, ce qui lui a permis de découvrir les limites de ses machines. Le fabricant a sorti en 1964 une nouvelle série d'ordinateurs baptisée System/360 qui pouvaient être reliés en réseau, ce qui était nouveau à l'époque. Ils étaient équipés d'un système d'exploitation appelé OS/360 qui avait la particularité d'être un système multitâche.
Un code abrégé pour compenser un manque de mémoire
Ce sont plus spécifiquement les ordinateurs IBM System/360 Model 75 mis en réseau qui ont été utilisés pour les systèmes informatiques de la mission Apollo. Leur seul défaut était au niveau de la mémoire principale, limitée à environ un mégaoctet. Les ingénieurs avaient prévu que les missions généreraient trop de données pour les ordinateurs, et ont donc dû créer des abréviations pour économiser la mémoire.
La plus grande avancée était cependant du côté de la navette et du module lunaire. Les astronautesastronautes avaient besoin d'un ordinateur spécial pour effectuer un vol vers la lune, car la navigation implique de trop nombreuses variables. La navette part de la Terre, qui tourne sur elle-même et autour du SoleilSoleil, pour viser un point sur la LuneLune qui tourne autour de la Terre. Il est donc nécessaire de calculer en même temps combien de temps dure un trajet vers un site spécifique sur la Lune, mais également de déterminer où se situera le site visé. De plus, à cette époque en pleine « guerre froide », les Américains craignaient que les Russes ne bloquent les communications, la navette devait donc être capable de se guider seule.
Une mémoire tissée à la main
La NasaNasa a donc confié au Massachusetts Institute of Technology (MIT) la tâche de créer l'Apollo Guidance Computer (AGC), qui devait donc être un petit ordinateur de faible consommation, capable de gérer la navigation d'un voyage vers la Lune, à une époque où les ordinateurs étaient rares et occupaient des pièces entières. Il a repris la technologie de guidage du missilemissile PolarisPolaris, avec un gyroscope et des accéléromètres combinés à un sextant pour déterminer la position de la navette.
Le résultat de leur travail a été un ordinateur particulièrement innovant, et notamment le premier à utiliser des circuits intégréscircuits intégrés. L'AGC utilise des mots de 16 bits, avec 72 kilo-octetsoctets de mémoire mortemémoire morte et 4 kilo-octets de mémoire vivemémoire vive. La mémoire morte, qui stockait les programmes, avait la particularité d'être construite pour être impossible à modifier, en étant construite à la main. D'anciennes employées de l'industrie du textile faisaient passer des fils électriquesfils électriques à travers, ou autour, d'anneaux en ferfer pour programmer le code binaire.
Un ordinateur hiérarchique qui a sauvé le premier alunissage
L'ordinateur était accompagné d'un appareil appelé DSKY (Display and Keyboard), un clavier accompagné d'un petit affichage, qui permettait aux astronautes de communiquer avec l'ordinateur. L'ordinateur complet, qui avait l'apparence d'une valise dorée accompagnée du boîtier DSKY, pesait 32 kilogrammeskilogrammes. La programmation a nécessité plusieurs années avec une équipe de 350 personnes, soit 1.400 années-hommes, le temps qu'aurait mis une personne seule.
L'AGC a été conçu pour être robuste, de manière à éviter les pannes dans une situation critique. Les différentes tâches exécutées par l'ordinateur avaient chacune une priorité, et il pouvait ignorer une tâche secondaire pour se concentrer sur les processus prioritaires, contrairement aux autres ordinateurs de l'époque qui répartissaient simplement le temps de calcul entre les différentes tâches. Cette conception a d'ailleurs été salvatrice, puisqu'une erreur de mémoire liée au radar est apparue au moment de la descente vers la surface dans le module lunaire. L'erreur étant considérée comme secondaire, ils ont pu continuer la mission. L'ordinateur a redémarré et a pu reprendre les programmes critiques au même point, en ignorant les tâches liées au radar et évitant ainsi aux astronautes de devoir annuler le premier atterrissage sur la Lune.