Catégories
Espace & Univers

4 Juin 1996 – Les pires bugs informatiques de l’histoire : La catastrophe d’Ariane 5

ARIANE 5 First Flight Failure - Flight 501, June 4, 1996, European Space Agency, Rocket Launch - YouTubeUne erreur en virgule flottante qui a causé des dommages d’une valeur d’un demi-milliardProblèmes de sécurité avec le logiciel Novembre ppt téléchargerLe 4 juin 1996, Ariane 5 effectue son vol inaugural qui se soldera par un échec dû à un bug informatique, la fusée explose en vol.The Ariane 5 Launcher Failure - ppt downloadLes pires bugs informatiques de l’histoire est une mini-série commémorant la découverte du premier bug informatique il y a soixante-dix ans. Bien que ces histoires soient plus extrêmes que la plupart des bogues logiciels que les ingénieurs rencontreront au cours de leur carrière, elles valent la peine d’être étudiées pour les informations qu’elles peuvent offrir sur le développement et le déploiement de logiciels. Ces bugs informatiques ont laissé un impact significatif sur les personnes qui les ont vécus, et nous espérons qu’ils offriront de précieuses leçons que nous pourrons tous appliquer à notre propre travail et projets. Découvrez d’autres bogues informatiques dans la série : The Mars Climate Orbiter, qui a perdu 460 millions de dollars en 45 minutes, et Therac-25.Ariane-5: Learning from Flight 501 and Preparing for 502Ariane 5

Le 4 juin 1996, la toute première fusée Ariane 5 allume ses moteurs et commence à s’éloigner des côtes de la Guyane française. 37 secondes plus tard, la fusée a basculé de 90 degrés dans la mauvaise direction, et moins de deux secondes plus tard, les forces aérodynamiques ont déchiré les propulseurs de l’étage principal à une hauteur de 4 km. Cela a provoqué le déclenchement du mécanisme d’autodestruction et le vaisseau spatial a été consommé dans une gigantesque boule de feu d’hydrogène liquide.PPT - The Ariane 5 Rocket Disaster PowerPoint Presentation, free download - ID:5524006Le lancement désastreux a coûté environ 370 millions de dollars, a conduit à une enquête publique et, par la destruction de la charge utile de la fusée, a retardé la recherche scientifique sur le fonctionnement de la magnétosphère terrestre pendant près de 4 ans. Le lancement d’Ariane 5 est largement reconnu comme l’un des échecs logiciels les plus coûteux de l’histoire.

Qu’est ce qui ne s’est pas bien passé ?A Modern Icarus — the crash and burn of Ariane 5 Flight 501 | by Bishr Tabbaa | DataSeries | MediumLe défaut a été rapidement identifié comme un bogue logiciel dans le système de référence inertielle de la fusée. La fusée a utilisé ce système pour déterminer si elle pointait vers le haut ou vers le bas, ce qui est formellement connu sous le nom de biais horizontal, ou de manière informelle sous le nom de valeur BH. Cette valeur était représentée par une variable flottante 64 bits, ce qui était parfaitement adéquat.Status of Ariane-5 Main Development TestsCependant, des problèmes ont commencé à survenir lorsque le logiciel a tenté de bourrer cette variable 64 bits, qui peut représenter des milliards de valeurs potentielles, en un entier 16 bits, qui ne peut représenter que 65 535 valeurs potentielles. Pendant les premières secondes de vol, l’accélération de la fusée était faible, la conversion entre ces deux valeurs a donc réussi. Cependant, à mesure que la vitesse de la fusée augmentait, la variable 64 bits dépassait 65k et devenait trop grande pour tenir dans une variable 16 bits. C’est à ce stade que le processeur a rencontré une erreur d’opérande et a rempli la variable BH avec une valeur de diagnostic.Why is Ariane-5 one of the best heavy-lift launch vehicles? - Oneindia NewsPas assez d’espace pour atteindre l’espace

En termes simples, cela peut être considéré comme une tentative de faire entrer 10 millions de litres de crème glacée dans un réfrigérateur de camping par une chaude journée d’été. Tout ira bien pour les premiers bacs, mais après un certain seuil, vous ne pourrez plus rien y mettre, la porte du réfrigérateur sera bloquée grande ouverte et tout commencera à fondre très, très vite.

