Este artículo tiene varios problemas. Ayude a mejorarlo o discuta estos problemas en la página de discusión . ( Obtenga información sobre cómo y cuándo eliminar estos mensajes de plantilla )
|
La serie de sistemas operativos Windows 9x se refiere al kernel que se encuentra en el corazón de Windows 9x. Su arquitectura es monolítica .
El código básico tiene una función similar a MS-DOS . Como híbrido de 16/32 bits, requiere compatibilidad con MS-DOS para funcionar.
Windows 95 arranca con el siguiente conjunto de archivos: [ cita requerida ]
Intérprete de línea de comandos y shell de 32 bits:
Windows 95 Core:
Registro y otros archivos de configuración:
Administrador de máquinas virtuales y administrador de configuración:
Administrador del sistema de archivos instalable:
Controladores de dispositivo:
El sistema también puede usar CONFIG.SYS , que contiene configuraciones y comandos ejecutados antes de cargar el intérprete de comandos ) y AUTOEXEC.BAT , que es un archivo por lotes que se ejecuta automáticamente después de cargar COMMAND.COM. Sin embargo, estos dos archivos no son críticos para el proceso de arranque, ya que IO.SYS contiene una configuración predeterminada para ambos, en caso de ausencia del sistema. En Windows ME , CONFIG.SYS y AUTOEXEC.BAT no se procesan y LOGO.SYS se puede utilizar como pantalla de bienvenida.
El proceso de inicio de Windows 9x consta de 6 fases. Los primeros dos de estos pasos son comunes para cualquier sistema operativo que se inicie utilizando la combinación tradicional de BIOS y Master Boot Record .
El BIOS ROM inicia la ejecución en la dirección de memoria física FFFF0h. Durante esta fase, el BIOS primero ejecuta la autoprueba de encendido , luego verifica la existencia de un disco de arranque en la unidad A. Si no se encuentra en la unidad A, el BIOS ROM busca un disco duro. Si la computadora tiene un BIOS Plug and Play, además, el BIOS verifica la RAM en busca de direcciones de puertos de E / S, líneas de interrupción y canales DMA para dispositivos Plug and Play , deshabilita los dispositivos encontrados, crea mapas de recursos usados y no usados y reactiva dispositivos.
El registro de inicio maestro se carga en la dirección 7C00h y carga el sector de inicio de la partición de disco de Windows . El sector de arranque contiene el programa de arranque del disco y la tabla de bloques de parámetros del BIOS que busca la ubicación del directorio raíz y el archivo IO.SYS, que luego carga el archivo IO.SYS en la memoria.
IO.SYS inicializa el controlador mínimo de la tabla de asignación de archivos y carga MSDOS.SYS en la memoria. Luego muestra "Iniciando Windows" dependiendo de la línea BootDelay en el archivo MSDOS.SYS. Luego carga el archivo LOGO.SYS y muestra una imagen de inicio en la pantalla. Si existe el archivo DRVSPACE.INI o DBLSPACE.INI , también carga controladores para discos comprimidos. A continuación, Windows intenta abrir el archivo de registro SYSTEM.DAT. Si eso falla, intenta abrir SYSTEM.DA0. Si está configurado en MSDOS.SYS o en el registro, también se habilita el doble búfer.
Windows 95 y Windows 98 ahora analizan CONFIG.SYS y cargan controladores en modo real de MS-DOS . Windows ME ignora esto. Si el archivo CONFIG.SYS no existe, el archivo IO.SYS carga los controladores IFSHLP.SYS , HIMEM.SYS y SETVER.EXE . Windows reserva todos los bloques de memoria superiores para el uso del sistema operativo Windows 95 o para la memoria expandida . Windows 95 y Windows 98 ejecutan COMMAND.COM para procesar AUTOEXEC.BAT. Carga los programas residentes y terminados en la memoria. Windows ME ignora este paso, ya que la compatibilidad con DOS en modo real está deshabilitada y los TSR que se cargan pueden comprometer la estabilidad del sistema.
IO.SYS ahora ejecuta WIN.COM . WIN.COM carga el archivo VMM32.VXD en la memoria o accede a él desde el disco duro. Este archivo contiene los controladores más importantes y el kernel 9x. El cargador de controladores de dispositivos virtuales en modo real busca controladores de dispositivos virtuales duplicados que existan tanto en la carpeta Windows \ System \ Vmm32 como en el archivo VMM32.VXD. En caso de duplicados, se cargará el controlador en el directorio Windows \ System \ Vmm32. Windows 95 y 98 ahora consultan controladores en modo real llamando a INT 2Fhy busque los controladores en la entrada de registro HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Services \ VxD marcados para cargarse como un archivo externo. Luego, Vmm32 analiza la sección [386 Enh] del archivo Windows \ System.ini y carga los controladores enumerados allí. Algunos controladores importantes se cargan incluso si no aparecen en el Registro de Windows , SYSTEM.INI o en el directorio Windows \ System \ Vmm32.
Una vez que se cargan los controladores del dispositivo virtual en modo real, se produce la inicialización del controlador en Windows 95 y Windows 98. Vmm32 luego cambia a la CPU de modo real a modo protegido . El siguiente paso es la inicialización de los controladores en modo protegido, ejecutados en tres fases para cada dispositivo: una parte crítica de la inicialización (mientras las interrupciones están deshabilitadas), la inicialización del dispositivo (cuando se permite la E / S de archivos) y la fase InitComplete. Después de la inicialización del controlador de pantalla, Windows cambia al modo gráfico .
Una vez cargados todos los controladores, se cargan los archivos Kernel32.dll , gdi32.dll , Gdi.exe , user32.dll , User.exe , shell32.dll y Explorer.exe . El siguiente paso en el proceso de inicio es cargar el entorno de red . Se solicita al usuario que inicie sesión en la red configurada. Cuando un usuario inicia sesión, su configuración de escritorio se carga desde el registro o la configuración de escritorio utiliza un escritorio predeterminado. A continuación, Windows inicia los programas definidos en la carpeta Inicio , WIN.INIy programas definidos en las claves de registro Run, RunOnce, RunServices y RunServicesOnce dentro de las ramas HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \ CurrentVersion y HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \. Después de que se inicie cada programa en la clave de registro RunOnce, el programa se elimina de la clave.
El kernel de Windows 9x es un kernel de 32 bits con memoria virtual . Los controladores los proporcionan los archivos .VXD o, desde Windows 98, se pueden utilizar los controladores WDM más nuevos . [1] Sin embargo, el kernel de MS-DOS permanece residente en la memoria. Windows utilizará los controladores antiguos de MS-DOS de 16 bits si están instalados, excepto en Windows Me. En Windows Me, DOS todavía se está ejecutando, pero Windows ignorará cualquier intento de cargar sus controladores de dispositivo al analizar AUTOEXEC.BAT y moverá las variables de entorno que aún reconoce de CONFIG.SYS al Registro de Windows.
[...] MS-DOS 7.0 + [...] presentó un [...] en su mayor parte sin documentar estructura de datos RMD que normalmente se encuentra en el HMA . El kernel recopila y registra la configuración y los datos del controlador en modo real durante el arranque (tipo de controlador, interrupciones conectadas por el controlador, CONFIG.SYSlínea de invocación, etc.) y almacena esta información en una [...] complicada estructura de datos en crecimiento. Presuntamente [...] destinado a ser utilizado por el núcleo de Windows para obtener una mejor imagen de los controladores [...] cargados en Modo Real o incluso intentar desenganchar o descargar algunos [...] de ellos, solo se utiliza en una medida muy limitada ([...] parte de la información reflejada en los archivos de registro creados al [...] inicio, y algunas partes del [...] administrador de configuración también la utilizan), [. ..] dejando espacio [...] más allá del aspecto técnico [...] porque nada de lo interesante está documentado [...]
[...] todas las versiones de MS-DOS anteriores a Windows 95 [...] usaban un archivo COMMAND.COM de estilo COM que tiene una firma especial al comienzo del archivo [...] consultado por el BIOS de MS-DOS antes de que cargue el shell, pero no mediante el BIOS DR-DOS, COMMAND.COM [...] comprobaría [...] que se está ejecutando en la versión de DOS "correcta", así que si cargaría su COMMAND.COM bajo DR-DOS, recibiría un mensaje de error "Versión incorrecta" y su COMMAND.COM saldría, por lo que DR-DOS [...] mostraría un mensaje de error "Intérprete de comando incorrecto o faltante" (si DR-DOS estaba tratando de cargar el procesador de comandos SHELL = después de haber terminado el procesamiento de CONFIG.SYS). En este caso, podría ingresar la ruta a un DR-DOS COMMAND.COM válido (C: \ DRDOS \ COMMAND.COM) y todo estuvo bien. Ahora, las cosas han cambiado desde MS-DOS 7.0 [...] COMMAND.COM se ha convertido internamente en un archivo de estilo EXE, por lo que no hay una [...] firma mágica que [...] verificar, por lo que DR-DOS no puede descartar un COMMAND.COM incompatible. Además, su COMMAND.COM ya no realiza comprobaciones de versión, pero no [...] funciona bajo DR-DOS [...] sólo bloquea el [...] PC DOS COMMAND.COM funciona bien bajo DR-DOS [...][3] [4]