Pour en avoir au moins entendu parlé, tout le monde connaît le bug de l'An 2000. Ce bug est en définitive le seul dont les médias généralistes ont eu réellement conscience. Pourtant, l'informaticien rencontre tous les jours de nouveaux bugs qui ne seront jamais évoqués dans les journaux grand public. Aussi, je vous propose de revenir sur ces bugs informatiques "cultes" et de découvrir quelques sources d'informations permettant d'approfondir le sujet, souvent avec humour.

Essentiellement, quatre bugs informatiques ont ou vont défrayer la chronique :

1/ Officiellement, c'est le 9 septembre 1945 à 15h45 que le premier bug de l'histoire informatique a fait son apparition. Il s'agissait d'une mite bloquée dans le calculateur Mark II de l'Université de Harvard aux USA, qui donna d'ailleurs le terme de bug (insecte en anglais) pour désigner une erreur informatique. Le journal d'entretien de Grace Hopper est d'ailleurs conservé : il contient encore le corps de la bestiole retirée du relais défectueux. Le Harvard Mark II était le calculateur le plus puissant de l'époque : il réalisait des multiplications ou des additions en un peu moins d'une seconde, tandis qu'une racine carrée prenait 5 secondes.

Pour en savoir plus :

  • Bug informatique : origine du mot sur Wikipedia

2/ Le premier bug "industriel" fut celui d'Intel lié à la fameuse virgule flottante de ses processeurs Pentium sortis en 1994. Ce bug entraînait des erreurs de calcul lors de certaines opérations de division. Il a alimenté une vive polémique à l'époque d'autant qu'Intel avait d'abord pris le parti de nier le problème. L'erreur s'est avérée n'être en fait que de 0.0061% (au maximum). Mais IBM, direct concurrent d'Intel à l'époque, en a profité pour s'introduire dans la brèche en soutenant la grande colère publique suscité par ce défaut de fabrication, qui ne concernait finalement qu'une petite frange des processeurs Intel de cette gamme.

Pour en savoir plus :

  • Blagues sur le bug du Pentium (en anglais)
  • Le bug de la division du Pentium sur Wikipedia

3/ Le plus fameux est bien sûr le bug de l'An 2000, plus connu des américains sous le sigle Y2K. Avant d'être un bug, Y2K était un projet mondial visant à convertir les systèmes informatiques, et dont l'échéance en Europe coïncidait avec le passage à l'Euro. Le problème tardait à être résolu parce qu'il remettait en cause la normalisation des dates (différentes selon les pays). L'année 1999 était codée "99" et l'année 2000 serait codée "00", provoquant des incohérences de calcul. En réalité, le passage à l'an 2000 se déroula sans problème majeur malgré une certaine psychose ayant atteint le grand public.

Pour en savoir plus :

  • Le site "Un Coin de Web" propose plusieurs pages remplies d'anecdotes à ce sujet : on découvre par exemple que le bug s'était manifesté dès 1975, ou que selon des documents relatant la mise en place du calendrier grégorien en 1582, l'année 2000 n'aurait pas du être bissextile.
  • Le bug de l'An 2000 sur Wikipedia
  • Bug de l'An 2000, une arnaque de la World Compagny (Guignols de l'Info)

4/ Le dernier dont il sera question ici est similaire au bug de l'an 2000 et devrait toucher une grande partie des programmes conçus en langage C. Il s'agit du bug de l'An 2038. La majorité des systèmes d'exploitation actuels représente le temps comme un nombre de secondes codé sur 32 bits (c'est à dire allant jusqu'à 2'147'483'647) et comptabilisées à partir de 1970. Or le nombre maximum sera atteint le 19/01/2038. Le codage sur 64 bits résout ce problème puisqu'il repousse l'échéance à près de 300 milliards d'années. Pour autant, il est probable que de nombreux ordinateurs 32 bits seront encore là en 2038.

Pour en savoir plus :