- Bogue de l'an 2038
-
Bogue de l'an 2038
En informatique, le bogue de l'an 2038 est un problème similaire au bogue de l'an 2000 qui pourrait perturber le fonctionnement de certains ordinateurs aux alentours du 19 janvier 2038, et plus particulièrement le 19 janvier 2038 à 3 h 14 min 7 s, temps universel[1].
Le problème concerne des logiciels qui utilisent la représentation POSIX du temps, dans lequel le temps est représenté comme un nombre de secondes depuis le 1er janvier 1970 à 0 heure. Sur les ordinateurs 32 bits, la plupart des systèmes d'exploitation concernés représentent ce nombre comme un nombre entier signé de 32 bits, ce qui limite le nombre de secondes à 231 - 1, soit 2 147 483 647 secondes (01111111 11111111 11111111 11111111 en binaire). Ce nombre maximum sera atteint le 19 janvier 2038 à 3 h 14 min 7 s (temps universel). Dans la seconde suivante, la représentation du temps « bouclera » (10000000 00000000 00000000 00000000 en binaire) et représentera -2 147 483 648 en complément à deux, et ainsi, l'ordinateur affichera la date du 13 décembre 1901.
Les logiciels concernés sont très nombreux car la norme POSIX, inspirée des systèmes UNIX, a été utilisée pour de nombreux programmes écrits en langage C pour de nombreux systèmes d'exploitation. Sur certains ordinateurs, la date limite est située en 2106 et non en 2038 car le temps y est représenté par un entier à 32 bits non signé (tout en restant conforme à la norme POSIX). Mais ces ordinateurs sont minoritaires. Le passage à 64 bits résout le problème définitivement, la date butoir se situant à l'an 292 277 026 596 après J.C. (Soit environ 21 fois l'âge de l'univers !), car les 64 bits permettent à l'ordinateur de pousser la limite à : 263 - 1 secondes. Mais malgré le succès croissant des ordinateurs à 64 bits, il est possible que de nombreux ordinateurs à 32 bits soient encore actifs en 2038, en particulier dans les systèmes embarqués.
Il n'existe pas de correctif simple pour ce problème, dans la mesure où le format sur 32 bits est présent aussi dans de nombreux formats de fichiers actuels (par exemple le format ZIP). Un changement de représentation dans les ordinateurs rendrait donc inopérants les programmes qui exploitent l'actuelle équivalence entre la représentation interne et le format de fichiers.
Notes et références
- ↑ Sare Robinson, « Beyond 2000: Further Troubles Lurk in the Future of Computing », 19 juillet 1999, The New York Times. Consulté le 8 août 2007
Liens externes
Site résumant d'autres bugs similaires à celle de 2038 et de 2000.
- Portail de l’informatique
Catégories : Normalisation | Bogue | 2038 | Calendrier
Wikimedia Foundation. 2010.