Bug de l'an 2038

Bug de l'an 2038
Illustration du phénomène. La valeur décimale de la date deviendra négative à 03:14:08 UTC.

En informatique, le bug de l'an 2038 est un problème similaire au bug de l'an 2000 qui pourrait perturber le fonctionnement d'ordinateurs 32 bits aux alentours du 19 janvier 2038, et plus précisément à 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 à minuit (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 à 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). Ces ordinateurs sont toutefois minoritaires. Le passage à un timestamp sur 64 bits introduirait une nouvelle date butoir se situant à l'an 292 277 026 596 ap. J.-C. (soit environ 21 fois l'âge de l'univers) et résoudrait donc le problème, car les 64 bits permettraient à l'ordinateur de pousser la limite à : 263 - 1 secondes.

Dans le domaine applicatif, le problème s'est révélé dès les années 2010 comme celui de l'an 2000 s'était révélé dès les années 1980 avec les échéanciers des plans à long terme (les tableurs utilisent depuis des dates soit glissantes, soit en format long).

Il n'existe pas de correctif simple et unique pour ce problème, car les timestamps sur 32 bits sont présents aussi dans plusieurs formats de fichiers actuels (par exemple le format ZIP). Un changement de représentation dans les ordinateurs rendrait inopérants les programmes exploitant l'actuelle équivalence entre la représentation interne et le format de fichiers. Beaucoup de travail sera donc nécessaire « en coulisses » pour que rien ou presque n'apparaisse en surface, ce qui avait déjà été le cas à l'approche de l'an 2000.

Notes et références

  1. Sare Robinson, « Beyond 2000: Further Troubles Lurk in the Future of Computing », The New York Times, 19 juillet 1999. Consulté le 8 août 2007

Voir aussi

Lien externe


Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Bug de l'an 2038 de Wikipédia en français (auteurs)

Игры ⚽ Нужно сделать НИР?

Regardez d'autres dictionnaires:

  • 2038 — Cette page concerne l année 2038 du calendrier grégorien. Pour l année 2038, voir 2038. Années : 2035 2036 2037  2038  2039 2040 2041 Décennies : 2000 …   Wikipédia en Français

  • Bug (informatique) — Pour les articles homonymes, voir Bogue et Bug. En informatique, un bug (de l’anglais bug, « insecte ») ou bogue (au Québec[1] et recommandé en France par la DGLFLF[2 …   Wikipédia en Français

  • Bug de l'an 2000 — Passage informatique à l an 2000 Le Passage informatique à l an 2000, couramment appelé bogue de l an 2000 (ou Y2K aux États Unis), était un ensemble de problèmes de programmation portant sur le format de la date dans les mémoires des ordinateurs …   Wikipédia en Français

  • Year 2038 problem — The year 2038 problem (also known as Unix Millennium bug , or Y2K38 by analogy to the Y2K problem) may cause some computer software to fail before or in the year 2038. The problem affects all software and systems that store system time as a… …   Wikipedia

  • Millenium bug — Passage informatique à l an 2000 Le passage informatique à l an 2000, couramment appelé bogue de l an 2000 (dans la communication officielle en France) ou bug de l an 2000, ou Y2K (aux États Unis), était un ensemble de problèmes de conception et… …   Wikipédia en Français

  • Y2K bug — Passage informatique à l an 2000 Le passage informatique à l an 2000, couramment appelé bug de l an 2000 ou bogue de l an 2000 (ou Y2K aux États Unis), était un ensemble de problèmes de programmation portant sur le format de la date dans les… …   Wikipédia en Français

  • Y2.038K bug — n. A computer software bug that will cause programs to cease functioning properly when confronted with dates in the year 2038 and beyond. Example Citation: First it was Y2K. Then the Euro conversion. And now, as if the Y2K and Euro problems weren …   New words

  • An 2000 (bug) — Passage informatique à l an 2000 Le Passage informatique à l an 2000, couramment appelé bogue de l an 2000 (ou Y2K aux États Unis), était un ensemble de problèmes de programmation portant sur le format de la date dans les mémoires des ordinateurs …   Wikipédia en Français

  • Problema del año 2038 — Animación del efecto 2038. En informática, el problema del año 2038 podría causar que una parte del software falle en ese año. El problema afecta a los programas que usen la representación del tiempo basada en el sistema POSIX, que se basa en… …   Wikipedia Español

  • Millennium-Bug — Das Jahr 2000 Problem, auch als „Millennium Bug“ oder „Y2K Bug“ („Year 2 Kilo“ = Jahr 2000) bezeichnet, ist ein Computerproblem, welches durch die interne Behandlung von Jahreszahlen als zweistellige Angabe entstanden ist. Inhaltsverzeichnis 1… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”