Mercredi 21 janvier dernier, c’est la stupeur. Dix-huit jours après l’atterrissage réussi sur Mars du premier des deux robots géologues de la Nasa, Spirit ne répond plus. Muet ! Impossible de lui transmettre ses
instructions.Jeudi 22 janvier, Pete Theisinger, directeur de la mission Mars Exploration Rover, déclare : ‘ Nous avons envoyé ce matin un signal vers Spirit, qui nous a répondu en retour. Ce qui peut vouloir dire que
le robot est en mode erreur pour une raison inconnue […] ‘ Plus de trois semaines après l’incident, la cause connue est fidèle à ce diagnostic.
Le syndrome de la boucle infinie
L’ordinateur de bord du robot est animé par le système d’exploitation temps réel VxWorks de Wind River. La taille de la mémoire vive ?” de type
Flash ?” de l’unité centrale se limite à 128 Mo alors que VxWorks occupe 32 Mo à lui seul. La mémoire RAM de Spirit sert de
cache à tous les éléments du système de fichiers de la machine : données, répertoires, fichiers.Or, après sept mois de croisière de la Terre à Mars, des milliers de fichiers se sont accumulés dans la mémoire Flash du robot, causant son débordement et, conséquence, un redémarrage de l’ordinateur. Problème : au
reboot, le système de fichiers recharge en mémoire l’image de ses données, reproduisant, comme dans une boucle infinie, l’erreur de saturation de la RAM… et provoquant à nouveau la relance du
système.Phénomène sans fin, qui aurait sonné le glas de l’engin si ses batteries n’avaient flanché, déclenchant l’entrée du système dans un mode dégradé. Et permettant à l’équipe au sol de reprendre le robot en main
et de vider sa mémoire. Le dysfonctionnement aurait-il pu être détecté lors de tests au sol ? Oui, mais cela aurait ralenti le programme, déjà calé sur un planning serré.Morale de l’histoire, valable pour l’échec d’Ariane 5 en 1996 et pour tout projet informatique : mieux vaut investir dans le test logiciel plutôt que de courir au désastre.
🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.