Le système de référence inertiel de sauvegarde a également échoué en raison de la même condition d’erreur, ce qui signifie qu’à T + 37, la variable BH contenait une valeur de diagnostic du processeur, destinée uniquement à des fins de débogage. Cela a été interprété à tort comme des données de vol réelles et a provoqué une sur-correction immédiate des moteurs en poussant dans la mauvaise direction, entraînant la destruction de la fusée quelques secondes plus tard.Butrous Foundation auf Twitter: „On 4th of June 1996, an unmanned Ariane 5 rocket launched by the European Space Agency exploded just forty seconds after its lift-off. The cause most likely softwareCela a fonctionné sur le dernier appareil

Plusieurs facteurs rendent cet échec particulièrement irritant. Premièrement, la valeur BH n’était même pas requise après le lancement et avait simplement été laissée dans la base de code du prédécesseur de la fusée, l’Ariane 4, qui nécessitait cette valeur pour l’alignement après le lancement. Deuxièmement, le code qui aurait intercepté et géré ces erreurs de conversion avait été désactivé pour la valeur BH, en raison de contraintes de performances sur le matériel d’Ariane 4 qui ne s’appliquaient pas à Ariane 5.Malfunction - Ariane 5 Rocket Explosion - 5G Security by Marin IvezicUn dernier facteur contributif était un changement dans les besoins des utilisateurs – en particulier dans le plan de vol de la fusée. L’Ariane 5 a été lancée avec une trajectoire beaucoup plus raide qu’Ariane 4, ce qui a entraîné une vitesse verticale plus élevée. Au fur et à mesure que la fusée se dirigeait vers l’espace plus rapidement, il y avait une plus grande certitude que la valeur BH rencontrerait l’erreur de conversion.

En fin de compte, l’Agence spatiale européenne a réuni une équipe pour récupérer les journaux des deux systèmes de référence inertiels, qui étaient répartis sur un champ de débris d’environ 12 kilomètres carrés. Leur travail a été entravé par un terrain marécageux traître, des produits chimiques dangereux dispersés par la fusée et un immense examen public de la part des médias, le tout à cause d’une seule erreur de casting.How Europe Designed and Evolved The Ariane Rocket Over Last 4 Decades - YouTubeNotre série sur les pires bogues logiciels de l’histoire est en l’honneur du Bug Day 2017 . Il y a soixante-dix ans, Grace Hopper a découvert le premier bogue informatique – un papillon de nuit était coincé entre les relais de l’ordinateur Harvard Mark II sur lequel elle travaillait. La notion de bogues a été décrite dans d’autres domaines auparavant, mais la découverte du papillon de nuit a été la première utilisation du terme « débogage » dans le domaine des ordinateurs.

Bugsnag surveille automatiquement vos applications à la recherche d’erreurs nuisibles et vous en avertit, vous donnant une visibilité sur la stabilité de votre logiciel. Vous pouvez nous considérer comme un contrôle de mission pour la qualité des logiciels.

Le développement d’Ariane 5 était à l’époque le programme le plus coûteux et le plus ambitieux de l’Agence spatiale européenne.Arianespace opens busy year with successful Ariane 5 launch – Spaceflight Now«Le 4 juin 1996 a été un choc total. Personne ne s’attendait à une catastrophe pareille», témoigne Stefano Bianchi, actuel responsable du programme Vega à l’Agence spatiale européenne (ESA) et ancien membre du programme de développement d’Ariane 5. «». Le vol inaugural d’Ariane 5 s’est interrompu 37 secondes après le décollage, avec une explosion spectaculaire à 4 000 mètres d’altitude.

Le choc était d’autant plus grand que le développement d’Ariane 5 était à l’époque le programme le plus coûteux et le plus ambitieux de l’Agence spatiale européenne. Le lanceur lourd devait au départ emporter des astronautes européens à bord d’une mini-navette appelée Hermès. Mais le projet, trop coûteux et trop complexe, avec des contraintes de sûreté nouvelles introduites après l’explosion de la navette américaine Challenger en 1986, fut abandonné en 1992. Restait alors l’objectif de gagner en puissance par rapport à Ariane 4, pour être capable de lancer même les satellites les plus lourds.Arianespace Ariane 5 | Galaxy 30, Mev-2 & Bsat-4B — Geoff BarrettSi vous avez déjà fait un peu de programmation, vous devez connaître le terme : virgule flottante. L’une des erreurs les plus négligées et potentiellement dangereuses que l’on rencontre est l’erreur en virgule flottante.

Je parie qu’un programmeur doit avoir vu l’erreur de virgule flottante au moins une fois dans sa vie. Mais combien de dégâts une erreur en virgule flottante peut-elle causer ? Demandez cela à l’Agence spatiale européenne qui a perdu un effort de plus d’une décennie et 500 millions de dollars, tout cela grâce à un bogue en virgule flottante.1: Left: Graphical illustration of Ariane 5. Right: Ariane 5 shortly... | Download Scientific DiagramL’histoire d’Ariane 5 :

