LE PROBLÈME DE L'AN 2000



Il arrive plus vite que vous pensiez, n'est-ce pas? Tout le monde a une petite idée de ce qu'il est, mais qui le connaît vraiment bien? Attention, je ne suis pas du tout un spécialiste en la matière, mais justement parce que je ne l'étais pas, j'ai fait beaucoup de recherche et de tests ces derniers jours et je me suis dit que devais partager ces connaissances acquises, au cas où ça pourrait éclairer des gens pour qu'ils n'aient pas à perdre ces longues heures eux aussi.

Pour partir vraiment à la base, le problème est présent à la fois dans le matériel et les logiciels et non seulement l'un, seulement l'autre comme certains semblent penser. Commençons avec le plus important, le matériel ("hardware"). Il serait faux de penser que le bogue dans les logiciels est totalement inoffensif, mais évidemment le matériel est à la base du fonctionnement d'un ordinateur et de plus, il ne se met pas gratuitement à jour.

LE BOGUE DANS LE MATÉRIEL

Rassurez-vous un peu, vous n'aurez certainement pas à changer votre carte de son ou votre boîtier, par exemple! Le problème se situe au niveau de l'horloge de la machine (communément appellée RTC pour Real Time Clock) et des BIOS, qui sont les mini-programmes que l'on retrouve sur des cartes. Je ne peux garantir que les BIOS de cartes vidéo ou de cartes réseau sont toutes exemptes du bogue, mais une chose est sûre, c'est toujours du BIOS de la carte maîtresse ("motherboard") dont on parle. De très nombreux logiciels de test du RTC et du BIOS de la carte maîtresse sont disponibles gratuitement sur le net en version de base, qui inspecte l'ordinateur mais ne corrige pas les erreurs. La quasi-totalité de ces programmes promettent également de régler tous les problèmes relatifs avec l'an 2000 sur votre ordinateur... à condition de payer une license à 40$ ou 50$ US!

Comment un logiciel peut corriger des pièces matérielles?! C'est un point qui reste flou pour moi aussi, mais j'ai bien l'impression qu'ils font sûrement tous comme le Rosenthal Utilities, qui va simplement se loger dans le démarrage de DOS/Windows (AUTOEXEC.BAT) et s'il détecte un samedi 1er janvier 1900 ou samedi 1er janvier 1980 comme date système, il sait que c'est impossible (puisqu'en 1900 il n'y avait pas de PCs et qu'en 1980 le 1er janvier n'était pas un samedi) alors il interprète la date en conséquence et change la date de DOS ou Windows pour la bonne date. C'est donc une technique qui, n'étant pourtant pas mauvaise, n'offre qu'une solution virtuelle. Le principal inconvénient est que si un programme DOS fait appel directement au BIOS et non à DOS/Windows pour connaître la date, l'erreur persiste. De plus, cela nécessite que la version de DOS ou de Windows soit compatible à l'an 2000, et puis ça ralentit légèrement le temps de démarrage de la machine pour le restant de ses jours. Je sais qu'en MS-DOS 6.2 et en Windows 95 cela fonctionne, mais je saurais dire jusqu'à quelles versions antérieures il n'y aurait pas de problème. Personnellement, je n'aurais pas trop confiance en une version de DOS inférieure à 6.0, mais sur ce point, si ça vous regarde, je vous laisse vérifier.

Voici donc les meilleurs logiciels du genre que j'aurais à vous conseiller:
Rosenthal Utilities
D8.exe
(pour faire gratuitement appliquer la technique indiquée plus haut)

