Windows 9x es un término genérico que se refiere a una serie de sistemas operativos informáticos Microsoft Windows producidos entre 1995 y 2000, que se basaban en el kernel de Windows 95 y su base subyacente de MS-DOS , [4] ambos actualizados en versiones posteriores. . La primera versión de la serie 9x fue Windows 95, al que sucedió Windows 98 y luego Windows Me , que fue la tercera y última versión de Windows en la línea 9x, hasta que la serie fue reemplazada por Windows XP . [5]
Windows 9x es conocido principalmente por su uso en escritorios domésticos . En 1998, Windows representaba el 82% de la cuota de mercado de sistemas operativos. [6]
El número de versión interna para las versiones de Windows 9x es 4.x. Las versiones internas para Windows 95, 98 y Me son 4.0, 4.1 y 4.9, respectivamente. Las versiones anteriores de Windows basadas en MS-DOS usaban números de versión 3.2 o inferiores . Windows NT , que estaba dirigido a usuarios profesionales como redes y empresas, utilizó un número de versión similar pero separado entre 3.1 y 4.0. Todas las versiones de Windows desde Windows XP en adelante se basan en el código base de Windows NT.
La primera versión independiente de Microsoft Windows, la versión 1.0 , lanzada el 20 de noviembre de 1985, alcanzó poca popularidad. Inicialmente su nombre era "Interface Manager", pero Rowland Hanson , jefe de marketing de Microsoft, convenció a la empresa de que el nombre Windows sería más atractivo para los consumidores. Windows 1.0 no era un sistema operativo completo, sino más bien un "entorno operativo" que extendía MS-DOS . En consecuencia, compartía los defectos y problemas inherentes de MS-DOS.
La segunda entrega de Microsoft Windows, la versión 2.0 , se lanzó el 9 de diciembre de 1987 y utilizaba el modelo de memoria en modo real , que lo limitaba a un máximo de 1 megabyte de memoria. En tal configuración, podría ejecutarse bajo otro sistema multitarea como DESQview , que usaba el modo protegido 286 .
Microsoft Windows obtuvo un éxito significativo con Windows 3.0 , lanzado en 1990. Además de las capacidades mejoradas brindadas a las aplicaciones nativas, Windows también permitió a los usuarios realizar múltiples tareas con software antiguo basado en MS-DOS en comparación con Windows/386 , gracias a la introducción de software virtual . memoria .
Microsoft desarrolló Windows 3.1 , que incluía varias mejoras menores a Windows 3.0, que consistían principalmente en correcciones de errores y soporte multimedia. También excluyó la compatibilidad con el modo Real y solo se ejecutó en un procesador Intel 80286 o superior. Windows 3.1 se lanzó el 6 de abril de 1992. En noviembre de 1993, Microsoft también lanzó Windows 3.11 , un retoque de Windows 3.1 que incluía todos los parches y actualizaciones que siguieron al lanzamiento de Windows 3.1 a principios de 1992.
Mientras tanto, Microsoft continuó desarrollando Windows NT . El arquitecto principal del sistema fue Dave Cutler , uno de los arquitectos jefe de VMS en Digital Equipment Corporation . [7] Microsoft lo contrató en agosto de 1988 para crear un sucesor de OS/2 , pero Cutler creó un sistema completamente nuevo basado en su proyecto MICA en Digital. [8] La primera versión de Windows NT, Windows NT 3.1 , se lanzaría el 27 de julio de 1993 y utilizaba la interfaz de Windows 3.1.
Aproximadamente un año antes de que comenzara el desarrollo del sucesor de Windows 3.1 (Windows 95, con nombre en código Chicago), Microsoft anunció en su Conferencia de Desarrolladores Profesionales de 1991 que estarían desarrollando un sucesor de Windows NT con nombre en código Cairo , [9] que Algunos han dado a entender que sucederá a Windows NT y al sucesor de Windows 3.1 bajo un sistema unificado. [10] Microsoft realizó una demostración pública de Cairo en la Conferencia de Desarrolladores Profesionales de 1993, completa con un sistema de demostración ejecutando Cairo para que lo utilicen todos los asistentes.
Basado en el kernel de Windows NT , Cairo era un sistema operativo de próxima generación que incluiría muchas tecnologías nuevas en Windows, incluida una nueva interfaz de usuario con un sistema de archivos basado en objetos (esta nueva interfaz de usuario debutaría oficialmente con Windows 95 casi 4 años más tarde, mientras que el sistema de archivos basado en objetos se adoptaría posteriormente como WinFS durante el desarrollo de Windows Vista ). Según el plan de producto de Microsoft en ese momento, se planeó que Cairo se lanzara en julio de 1996 después de su desarrollo.
Sin embargo, se hizo evidente que El Cairo era un proyecto mucho más difícil de lo que Microsoft había anticipado, y posteriormente el proyecto fue cancelado después de cinco años de desarrollo. Finalmente se agregó un subconjunto de características de El Cairo a Windows NT 4.0, lanzado el 24 de agosto de 1996, aunque sin el sistema de archivos objeto. Windows NT y Windows 9x no estarían realmente unificados hasta Windows XP, casi cinco años después, cuando Microsoft comenzó a fusionar su línea comercial y de consumo de Windows bajo una única marca basada en Windows NT.
Después de Windows 3.11 , Microsoft comenzó a desarrollar una nueva versión orientada al consumidor del sistema operativo con nombre en código Chicago. Chicago fue diseñado para tener soporte para multitarea preventiva de 32 bits, que estaba disponible en OS/2 y Windows NT, aunque se mantendría un kernel de 16 bits por motivos de compatibilidad con versiones anteriores. La API Win32 introducida por primera vez con Windows NT se adoptó como interfaz de programación estándar de 32 bits, preservando la compatibilidad con Win16 mediante una técnica conocida como " thunking ". Originalmente no se planeó una nueva GUI como parte del lanzamiento, aunque se tomaron prestados y agregaron elementos de la interfaz de usuario de Cairo a medida que otros aspectos del lanzamiento (en particular Plug and Play) fallaron.
Microsoft no cambió todo el código de Windows a 32 bits; partes del mismo permanecieron en 16 bits (aunque no usaron directamente el modo real ) por razones de compatibilidad, rendimiento y tiempo de desarrollo. Además, fue necesario trasladar decisiones de diseño de versiones anteriores de Windows por razones de compatibilidad con versiones anteriores, incluso si estas decisiones de diseño ya no coincidían con un entorno informático más moderno. Estos factores inmediatamente comenzaron a afectar la eficiencia y estabilidad del sistema operativo.
El marketing de Microsoft adoptó Windows 95 como nombre del producto para Chicago cuando fue lanzado el 24 de agosto de 1995.
Microsoft lanzó cinco versiones diferentes de Windows 95:
OSR2, OSR2.1 y OSR2.5 ("OSR" es una inicial de "OEM Service Release") no se lanzaron al público en general, sino que estaban disponibles solo para los OEM que precargarían el sistema operativo en las computadoras. Algunas empresas vendieron discos duros nuevos con OSR2 preinstalado (justificando oficialmente esto como necesario debido a la capacidad del disco duro).
¡El primer Microsoft Plus! Se vendió un paquete complementario para Windows 95.
El 25 de junio de 1998, Microsoft lanzó Windows 98, con el nombre en código "Memphis" durante el desarrollo. Incluía nuevos controladores de hardware y mejor soporte para el sistema de archivos FAT32 , que permite admitir particiones de disco mayores que el máximo de 2 GB aceptado por Windows 95. El soporte USB en Windows 98 era más sólido que el soporte básico proporcionado por las ediciones OEM de Windows. 95. [11] También introduce la controvertida integración del navegador web Internet Explorer 4 en el shell de Windows y el Explorador de archivos (entonces conocido como Windows Explorer).
El 10 de junio de 1999, Microsoft lanzó Windows 98 Segunda Edición (también conocido como Windows 98 SE), una versión provisional cuyas características notables fueron la adición de Conexión compartida a Internet y compatibilidad mejorada con módem y audio WDM. Conexión compartida a Internet es una forma de traducción de direcciones de red que permite que varias máquinas en una LAN (red de área local) compartan una única conexión a Internet . También incluye Internet Explorer 5 a diferencia de Internet Explorer 4 en la versión original. Windows 98 Second Edition también tiene ciertas mejoras con respecto a la versión original y se aumentó el soporte de hardware a través de controladores de dispositivos. También se encontraron y solucionaron muchos problemas menores presentes en la versión original de Windows 98. Estos cambios, entre otros, la convierten (según muchos) en la versión más estable de la familia Windows 9x, hasta el punto de que algunos comentaristas solían decir que la versión beta de Windows 98 era más estable que la versión final (gamma) de Windows 95. [12]
Al igual que Windows 95, Windows 98 recibió Microsoft Plus! complemento en forma de Plus! 98 .
El 14 de septiembre de 2000, Microsoft presentó Windows Me (Millennium Edition; también conocido como Windows ME), que actualizó Windows 98 con funciones multimedia y de Internet mejoradas. Tomó prestadas algunas características del Windows 2000 orientado a los negocios en la serie Windows 9x e introdujo la primera versión de Restaurar sistema , que permitía a los usuarios revertir el estado de su sistema a un punto anterior "bueno" en caso de una falla del sistema. . Windows Me también presentó la primera versión de Windows Movie Maker e incluyó Windows Media Player 7 . Internet Explorer 5.5 vino con Windows Me. La función de MS-DOS también se ha reducido considerablemente en comparación con versiones anteriores de Windows, y Windows Me ya no permite acceder a DOS en modo real.
Con el nombre en código "Millennium", Windows Me fue concebido como un proyecto rápido de un año que sirvió como una versión provisional entre Windows 98 y Windows XP (entonces con el nombre en código Whistler). Muchas de las nuevas funciones de Windows Me también estaban disponibles en Windows Update como actualizaciones para versiones anteriores de Windows, como Windows 98. Como resultado, Windows Me no fue reconocido como un sistema operativo distinto en la línea de 95 o 98, y a menudo es incluido en la serie Windows 9x.
Windows Me inicialmente tuvo una acogida positiva tras su lanzamiento, pero más tarde fue duramente criticado por los usuarios por su inestabilidad y falta de fiabilidad, debido a frecuentes congelaciones y fallos. Windows Me ha sido visto por muchos como uno de los peores sistemas operativos de todos los tiempos, tanto en términos críticos como en retrospectiva. PC World fue muy crítico con Windows Me meses después de su lanzamiento (y de hecho, cuando ya no estaba disponible), y en su artículo describía infamemente a Windows Me como "Edición de error" y lo ubicaba en el cuarto lugar entre sus "Peores productos tecnológicos de todos los tiempos". característica en 2006. [13] En consecuencia, muchos usuarios domésticos que se vieron afectados por las inestabilidades de Windows Me (así como aquellos que vieron Windows Me negativamente) finalmente se quedaron con el Windows 98 Second Edition, más confiable, durante el resto del ciclo de vida de Windows Me hasta el lanzamiento. de Windows XP en 2001. Un pequeño número de propietarios de Windows Me pasaron al Windows 2000 Professional orientado a los negocios durante ese mismo período.
La incapacidad de los usuarios para iniciar fácilmente MS-DOS en modo real como en Windows 95 y 98 llevó a los usuarios a descubrir rápidamente cómo piratear sus instalaciones de Windows Me para proporcionar esta funcionalidad faltante al sistema operativo. [14]
¡Windows Me nunca recibió un Microsoft Plus dedicado! complemento como con Windows 95 y Windows 98.
El lanzamiento de Windows 2000 marcó un cambio en la experiencia del usuario entre la serie Windows 9x y la serie Windows NT. Windows NT 4.0, aunque se basaba en la interfaz de Windows 95, adolecía de una falta de soporte para las versiones USB, Plug and Play y DirectX posteriores a la 3.0, lo que impedía a sus usuarios jugar a juegos contemporáneos. Windows 2000, por otro lado, aunque está dirigido principalmente a usuarios empresariales y de servidores, presentaba una interfaz de usuario actualizada y un mejor soporte tanto para Plug and Play como para USB, además de incluir soporte integrado para DirectX 7.0 . El lanzamiento de Windows XP a finales de 2001 confirmó el cambio de dirección de Microsoft, uniendo los sistemas operativos de consumo y empresariales bajo Windows NT.
Después del lanzamiento de Windows XP, Microsoft dejó de vender versiones de Windows 9x a los usuarios finales (y más tarde a los OEM) a principios de la década de 2000. En marzo de 2004, era imposible comprar ninguna versión de la serie Windows 9x. [15]
Con el tiempo, finalizó el soporte para la serie Windows 9x. Windows 95 había perdido su soporte principal el 31 de diciembre de 2000, y el soporte extendido se eliminó de Windows 95 el 31 de diciembre de 2001 (lo que también finalizó el soporte para versiones anteriores de Windows anteriores a Windows 95 ese mismo día). Windows 98 y Windows 98 Second Edition finalizaron su soporte principal el 30 de junio de 2002, y el soporte principal para Windows Me finalizó el 31 de diciembre de 2003. Luego, Microsoft continuó brindando soporte a la serie Windows 9x hasta el 11 de julio de 2006, cuando finalizó el soporte extendido. para Windows 98, Windows 98 Second Edition (SE) y Windows Millennium Edition (Me): 4 años después de que finalizara el soporte extendido para Windows 95 el 31 de diciembre de 2001. [16]
Microsoft DirectX, un conjunto de API de juegos estándar, dejó de actualizarse en Windows 95 en la versión 8.0a. [17] También dejó de actualizarse en Windows 98 y Me después del lanzamiento de Windows Vista en 2006, lo que convirtió a DirectX 9.0c en la última versión de DirectX compatible con estos sistemas operativos.
También finalizó el soporte para Microsoft Internet Explorer en todas las versiones de Windows 9x. Windows 95, Windows 98 y Windows Me perdieron los parches de seguridad para Internet Explorer cuando los respectivos sistemas operativos llegaron a la fecha de fin de soporte. Internet Explorer 5.5 con Service Pack 2 es la última versión de Internet Explorer compatible con Windows 95, mientras que Internet Explorer 6 con Service Pack 1 es la última versión compatible con las últimas versiones de Windows 9x (es decir, 98 y Me). [18] Si bien Internet Explorer 6 para Windows XP recibió parches de seguridad hasta que perdió soporte, este no es el caso para IE6 en Windows 98 y Me. Debido a su antigüedad, Internet Explorer 7 , la primera actualización importante de Internet Explorer 6 en media década, sólo estaba disponible para Windows XP SP2 y Windows Vista.
El sitio web de Windows Update siguió estando disponible para Windows 98, Windows 98 SE y Windows Me después de la fecha de finalización del soporte; sin embargo, durante 2011, Microsoft retiró el sitio web Windows Update v4 y eliminó las actualizaciones para Windows 98, Windows 98 SE y Windows Me de sus servidores. [19] [20]
Microsoft anunció en julio de 2019 que los servicios de Microsoft Internet Games en Windows Me (y XP) finalizarían el 31 de julio de 2019 (y para Windows 7 el 22 de enero de 2020). [21]
El creciente número de actualizaciones importantes provocadas por el fin de vida útil de estos sistemas operativos ha hecho que Windows 9x sea aún menos práctico para el uso diario. Hoy en día, incluso los proyectos de código abierto como Mozilla Firefox no se ejecutarán en Windows 9x sin una revisión importante. [22]
RetroZilla es una bifurcación de Gecko 1.8.1 destinada a brindar "compatibilidad mejorada en la web moderna" para versiones de Windows tan antiguas como Windows 95 y NT 4.0. [23] La última versión, 2.2, se lanzó en febrero de 2019 y agregó soporte para TLS 1.2 . [24]
Windows 9x es una serie de sistemas operativos monolíticos de 16/32 bits.
Como la mayoría de los sistemas operativos, Windows 9x consta de espacio de kernel y memoria de espacio de usuario . Aunque Windows 9x presenta cierta protección de la memoria , no protege el primer megabyte de memoria de las aplicaciones del usuario por razones de compatibilidad. Esta área de la memoria contiene código crítico para el funcionamiento del sistema operativo y, al escribir en esta área de la memoria, una aplicación puede bloquear o congelar el sistema operativo. Esto era una fuente de inestabilidad, ya que las aplicaciones defectuosas podían escribir accidentalmente en esta región, corrompiendo potencialmente una memoria importante del sistema operativo, lo que generalmente resultaba en algún tipo de error y detención del sistema. [25]
Las partes del modo de usuario de Windows 9x constan de tres subsistemas: el subsistema Win16, el subsistema Win32 y MS-DOS. [26]
Windows 9x/Me reservó dos bloques de regiones de memoria de 64 KiB para GDI y recursos de montón. Al ejecutar múltiples aplicaciones, aplicaciones con numerosos elementos GDI o al ejecutar aplicaciones durante un largo período de tiempo, estas áreas de memoria podrían agotarse. Si los recursos libres del sistema cayeran por debajo del 10%, Windows se volvería inestable y probablemente fallaría. [27]
Las partes del modo kernel constan del Administrador de máquina virtual (VMM), el Administrador del sistema de archivos instalable ( IFSHLP ), el Administrador de configuración y, en Windows 98 y posteriores, el Administrador de controladores WDM (NTKERN). [28]
Como sistema operativo de 32 bits, el espacio de memoria virtual es de 4 GiB , divididos en 2 GiB inferiores para aplicaciones y 2 GiB superiores para el kernel por proceso.
Al igual que Windows NT, Windows 9x almacena configuraciones específicas del usuario y de configuración en una gran base de datos de información llamada Registro de Windows . Las configuraciones específicas del hardware también se almacenan en el registro y muchos controladores de dispositivos utilizan el registro para cargar datos de configuración. Las versiones anteriores de Windows usaban archivos como AUTOEXEC.BAT
, CONFIG.SYS
, WIN.INI
y SYSTEM.INI
otros archivos con una .INI
extensión para mantener los ajustes de configuración. A medida que Windows se volvió más complejo e incorporó más funciones, .INI
los archivos se volvieron demasiado difíciles de manejar para las limitaciones del entonces actual sistema de archivos FAT. La compatibilidad con archivos anteriores .INI
se mantuvo hasta que Windows XP sucedió a las líneas 9x y NT.
Aunque Microsoft desaconseja el uso de archivos .INI en favor de las entradas del Registro, una gran cantidad de aplicaciones (particularmente aplicaciones basadas en Windows de 16 bits) todavía usan archivos .INI. Windows 9x admite archivos .INI únicamente por compatibilidad con esas aplicaciones y herramientas relacionadas (como programas de instalación). Los archivos AUTOEXEC.BAT y CONFIG.SYS también existen para compatibilidad con componentes del sistema en modo real y para permitir a los usuarios cambiar ciertas configuraciones predeterminadas del sistema, como la variable de entorno PATH.
El registro consta de dos archivos: User.dat y System.dat. En Windows Me, se agregó Classes.dat.
Virtual Machine Manager (VMM) es el kernel en modo protegido de 32 bits en el núcleo de Windows 9x. Su responsabilidad principal es crear, ejecutar, monitorear y terminar máquinas virtuales .
El VMM brinda servicios que administran memoria, procesos, interrupciones y fallas de protección. El VMM funciona con dispositivos virtuales (módulos de kernel cargables, que consisten principalmente en un anillo 0 de 32 bits o código en modo kernel, pero pueden incluir otros tipos de código, como un segmento de inicialización en modo real de 16 bits) para permitir que esos dispositivos virtuales interceptar interrupciones y fallas para controlar el acceso que tiene una aplicación a los dispositivos de hardware y al software instalado. Tanto el VMM como los controladores de dispositivos virtuales se ejecutan en un único espacio de direcciones de modelo plano de 32 bits en el nivel de privilegio 0 (también llamado anillo 0). VMM proporciona multitarea preventiva y de subprocesos múltiples . Ejecuta múltiples aplicaciones simultáneamente compartiendo el tiempo de CPU ( unidad central de procesamiento ) entre los subprocesos en los que se ejecutan las aplicaciones y las máquinas virtuales.
El VMM también es responsable de crear entornos MS-DOS para procesos del sistema y aplicaciones de Windows que aún necesitan ejecutarse en modo MS-DOS. Es el reemplazo de WIN386.EXE en Windows 3.x, y el archivo vmm32.vxd es un archivo comprimido que contiene la mayor parte del núcleo VxD, incluido el propio VMM.vxd y ifsmgr.vxd (que facilita el acceso al sistema de archivos sin necesidad de llamar al código del sistema de archivos en modo real del kernel de DOS).
Se puede instalar soporte parcial para Unicode en Windows 9x a través de Microsoft Layer para Unicode .
Windows 9x no es compatible de forma nativa con NTFS o HPFS ; sin embargo, existen soluciones de terceros disponibles para Windows 9x que permiten acceso de solo lectura a volúmenes NTFS. Las primeras versiones de Windows 95 no eran compatibles con FAT32 .
Al igual que Windows para trabajo en grupo 3.11 , Windows 9x proporciona soporte para acceso a archivos de 32 bits basado en IFSHLP.SYS . A diferencia de Windows 3.x, Windows 9x tiene soporte para el sistema de archivos VFAT , lo que permite nombres de archivos con un máximo de 255 caracteres en lugar de tener 8,3 nombres de archivos .
Windows 9x no tiene soporte para el registro y seguimiento de eventos o informes de errores que tiene la familia de sistemas operativos Windows NT, aunque se puede usar software como Norton CrashGuard para lograr capacidades similares en Windows 9x.
Windows 9x está diseñado como un sistema de usuario único. Por tanto, el modelo de seguridad es mucho menos eficaz que el de Windows NT. Una razón para esto son los sistemas de archivos FAT (incluidos FAT12/FAT16/FAT32), que son los únicos que Windows 9x admite oficialmente, aunque Windows NT también admite FAT12 y FAT16 (pero no FAT32; que no sería compatible hasta que Windows 2000) y Windows 9x se pueden ampliar para leer y escribir volúmenes NTFS utilizando controladores de sistema de archivos instalables de terceros . Los sistemas FAT tienen una seguridad muy limitada; cada usuario que tiene acceso a una unidad FAT también tiene acceso a todos los archivos de esa unidad. Los sistemas de archivos FAT no proporcionan listas de control de acceso ni cifrado a nivel de sistema de archivos como NTFS . [29]
Algunos sistemas operativos que estaban disponibles al mismo tiempo que Windows 9x son multiusuario o tienen múltiples cuentas de usuario con diferentes privilegios de acceso, lo que permite que archivos importantes del sistema (como la imagen del kernel) sean inmutables en la mayoría de las cuentas de usuario. Por el contrario, si bien Windows 95 y los sistemas operativos posteriores ofrecen la opción de tener perfiles para múltiples usuarios, no tienen ningún concepto de privilegios de acceso, lo que los hace más o menos equivalentes a un sistema operativo de un solo usuario y una sola cuenta; esto significa que todos los procesos pueden modificar todos los archivos del sistema que no están abiertos, además de poder modificar el sector de arranque y realizar otras modificaciones de bajo nivel en el disco duro. Esto permite que los virus y otro software instalado clandestinamente se integren con el sistema operativo de una manera que es difícil de detectar o deshacer para los usuarios comunes. La compatibilidad con perfiles en la familia Windows 9x está pensada únicamente para su comodidad; A menos que se modifiquen algunas claves de registro, se puede acceder al sistema presionando "Cancelar" al iniciar sesión, incluso si todos los perfiles tienen una contraseña. El cuadro de diálogo de inicio de sesión predeterminado de Windows 95 también permite crear nuevos perfiles de usuario sin tener que iniciar sesión primero.
Los usuarios y el software pueden hacer que el sistema operativo no pueda funcionar eliminando o sobrescribiendo archivos importantes del sistema del disco duro. Los usuarios y el software también son libres de cambiar los archivos de configuración de tal manera que el sistema operativo no pueda iniciarse o funcionar correctamente. Este fenómeno no es exclusivo de Windows 9x; muchos otros sistemas operativos también son susceptibles a estas vulnerabilidades, ya sea por virus, malware o por el consentimiento del usuario.
El software de instalación a menudo reemplazaba y eliminaba archivos del sistema sin verificar adecuadamente si el archivo todavía estaba en uso o era una versión más nueva. Esto creó un fenómeno al que a menudo se hace referencia como el infierno de DLL . Windows Millennium Edition introdujo la protección de archivos del sistema y la restauración del sistema para solucionar los problemas comunes causados por este problema.
Windows 9x ofrece seguridad de control de acceso a nivel compartido para compartir archivos e impresoras, así como control de acceso a nivel de usuario si hay un sistema operativo basado en Windows NT disponible en la red. [30] Por el contrario, los sistemas operativos basados en Windows NT ofrecen sólo control de acceso a nivel de usuario, pero están integrados con el mecanismo de seguridad de la cuenta de usuario del propio sistema operativo.
Los controladores de dispositivos en Windows 9x pueden ser controladores de dispositivos virtuales o (a partir de Windows 98) controladores WDM. Los VxD suelen tener la extensión de nombre de archivo .vxd
o .386
, mientras que los controladores compatibles con WDM suelen utilizar la extensión .sys
. El servidor de mensajes VxD de 32 bits (msgsrv32) es un programa que puede cargar controladores de dispositivos virtuales (VxD) al inicio y luego manejar la comunicación con los controladores. Además, el servidor de mensajes realiza varias funciones en segundo plano, incluida la carga del shell de Windows (como Explorer.exe o Progman.exe ). [31]
Otro tipo de controladores de dispositivos son .DRV
los controladores. Estos controladores tienen el formato New Executable , se cargan en modo de usuario y se utilizan habitualmente para controlar dispositivos como, por ejemplo, dispositivos multimedia. Para proporcionar acceso a estos dispositivos, se requiere una biblioteca de vínculos dinámicos (como MMSYSTEM.DLL).
Windows 9x conserva la compatibilidad con muchos controladores creados para Windows 3.x y MS-DOS. El uso de controladores MS-DOS puede limitar el rendimiento y la estabilidad debido al uso de memoria convencional y a la necesidad de ejecutarse en modo real, lo que requiere que la CPU entre y salga del modo protegido.
Los controladores escritos para Windows 9x se cargan en el mismo espacio de direcciones que el kernel. Esto significa que los controladores pueden, por accidente o intencionalmente, sobrescribir secciones críticas del sistema operativo. Hacer esto puede provocar fallas del sistema, congelaciones y daños en el disco. Los controladores del sistema operativo defectuosos eran una fuente de inestabilidad para el sistema operativo. Otros núcleos monolíticos e híbridos , como Linux y Windows NT , también son susceptibles a que los controladores funcionen mal y impidan el funcionamiento del núcleo.
A menudo, los desarrolladores de software de controladores y aplicaciones no tenían suficiente experiencia en la creación de programas para el "nuevo" sistema, lo que provocaba muchos errores que los usuarios generalmente describían como "errores del sistema", incluso si el error no es causado por partes de Windows o DOS. Como resultado, Microsoft ha rediseñado repetidamente la arquitectura del controlador de Windows desde el lanzamiento de Windows 95.
Windows 9x no tiene soporte nativo para hyper-threading , Prevención de ejecución de datos , multiprocesamiento simétrico , APIC o procesadores multinúcleo .
Windows 9x no tiene soporte nativo para adaptadores de bus host SATA (y tampoco lo tienen Windows 2000 ni Windows XP), ni unidades USB (excepto Windows Me). Sin embargo, hay muchos controladores SATA-I para los cuales existen controladores de Windows 98/Me (y de hecho, Windows 2000 y Windows XP también proporcionaron soporte SATA a través de controladores de terceros), y se ha agregado soporte de almacenamiento masivo USB a Windows 95. OSR2 y Windows 98 a través de controladores de terceros. [32] [33] La compatibilidad con controladores de hardware para Windows 98/Me comenzó a disminuir en 2005, sobre todo en los chipsets de placas base y en las tarjetas de vídeo .
Las primeras versiones de Windows 95 no tenían soporte para aceleración USB o AGP (incluida la falta de soporte de infrarrojos para Windows 95 RTM). Windows 95 tenía soporte preliminar para CD-ROM ATAPI , sin embargo, tenía errores en la implementación de ATAPI. Windows 95 anterior a OSR2 también tenía soporte con errores para los procesadores que implementaban MMX, así como para los procesadores basados en la microarquitectura P6 .
Windows 95 pudo reducir la función de MS-DOS en Windows mucho más de lo que se había hecho en Windows 3.1xy versiones anteriores. Según el desarrollador de Microsoft Raymond Chen, MS-DOS tenía dos propósitos en Windows 95: como cargador de arranque y como capa de controlador de dispositivo heredado de 16 bits. [34]
Cuando se inició Windows 95, se cargó MS-DOS, procesó CONFIG.SYS , lanzó COMMAND.COM , ejecutó AUTOEXEC.BAT y finalmente ejecutó WIN.COM . El programa WIN.COM utilizó MS-DOS para cargar el administrador de la máquina virtual, leer SYSTEM.INI, cargar los controladores del dispositivo virtual y luego desactivar cualquier copia en ejecución de EMM386 y cambiar al modo protegido. Una vez en modo protegido, los controladores de dispositivos virtuales ( VxD ) transfirieron toda la información de estado de MS-DOS al administrador del sistema de archivos de 32 bits y luego apagaron MS-DOS. Estos VxD permiten que Windows 9x interactúe directamente con los recursos de hardware, además de proporcionar funcionalidades de bajo nivel, como acceso a discos de 32 bits y administración de memoria. Todas las operaciones futuras del sistema de archivos se enrutarían al administrador del sistema de archivos de 32 bits. [34] En Windows Me , win.com ya no se ejecutaba durante el proceso de inicio; en lugar de eso, fue directamente a ejecutar VMM32.VXD desde IO.SYS.
La segunda función de MS-DOS (como capa de controlador de dispositivo heredado de 16 bits) era la de herramienta de compatibilidad con versiones anteriores para ejecutar programas de DOS en Windows. Muchos programas y controladores de dispositivos de MS-DOS interactuaban con DOS de forma de bajo nivel, por ejemplo, parcheando interrupciones de BIOS de bajo nivel como int 13h , la interrupción de E/S de disco de bajo nivel. Cuando un programa emitía una llamada int 21h para acceder a MS-DOS, la llamada iría primero al administrador del sistema de archivos de 32 bits, que intentaría detectar este tipo de parches. Si detecta que el programa ha intentado conectarse a DOS, volverá al código de 16 bits para permitir que se ejecute el enlace. CONFIG.SYS habría cargado previamente un controlador de 16 bits llamado IFSMGR.SYS, cuyo trabajo era conectar MS-DOS primero antes de que los otros controladores y programas tuvieran la oportunidad, luego saltar del código de 16 bits nuevamente al código de 32. Código de bits, cuando el programa DOS había finalizado, para permitir que el administrador del sistema de archivos de 32 bits continuara su trabajo. [34] Según el desarrollador de Windows Raymond Chen , " MS-DOS era simplemente un señuelo extremadamente elaborado. Cualquier controlador y programa de 16 bits parchearía o engancharía lo que pensaba que era el MS-DOS real, pero que en realidad era solo un señuelo. . Si el administrador del sistema de archivos de 32 bits detectaba que alguien había comprado el señuelo, le decía que graznara " [34] .
Windows 9x puede ejecutar aplicaciones MS-DOS dentro de sí mismo utilizando un método llamado "Virtualización", donde una aplicación se ejecuta en una máquina Virtual DOS .
Windows 95 y Windows 98 también ofrecen compatibilidad con versiones anteriores para aplicaciones DOS al poder iniciar en un "Modo DOS" nativo (MS-DOS se puede iniciar sin iniciar Windows, pero sin poner la CPU en modo protegido). A través de los administradores de memoria de Windows 9x y otras mejoras posteriores a DOS, se mejora el rendimiento y la funcionalidad general del sistema. Es posible que algunas aplicaciones o juegos antiguos no se ejecuten correctamente en el entorno virtual de DOS dentro de Windows y requieran el modo DOS real.
Tener un modo de línea de comandos fuera de la GUI también ofrece la posibilidad de corregir ciertos errores del sistema sin ingresar a la GUI. Por ejemplo, si un virus está activo en modo GUI, a menudo se puede eliminar de forma segura en modo DOS, eliminando sus archivos, que normalmente quedan bloqueados mientras están infectados en Windows. De manera similar, los archivos de registro, archivos de sistema o archivos de arranque dañados se pueden restaurar desde DOS en modo real. Windows 95 y Windows 98 se pueden iniciar desde el modo DOS escribiendo 'WIN'
en el símbolo del sistema y luego presionando "Enter", similar a versiones anteriores de Windows como Windows 3.1.
Los usuarios pueden controlar un sistema basado en Windows 9x a través de una interfaz de línea de comandos (o CLI) o una interfaz gráfica de usuario (o GUI). El modo predeterminado para Windows suele ser la interfaz gráfica de usuario, mientras que la CLI está disponible a través de ventanas de MS-DOS . La GUI proporciona un medio para controlar la ubicación y apariencia de ventanas de aplicaciones individuales e interactúa con el sistema de ventanas.
El GDI , que forma parte de los subsistemas Win32 y Win16, también es un módulo que se carga en modo usuario , a diferencia de Windows NT, donde el GDI se carga en modo kernel . La composición alfa y, por lo tanto, los efectos de transparencia , como los efectos de desvanecimiento en los menús, no son compatibles con GDI en Windows 9x, a diferencia de las versiones de Windows NT desde Windows 2000.
Windows Explorer es la interfaz de usuario predeterminada para la GUI; sin embargo, existe una variedad de reemplazos adicionales del shell de Windows . Otras GUI incluyen LiteStep , bbLean y Program Manager .
La gran popularidad de la serie Windows 9x llevó a la creación de varios proyectos basados en la web en la década de 2010 que tenían como objetivo replicar la apariencia de Windows 9x (y de hecho, un sistema operativo real en su conjunto) en un solo navegador web.
Windows 93 (estilizado como "WINDOWS93" en el título) es un sitio web de parodia creado por dos músicos y programadores franceses que se llaman jankenpopp y Zombectro. Diseñado para verse y sentirse como un sistema operativo real, también es una parodia de la serie Windows 9x. Cuenta con varias aplicaciones web que hacen referencia y presentan varios memes de Internet desde finales de los 90 hasta principios de los 2000. [35]
EmuOS es otro sitio web que tiene como objetivo replicar la apariencia de Windows 9x en su conjunto, presentando 3 temas basados en todas las versiones principales de Windows 9x, desde Windows 95 hasta Windows Me. Fue creado por Emupedia, un sitio comunitario de preservación de videojuegos e historia informática, y fue diseñado para jugar juegos y aplicaciones retro dentro de un navegador web. También se incluye el sitio de parodia de Windows 93 antes mencionado. [36]
Windows 98 ha sido recreado en formato web con el nombre 98.js (también conocido como Windows 98 Online). Presentaba versiones basadas en web de varias aplicaciones clásicas de Windows. [37] [38]