Al intentar instalar Windows 95 por primera vez, los usuarios de PC ven una interfaz de texto aburrida sin gráficos. Era cierto que DOS podía "simular gráficos" con caracteres, pero el equipo de Windows decidió adoptar un enfoque más inteligente aprovechando el código disponible anteriormente.

Raymond Chen, un empleado de Microsoft que ha participado en el desarrollo de Windows durante más de 30 años, ha publicado un nuevo artículo en su famoso blog "OldNewThing". El programador de software habló nuevamente recientemente sobre la experiencia de instalación y configuración de Windows 95, un proyecto muy complejo que utiliza tres entornos de sistemas operativos diferentes para adaptarse a una variedad de escenarios de uso en las PC de los clientes.

Chen dijo que, en teoría, los ingenieros de Microsoft podrían desarrollar una aplicación de configuración de gráficos porque MS-DOS gestiona bien los gráficos. Sin embargo, el método de DOS para manejar gráficos era muy primitivo y requería mucho tiempo. Los sistemas operativos basados ​​en mensajes no impiden activamente que las imágenes se muestren en la pantalla, pero los programadores deben implementar todas las funciones gráficas manualmente.

Chen explicó que MS-DOS no proporcionaba ninguna primitiva gráfica aparte de llamar al BIOS para dibujar píxeles individuales. En cualquier caso, el enfoque basado en BIOS no es ideal, ya que sólo el acceso directo al framebuffer (memoria de la tarjeta gráfica) proporciona mejoras mínimas de rendimiento para las operaciones gráficas. En resumen, el equipo de instalación de Windows95 en teoría tuvo que escribir su propia biblioteca de gráficos desde cero.

Y esto es sólo el comienzo. Los requisitos mínimos para Windows 95 incluyen una tarjeta gráfica VGA, por lo que el equipo no tuvo que considerar generaciones anteriores de tarjetas gráficas como CGA o EGA. El programa de instalación tenía que mostrar algunos cuadros de diálogo, por lo que el programador tuvo que escribir un nuevo administrador de ventanas que admitiera "pestañas" del teclado entre ventanas y teclas de acceso rápido como atajos rápidos.

La configuración también debe admitir alfabetos basados ​​en ideografías, como el japonés y el chino, y al mismo tiempo gestionar animaciones simples. Chen dijo que todo este trabajo adicional tuvo que incorporarse a la infraestructura "básica" requerida para arrancar un entorno Windows 95, con soporte completo para extender/expandir la memoria a través de su propio administrador de modo protegido.

Esto deja a los desarrolladores teniendo que escribir un nuevo sistema operativo para arrancar con una configuración de Windows 95, lo cual es una pérdida de tiempo ya que Microsoft ya está vendiendo productos que son los más adecuados para el trabajo. El Sr. Chen explicó que el tiempo de ejecución de Windows 3.1 usado en la versión final de la configuración de Windows 95 contenía todo lo necesario para "simular gráficos" en MS-DOS, y también fue completamente depurado con su propio controlador de video, biblioteca de gráficos, administrador de diálogo, etc.

Hasta el día de hoy, Microsoft todavía usa el mismo bucle de código; Las versiones modernas de Windows todavía requieren la instalación de un sistema operativo "pequeño" para iniciar el proceso de instalación. Este entorno mínimo del sistema operativo es ahora el entorno de preinstalación de Windows (Windows PE) y también se utiliza para (intentar) reparar Windows si hay un problema con el propio sistema operativo.