Y2KTest (pour faire une vérification très complète de votre système sous DOS ou n'importe quelle version de Windows supérieure ou égale à 3.1, donne des résultats précis et bien présentés)

OnMark BIOS Test (pour faire le test du BIOS sur plusieurs machines; bien qu'il ne vérifie pas le RTC comme tel, il fait bien son travail et comme il est sur une disquette démarrable, il est très portable -pas besoin d'installer le logiciel sur chaque machine à vérifier, seulement démarrer chaque ordinateur une fois avec la disquette dans le lecteur-)

Si, comme moi, vous êtes un peu paranoiaque et que vous ne faites pas pleinement confiance en des logiciels de gens qui ne pensent qu'à faire de l'argent avec vous en vous faisant acheter un "fix", il existe des petits programmes de test distribués par certains fabricants de cartes maîtresses sur leurs sites. Par exemple, Award/Phoenix a le sien, tout comme American Megatrends Inc. a le sien.

Une fois les tests passés, vous apprenez que votre ordinateur Pentium n'est pas compatible à l'an 2000 et vous pensez que votre vendeur vous a trompé et qu'il ne reste que quelques jours à vivre à votre machine. Attention! Lisez comme il faut d'abord les résultats que vous donne le Y2KTest; peut-être que, tout comme mon Pentium 233 MMX de carte maîtresse Award qui date de la fin 1997, votre ordinateur passe parfaitement l'an 2000 si votre ordinateur est éteint, mais pas s'il est allumé! Je ne saurais dire si l'inverse est aussi possible, mais de toute façon, c'est un bien mince d'effort que d'allumer ou éteindre son ordinateur pour 2 minutes... Toutefois, si votre BIOS date de n'importe quand en 1998 ou 1999, votre matériel est fort probablement compatible à 100%.

Maintenant, qu'arrive-t-il s'il échoue vraiment le passage à l'an 2000 selon ces tests? J'aimerais qu'on me corrige si c'est inexact, mais d'après ce que j'ai lu, les RTC d'environ la fin des 80386 (1991) jusqu'à aujourd'hui (dépend toujours des fabricants) sont équipés d'un espace mémoire supplémentaire pour stocker le siècle, c'est juste que le '19' ne change pas automatiquement pour '20' lorsque le 31 décembre 1999 laisse place au nouveau millénaire. Dans ces cas particuliers (mais combien nombreux), ni le RTC, ni le BIOS n'a de fonction intégrée permettant de faire cette transition, mais l'utilisateur peut avoir recours à un moyen manuel très simple, celui d'entrer dans le programme de son BIOS (habituellement la touche DEL ou parfois la touche F10 immédiatement quand on part la machine) et d'y changer soi-même la date le 31 décembre 1999. Je ne peux garantir qu'il en est de même pour tous, mais avec un AMIBIOS (American Megatrends), non seulement la date va être changée correctement, mais dans le RTC, le '19' va être modifié pour '20' par le BIOS. L'horloge pourra donc continuer de garder cette date correctement même quand l'ordinateur est fermé, tant qu'il n'y aura personne pour remettre une date inférieure à 2000 dans le BIOS ou dans le système d'exploitation. Je trouvais le ridicule de la chose irréaliste, jusqu'à ce que je teste sur un AMIBIOS de Pentium 100 MHz et celui d'un 80386 SX /33 MHz pour me rendre compte que cette histoire incroyable tenait debout!

Ce sont donc de bonnes nouvelles en soi! Je sais que plusieurs ont crainte d'aller dans leur BIOS, mais à ceux-là je dis qu'il n'y a absolument rien de compliqué là-dedans et que malgré les dommages que peuvent faire des mauvais changements dans le BIOS, il n'y a aucun risque à seulement changer sa date et appuyer sur "Save Changes and Quit" puis sur "Y". Le seul et unique danger est de modifier des choses dont on ne connaît pas la signification! Par contre, les nouvelles ne sont pas aussi bonnes pour les détenteurs d'ordinateurs plus anciens, par exemple les fameux 80286. Il y a de fortes chances que le BIOS d'une telle machine ne soit tout simplement pas capable d'offrir la possibilité à l'utilisateur de monter l'année à plus que 99 comme il y a de grandes possibilités également que le RTC lui-même n'ait rien de plus que 2 chiffres pour représenter l'année complète. Deux solutions intéressantes (changer de machine ou reculer la date ne sont pas nécessairement des solutions intéressantes!) s'offrent alors à ces gens qui se sont attachés à leurs dinosaures: utiliser à jamais un programme comme Rosenthal Utilities ou D8.exe, et utiliser à jamais une carte "BIOS patch" qui se charge de faire à peu près la même chose que ces petits programmes sans la nécessité de modifier son démarrage et de réinstaller un petit programme après chaque formattage.

LE BOGUE DANS LES LOGICIELS

Le problème est bien plus simple à comprendre dans son aspect logiciel. Chaque logiciel peut être ou non, indépendemment, compatible à l'an 2000. Lorsqu'un d'eux ne l'est pas, c'est tout simplement parce que les variables de date qu'il utilise sont déclarées d'une manière à laisser place seulement à 2 caractères pour l'année et/ou que le code du programme n'est pas conçu pour traiter correctement avec des dates à plus de 2 caractères. Cela veut effectivement dire qu'un logiciel qui n'utilise aucune date (par exemple un lecteur MP3) ne peut être vulnérable au bogue et qu'il serait possible qu'un logiciel datant de 1990 soit compatible et qu'un autre écrit en 1998 ne le soit pas (tout dépend des choix des programmeurs, pour chaque logiciel individuellement).

Est-ce qu'un programme incompatible va complètement cesser de fonctionner en l'an 2000? Bien sûr que non! Il risque seulement de planter ou d'erroner des données dans son utilisation. Le tout demeure quand même assez important: si par exemple un système de base de données est incompatible à l'an 2000, il risque de corrompre les données existantes, ce qui est particulièrement grave dans une entreprise. Les bases de données sont en fait le type de logiciels le plus visé par le bogue, ou plutôt le type d'application le plus en danger, puisqu'avant tout il y a le système d'exploitation.

Bien entendu, il faut d'abord s'assurer que son système d'exploitation est compatible à l'an 2000. Cela ne veut pas dire changer la date à partir du système d'exploitation et vérifier s'il peut aller en 2000, car il peut rester quand même des erreurs de programmation dans certains modules du SE (OS). C'est le cas des MS-DOS; même en 6.22, il se peut que certains fichiers ne traitent pas correctement avec les dates. En MS Windows 3.1 également, mais outre le fichier de remplacement de WINFILE.EXE (disponible sur le site de Microsoft ou même Download.com), il n'y a pas de mise à jour disponible.

Jusque là, je n'ai sûrement surpris personne. Mais si je vous disais que TOUS les systèmes d'exploitation de Microsoft sont vulnérables? En effet, pour corriger les problèmes connus de MS Windows 95 avec l'an 2000, il vous faudra télécharger du site de Microsoft un fichier d'environ 2,3 Mo qui s'occupera de faire la mise à jour de DLLs et EXEs de Win95 qui font défaut. Soyez avertis que vous devez obligatoirement vous procurer la mise à jour qui soit de la même langue que votre version de Windows (par exemple, la mise à jour disponible sur Download.com, donc en anglais, n'acceptera même pas de s'installer si vous avez Win95 en français). Attention toutefois, cette mise à jour ne mettra pas à jour les fichiers qui ont rapport avec l'Internet. He oui, c'est encore un vilain tour de Microsoft qui veut populariser son Internet Explorer; pour une pleine compatibilité avec l'an 2000, vous devez aussi aller chercher Internet Explorer 4.01 ou supérieur, donc aujourd'hui 5.01. Pour Windows 98, c'est sensiblement la même chose, excepté qu'il vient avec MS IE 4.01 alors ça fait ça de moins à aller chercher, mais il y a quand même des mises à jour à aller chercher sur le site de Microsoft, en fonction de votre langue. Dans les deux cas (Win95 et Win98), je vous conseille d'aller chercher les mises à jour sur Internet, car celles que vous pourriez trouver autrement pourraient ne pas être les dernières disponibles. En effet, dans les deux cas, deux mises à jour ont été lancées, la première n'étant pas complète et la deuxième, plus complète, ayant pour but de remplacer la première.

Je disais bien TOUS les produits Microsoft. Cela inclus même le supposément si robuste Windows NT 4.0!  Dans son cas, ce n'est pas une mise à jour spécifiquement pour l'an 2000 qu'il faut, mais bien le Service Pack 3. Si vous ne l'avez pas déjà, dites vous que vous en aurez bien besoin, et d'ailleurs tant qu'à mettre à jour vos stations et serveurs NT, procurez-vous donc le Service Pack 6a qui est sorti récemment!

Si tous les systèmes d'exploitation Microsoft ont des problèmes, les autres, en revanche, sont très biens en général. MacOS est encore bon pour 27 000 ans (d'ailleurs, toutes les machines Macintosh n'ont aucun problème avant 2040) et les UNIX, BSDI et Linux se comportent tout à fait normalement jusqu'à 2038 (ce qui ne veut bien sûr pas dire pour autant que chaque programme pour ces plates-formes l'est). Malheureusement, je n'ai pas cette information pour IBM OS/2 et BeOS, mais je serais porté à croire que OS/2 Warp (3.0 et +) et BeOS ne sont pas affectés par le changement de millénaire.

Pour tous les programmes autres que systèmes d'exploitation, il faut vérifier auprès de son fabricant. Dans plusieurs cas, il faut remplacer tout simplement le logiciel par une nouvelle version (il est donc recommandable de changer maintenant de version de vos logiciels que vous croyez à risque). C'est entre autres le cas de Lotus 1-2-3 version 2.4 et moins sur DOS, de Quicken 1.0 à 4.0 pour DOS et de Simple Comptable versions 1.0 à 3.0. Dans d'autres cas, il est possible de télécharger des mises à jour. C'est entre autres le cas des suites d'applications Microsoft Office 95 et 97. Pour mettre à jour Office 97, vous devez une fois de plus vous rendre sur le site de Microsoft et, cette fois, prendre votre mal en patience parce que c'est un transfert beaucoup plus long que juste la mise à jour de Windows 95 ou 98. Vous avez d'abord à télécharger le Service Release 1 (plus de 10 Mo), puis le Office Version Checker pour vous assurer que le Service Release 1 est installé correctement (100 Ko) puis le Service Release 2 (plus de 23 Mo) et finalement, au besoin, une patch pour le Jet Engine utilisé par Access (1,3 Mo) et une patch pour Outlook (je ne l'ai pas téléchargée puisque je n'ai même pas Outlook d'installé chez moi!). Ouf! C'est là qu'on reconnaît les meilleurs pareils... tant de choses à faire pour mettre à jour sa base de données Access, alors que toutes les versions de Paradox sont pleinement compatibles avec l'an 2000...

CONCLUSION

Profitez des quelques jours qu'il reste avant le 1er janvier pour mettre en pratique ce que vous venez de lire! Après, il sera peut-être trop tard... Pourquoi ne pas se préparer dès maintenant? Si vous avez besoin d'aide ou que vous avez des corrections/ajouts à proposer au sujet de quelque chose faisant partie de cet article, vous pouvez toujours, comme à l'habitude, me contacter à powhertz@email.com. Si vous voulez savoir quelque chose de plus technique, il serait possible que les professionnels de NoWonder soient une source plus certaine à consulter.

Pour télécharger le Y2K FAQ en version PDF, cliquez ici. Ce n'est pas cet article et ce n'est même pas écrit par moi, cela vient du site de American Megatrends. Si vous êtes intéressé par le problème de l'an 2000, vous devriez trouver ce texte assez intéressant. Notez que vous aurez besoin de Adobe Acrobat Reader pour le voir correctement.

Powhertz
1999/12/26
 

Retourner à la page principale de PowHertz