Le 4 juin 1996, le vol inaugural du lanceur Ariane 5 se solde par un échec. Environ 40 secondes seulement après le début de la séquence de vol, à une altitude d’environ 3700 m, le lanceur a dévié de sa trajectoire de vol, s’est désintégré et a explosé.

La panne d’Ariane 501 a été causée par la perte totale des informations de guidage et d’attitude 37 secondes après le début de la séquence d’allumage du moteur principal (30 secondes après le décollage). Cette perte d’information était due à des erreurs de spécification et de conception dans le logiciel du système de référence inertiel.

L’exception logicielle SRI* interne a été provoquée lors de l’exécution d’une conversion de données de virgule flottante 64 bits en valeur entière signée 16 bits. Le nombre à virgule flottante qui a été converti avait une valeur supérieure à ce qui pouvait être représenté par un entier signé de 16 bits.

Alors, que s’est-il passé exactement ?

Un nombre à virgule flottante de 64 bits relatif à la vitesse horizontale de la fusée par rapport à la plate-forme a été converti en un entier signé de 16 bits. Le nombre était supérieur à 32 767, le plus grand entier pouvant être stocké dans un entier signé de 16 bits, et la conversion a donc échoué.

Le logiciel a fini par déclencher un diagnostic du système qui a vidé ses données de débogage dans une zone de mémoire utilisée par les programmes guidant les moteurs de la fusée. Dans le même temps, le contrôle a été basculé sur un ordinateur de secours qui possédait malheureusement les mêmes données.

Cela a été interprété à tort comme nécessitant une action corrective forte et les moteurs de la fusée ont pivoté jusqu’aux limites de leurs supports. Le désastre s’ensuivit.

Le codage a été fait en Ada. La dernière ligne est celle qui a causé la tragédie :

6. Developing Ada Source Code — GNATbench for WRS Workbench User' Guide 23.0.20220530.w documentation

L’explosion d’Ariane 5

Le 4 juin 1996, une fusée sans pilote Ariane 5 lancée par l’Agence spatiale européenne a explosé à peine quarante secondes après son décollage de Kourou, en Guyane française. La fusée en était à son premier voyage, après une décennie de développement coûtant 7 milliards de dollars. La fusée détruite et sa cargaison étaient évaluées à 500 millions de dollars. Une commission d’enquête a enquêté sur les causes de l’explosion et en deux semaines a publié un rapport. Il s’est avéré que la cause de la panne était une erreur logicielle dans le système de référence inertiel. Plus précisément, un nombre à virgule flottante de 64 bits relatif à la vitesse horizontale de la fusée par rapport à la plate-forme a été converti en un entier signé de 16 bits. Le nombre était supérieur à 32 767, le plus grand entier pouvant être stocké dans un entier signé de 16 bits, et la conversion a donc échoué.Flight VA257 | Ariane 5 Summary | Arianespace - YouTubeLes paragraphes suivants sont extraits du rapport de la commission d’enquête . Un article intéressant sur l’accident et ses implications par James Gleick est paru dans le New York Times Magazine du 1er décembre 1996. L’ article de CNN rapportant l’explosion , dont les graphiques ci-dessus sont tirés, est également disponible.

Le 4 juin 1996, le vol inaugural du lanceur Ariane 5 se solde par un échec. Environ 40 secondes seulement après le début de la séquence de vol, à une altitude d’environ 3700 m, le lanceur a dévié de sa trajectoire de vol, s’est désintégré et a explosé.

La panne d’Ariane 501 a été causée par la perte totale des informations de guidage et d’altitude 37 secondes après le début de la séquence d’allumage du moteur principal (30 secondes après le décollage). Cette perte d’information était due à des erreurs de spécification et de conception dans le logiciel du système de référence inertiel.

L’exception logicielle SRI* interne a été provoquée lors de l’exécution d’une conversion de données de virgule flottante 64 bits en valeur entière signée 16 bits. Le nombre à virgule flottante qui a été converti avait une valeur supérieure à ce qui pouvait être représenté par un entier signé de 16 bits.PPT - The Ariane 5 Rocket Disaster PowerPoint Presentation, free download - ID:5524006

https://www.lefigaro.fr/sciences/2018/09/23/01008-20180923ARTFIG00157-4-juin-1996-ariane-5-explose-en-vol-lors-de-sa-mission-inaugurale.php

https://itsfoss.com/a-floating-point-error-that-caused-a-damage-worth-half-a-billion/

https://www.bugsnag.com/blog/bug-day-ariane-5-disaster 

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *