Le vétéran de Microsoft, Raymond Chen, a partagé une autre pépite de l’histoire de Windows : ce que Windows 95 a fait lorsque les installateurs ont piétiné ses fichiers système.
Le problème remonte à l’époque de Windows 16 bits, lorsque de nombreux composants du système étaient redistribuables. Les installateurs peuvent inclure des copies de ces composants et les placer sur un ordinateur cible. Le programme d’installation était censé comparer les numéros de version de ce qui se trouvait sur le système et de ce qui était copié, en les écrasant uniquement si le fichier en cours d’installation avait un numéro de version plus élevé.
Des jours plus simples comparés à la difficulté de créer des ensembles d’installation maintenant et de s’inquiéter de la destruction massive du registre, ou d’une dépendance qui n’est pas ce qu’un développeur pensait qu’elle était.
AD ENREGISTREMENT
« Cette règle repose sur le fait que Windows maintient une compatibilité ascendante, de sorte que la version la plus récente fonctionne toujours même si elle est utilisée par un programme plus ancien », a écrit Chen.
AD ENREGISTREMENT
En pratique, rien n’empêchait un installateur d’ignorer complètement cette règle. Il n’était pas rare que les programmes d’installation écrasent simplement tout ce qui se trouvait sur leur chemin, remplaçant les composants de Windows 95 par leurs homologues de Windows 3.1.
« Vous pouvez imaginer à quel point cela a causé un désastre au reste du système », a déclaré Chen.
À ce stade, même si plusieurs décennies se sont écoulées depuis l’ère de Windows 95, il serait pardonné au lecteur de se demander pourquoi le système d’exploitation permettait cela. La réponse est la compatibilité ascendante : bloquer les opérations sur les fichiers risquait de casser le programme d’installation lui-même.
« Cela a fini par créer davantage de problèmes », a expliqué Chen. « Certains installateurs ont déclaré l’installation comme un échec et ont abandonné. (D’autres) ont affiché un message d’erreur à l’utilisateur et lui ont demandé quoi faire ensuite. (Comme si l’utilisateur savait quoi faire ensuite.) »
« Vous avez même eu des installateurs qui ont pris des mesures encore plus extrêmes et ont dit : ‘D’accord, très bien, je ne peux pas écraser le fichier, donc je vais redémarrer le système, puis écraser le fichier à partir d’un fichier batch, voir si vous pouvez m’arrêter.' »
La solution de Microsoft consistait en un répertoire caché (c:windowssysbckup) contenant les fichiers fréquemment écrasés. Une fois l’installation terminée, Windows a vérifié silencieusement les numéros de version des fichiers sur le disque. Les numéros de version supérieurs seraient copiés dans le répertoire caché, ou le fichier dans le répertoire caché remplacerait un numéro de version inférieur.
« En gros », a écrit Chen, « Windows 95 attendait la fin de chaque programme d’installation, puis revenait en arrière et vérifiait son travail, corrigeant toutes les erreurs commises par le programme d’installation. »
L’approche de la ceinture et des bretelles dépendait de la connaissance par le système d’exploitation d’un programme d’installation fouillant dans ses composants internes.
AD ENREGISTREMENT
Aujourd’hui, sur la base des performances récentes, les utilisateurs devraient moins se soucier des installateurs et davantage de ce que Microsoft lui-même fait aux fichiers système de Windows. ®
