Le 19 janvier 2038 à 03h14:07, un énorme bug causera un dysfonctionnement des systèmes d'information, entrainant un dérèglement des ordinateurs ou autres appreils connectés.
Tous les ordinateurs tractent le temps en utilisant un système de repésentation du temps,l'UNIX (ou timestamp), qui compte les secondes depuis le 1er janvier 1970(date de création), en utilisant un language de 32 bits. Le problème avec le temps unix est sa limitation, le chiffre maximmum supporté par ce système est 2 147 183 647 (secondes) qui correspond au 1eer janvier 2038 à 3h14:07.
De ce fait, à la date fatidique le logiciel de 32 bits restaurera la date du 13 décembre 1901. En effet, le 13 décembre 1901 et non pas le 1er janvier 1970 qui est la date création du temps UNIX.
Il faut comprendre que en temps UNIX cette date correspond à -2 147 183 647, ayant atteint sa limite le temps passe au négatif allant alors en dessous de 0 avant même la date de création de l'UNIX.
Etant basé sur du binaire, on voit que 2 147 183 647 se lit aussi: 01111111 11111111 11111111 11111111, alors la seconde qui suivra fera se déplacer le zéro : 10000000 00000000 00000000 00000000,
rendant le temps incorrect et négatif. Cela aura donc de lourdes conséquences sur le monde de l'informatique au niveau:
-des clés USB qui utilise le temps en 32 bits
-des fichiers ZIP
-des bases de donnés
-des logiciels
-des languages comme SQL et Php utilisés sur des centaines de millions de sites web
Ce bug entrainera un faussement de billions de données enregistrées, ce qui soulève une question importante, comment éviter ce désastre?
Afin d'éviter toutes ces retombés,il n'existe pas solutions faciles puisque par exemple les appareils comme les voitures ou encore le four à micro-ondes ont des systèmes embarqués,qui sont fabriqués de manière à fonctionner en autonomie, c'est-à-dire sans nécéssiter de mise à jour de logiciel, ne pourront pas être modifier. Contrairement aux appareils connectés qui peuvent eux être mis à jour avec un logiciel. On pourrait faire passer les sytèmes de date d'entier de 32 bit signé en sytème d 'entier de 32 bit non-signé repoussant la date butoir du prochain bug à 2106 mais pour tous les systèmes qui datent d'avant 1970 auront des problèmes à accéder aux données. Il est aussi possible d'augmenter le stockage de données de 32 à 64 bits repoussant la date du prochain bug à l'an 292 277 026 596 mais ici encore il y auraient un problème de compatibilité de stockage avec les systèmes plus anciens qui utilisent encore le stockage de données de 32bit.
Enfin, il n'y a pas de solutions universelles, même les solutions les plus évidentes et connues ont des problèmes sur certains points. Toutefois , il y a de bonnes nouvelles les nouveaux appareils électroniques sont fabriqués en utilisant le systeme de stockage de 64bit repoussant le prochain bug à l'an 292 277 026 596 à 15:30:08s,le dimanche 4 décembre. Ce bug est bien connu et est étudié par de nombreux ingénieurs qui trouveront rapidement une solution à ces problèmes.
Language binaire: le language binaire aussi appelé code binaire est un système de numération utilisant la base 2 avec un nombre exprimé sous forme de série de 0 et de 1.
Systeme d'exploitation: Le systeme d'exploitation est un ensemble de programmes permettant de faire fonctionner et contrôler un appareil informatique.
Timestamp: Le timestamp représente le nombre de seconde qui s'est écoulé depuis le 1er janvier 1970 (début de l'heure UNIX).
Unix: L'heure Unix ou heure Posix (aussi appelée Unix timestamp) est une mesure du temps basée sur le nombre de secondes écoulées depuis le 1er janvier 1970 00:00:00 UTC,