Lorsqu'ils tentent d'installer Windows 95 pour la première fois, les utilisateurs de PC voient une interface texte ennuyeuse, sans aucun graphique. Il était vrai que DOS pouvait « simuler des graphiques » avec des caractères, mais l'équipe Windows a décidé d'adopter une approche plus intelligente en exploitant le code précédemment disponible.
Raymond Chen, employé de Microsoft qui participe au développement de Windows depuis plus de 30 ans, a publié un nouvel article sur son célèbre blog « OldNewThing ». Le programmeur logiciel a récemment discuté à nouveau de l'expérience d'installation et de configuration de Windows 95, un projet très complexe qui utilise trois environnements de système d'exploitation différents pour s'adapter à une variété de scénarios d'utilisation sur les PC des clients.
Chen a déclaré que les ingénieurs de Microsoft pourraient théoriquement développer une application de paramètres graphiques car MS-DOS gère bien les graphiques. Cependant, la méthode DOS de gestion des graphiques était très primitive et prenait beaucoup de temps. Les systèmes d'exploitation basés sur des invites n'empêchent pas activement l'affichage des images à l'écran, mais les programmeurs doivent implémenter manuellement toutes les fonctions graphiques.
Chen a expliqué que MS-DOS ne fournissait aucune primitive graphique autre que l'appel au BIOS pour dessiner des pixels individuels. Dans tous les cas, l'approche basée sur le BIOS n'est pas idéale, car seul l'accès direct au framebuffer (mémoire de la carte graphique) offre des améliorations minimes des performances des opérations graphiques. En résumé, l'équipe d'installation de Windows95 a dû théoriquement écrire sa propre bibliothèque graphique à partir de zéro.
Et ce n'est que le début. La configuration minimale requise pour Windows 95 inclut une carte graphique VGA, l'équipe n'a donc pas eu à prendre en compte les générations précédentes de cartes graphiques comme CGA ou EGA. Le programme d'installation devait afficher certaines boîtes de dialogue, le programmeur a donc dû écrire un nouveau gestionnaire de fenêtres prenant en charge les "onglets" clavier entre les fenêtres et les raccourcis clavier comme raccourcis rapides.
La configuration doit également prendre en charge les alphabets idéographiques, tels que le japonais et le chinois, tout en gérant des animations simples. Chen a déclaré que tout ce travail supplémentaire devait être incorporé dans l'infrastructure "de base" requise pour démarrer un environnement Windows 95, avec une prise en charge complète de l'extension/extension de la mémoire via son propre gestionnaire de mode protégé.
Cela oblige les développeurs à écrire un nouveau système d'exploitation pour démarrer avec une configuration Windows 95, ce qui est une perte de temps puisque Microsoft vend déjà les produits les mieux adaptés à cette tâche. M. Chen a expliqué que le moteur d'exécution Windows 3.1 utilisé dans la version finale de l'installation de Windows 95 contenait tout le nécessaire pour « simuler des graphiques » sous MS-DOS, et qu'il était également entièrement débogué avec son propre pilote vidéo, sa bibliothèque graphique, son gestionnaire de dialogue, etc.
À ce jour, Microsoft utilise toujours la même boucle de code ; les versions modernes de Windows nécessitent toujours l'installation d'un "petit" système d'exploitation pour lancer le processus d'installation. Cet environnement minimal du système d'exploitation est désormais l'environnement de préinstallation de Windows (Windows PE), et il est également utilisé pour (essayer) de réparer Windows en cas de problème avec le système d'exploitation lui-même.