Tech & internet / Sciences

2.147.483.647: pourquoi ce nombre peut tout faire buguer et rend fous les informaticiens

Temps de lecture : 2 min

Red numbers / DaveBleasdale via FlickrCC License by
Red numbers / DaveBleasdale via FlickrCC License by

L’explosion du vol du 4 juin 1996 (sans équipage) d’Ariane 5, la mort de 28 soldats américains lors de la guerre du Golfe, tués par un missile Scud irakien qu’un missile Patriot avait échoué à intercepter et le plantage du compteur de visionnages de YouTube par Gangnam Style ont la même origine.

La BBC écrit qu’il s’agit d’un bug informatique qui fait planter les programmes quand ils atteignent le nombre 2.147.483.647 (deux milliards cent quarante-sept millions quatre cent quatre-vingt-trois mille six cent quarante-sept). Ce nombre correspond à la valeur maximale programmée dans les microprocesseurs de 32-bits et, lorsque le programme atteint cette capacité maximale de stockage, il plante.

Et ça n’est pas tout. Comme nous l’écrivions le 1er mai, l'autorité américaine de l'aviation civile vient d'ordonner aux compagnies opérant des Boeing 787 Dreamliner de couper de manière périodique l'alimentation électrique des générateurs de l'avion tous les 248 jours. Or, compté en centièmes de secondes, ce nombre de jours correspond au même nombre maudit.

L'article de la BBC raconte que c'est aussi ce bug qui est soupçonné d'avoir causé la perte de contact par la Nasa en 2013 de sa sonde spatiale Deep Impact.

D'autres conséquences de ce bug sont plus amusantes: le nombre est devenu célèbre quand le clip Gangnam Style du Sud-Coréen PSY l'a atteint en nombre de vues sur YouTube, obligeant l'entreprise à reprogrammer son compteur pour désormais accepter plusieurs quintillions de vues (ou 1030). C'est aussi ce plantage qui rend le pacifiste Gandhi soudainement belliqueux dans le jeu vidéo de stratégie Civilization, menaçant les joeurs d'utiliser l'arme nucléaire pour les détruire...

Un nouveau bug de l’an 2000 en 2038

Selon la BBC, un programmeur a anticipé il y a déjà 15 ans qu’il fallait se préparer à un bug de grande ampleur le 19 janvier 2038 à 3 heures 14 minutes et 7 secondes, temps universel. A ce moment précis, tous les logiciels qui tournent sous Unix et comptent en secondes à partir du 1er janvier 1970 à minuit atteindront le fameux nombre 2.147.483.647.

Dès 1999, un article du New York Times alertait sur l'urgence qu'il y avait à se pencher sur cette échéance qui n'est lointaine qu'en apparence. Par exemple, les remboursements de prêts sur 30 ans ont été dès 2009 calculés jusqu'à 2039. Mais surtout, les programmes informatiques sont construits par couches successives, et les plus récentes sont vulnérables aux couches inférieures...

Inscrivez-vous à la newsletter de SlateInscrivez-vous à la newsletter de Slate

Les informaticiens le reconnaissent, on ne sait pas encore précisément quelles conséquences pourrait avoir ce bug de l'an 2038, ni s'il sera plus grave que celui du passage à l'an 2000, finalement bien maîtrisé. Et nul doute qu'un marché de reprogrammation de ce bug se développera avant la date fatidique.

Newsletters

«On a inventé le crypto-communisme»: les acheteurs du NFT à 69 millions nous livrent leurs confidences

«On a inventé le crypto-communisme»: les acheteurs du NFT à 69 millions nous livrent leurs confidences

Dans leur premier entretien avec un média français, les fondateurs de Metapurse évoquent le tourbillon «post-Beeple», leurs ambitions pédagogiques, leur musée virtuel (et remercient Mark Zuckerberg d'avoir agité le drapeau du métavers).

Comment utiliser les réseaux sociaux sans bousiller sa santé mentale

Comment utiliser les réseaux sociaux sans bousiller sa santé mentale

Ça va être difficile, mais c'est pour votre bien.

«Meta», la déclaration d'intention idéologique de Zuckerberg

«Meta», la déclaration d'intention idéologique de Zuckerberg

Le relookage de Facebook n'est pas une affaire d'image: c'est une question de vision.

Podcasts Grands Formats Séries
Slate Studio