Arquitectura de Windows 9x


De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

La arquitectura de Windows 95. [ aclaración necesaria ]

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.

Archivos críticos

Windows 95 arranca con el siguiente conjunto de archivos: [ cita requerida ]

Intérprete de línea de comandos y shell de 32 bits:

  • SHELL.DLL y SHELL32.DLL - API de Shell
  • EXPLORER.EXE - Administrador de archivos y shell de Windows
  • COMMAND.COM - ejecutable de shell de línea de comandos

Windows 95 Core:

  • KERNEL32.DLL y KRNL386.EXE : API de Windows para recursos de Windows
  • ADVAPI32.DLL Funcionalidad adicional al kernel. Incluye funciones para el registro de Windows y funciones de apagado y reinicio
  • GDI32.DLL y GDI.EXE : interfaz de dispositivo gráfico
  • USER32.DLL y USER.EXE : implementación de GUI
  • COMMCTRL.DLL y COMCTL32.DLL : controles comunes (interfaz de usuario)
  • DDEML.DLL Dynamic Data Exchange Management Library (DDEML) proporciona una interfaz que simplifica la tarea de agregar capacidad DDE a una aplicación
  • MSGSRV32.EXE Actúa como un servidor de mensajes de 32 bits y nunca aparecerá en la lista de tareas de Windows.
  • WIN.COM : responsable de cargar la GUI y la parte de Windows del sistema

Registro y otros archivos de configuración:

  • SYSTEM.DAT , USER.DAT : contiene el registro de Windows
  • MSDOS.SYS : contiene algunos recursos y configuraciones de arranque de bajo nivel , como deshabilitar el doble búfer y el logotipo de la GUI
  • WIN.INI y SYSTEM.INI : archivos de configuración de Windows 3.1, procesados ​​también en Windows 9x

Administrador de máquinas virtuales y administrador de configuración:

  • VMM32.VXD : administrador de máquinas virtuales y controladores predeterminados. Toma el relevo de io.sys como kernel

Administrador del sistema de archivos instalable:

  • IFSHLP.SYS : permite a Windows realizar llamadas directas al sistema de archivos sin pasar por los métodos de MS-DOS
  • IFSMGR.VXD : controlador de 32 bits para el sistema de archivos instalable
  • Supervisor IOS.VXD I / O que controla y administra todo el sistema de archivos en modo protegido y los controladores de dispositivos de bloque
  • MPREXE.EXE MPRSERV.DLL y MPR.DLL : enrutador de proveedor múltiple, necesario para la autenticación de red y los perfiles de usuario
  • MSPWL32.DLL Biblioteca de administración de listas de contraseñas

Controladores de dispositivo:

  • IO.SYS : el ejecutable maneja todas las funciones básicas, como las rutinas de E / S y también sirve como kernel hasta que vmm32.vxd se hace cargo
  • HIMEM.SYS : controlador de dispositivo de DOS que permite que los programas de DOS almacenen datos en la memoria extendida a través de la Especificación de memoria extendida
  • SYSTEM.DRV , MMSOUND.DRV , Comm.drv , VGA.DRV , MOUSE.DRV , BIGMEM.DRV , KEYBOARD.DRV - controladores de 16 bits
  • CP 1252.NLS , CP 437.NLS , UNICODE.NLS , LOCALE.NLS : distribución del teclado
  • Dispositivo virtual mapeador de modo real RMM.PDR

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.

Secuencia de inicio

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 .

Fase 1 - El proceso de arranque del BIOS ROM

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.

Fase 2: el registro de arranque maestro y el sector de arranque

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.

Fase 3: inicialización del archivo IO.SYS

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.

Fase 4 - CONFIG.SYS y configuración en modo real

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.

Fase 5: inicializar controladores

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 .

Fase 6: inicialización de Win32

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.

Núcleo

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.

Ver también

  • Arquitectura de Windows NT
  • Microsoft Windows
  • Caldera contra Microsoft
  • WinGlue
  • FreeWin95

Referencias

  1. Microsoft (15 de abril de 2002). "Modelo de controlador de Windows (WDM)" . Microsoft . Archivado desde el original el 18 de enero de 2013 . Consultado el 27 de mayo de 2016 .

Otras lecturas

  • Schulman, Andrew (noviembre de 1994). Windows 95 no autorizado - Kit de recursos para desarrolladores (1ª ed.). Foster City, California, EE. UU .: John Wiley & Sons, Inc. ISBN 1-56884-305-4. ISBN 978-1-56884-305-6 . 
  • Schulman, Andrew; Brown, Ralf D .; Maxey, David; Michels, Raymond J .; Kyle, Jim (1994) [noviembre de 1993]. DOS sin documentar: una guía del programador para las funciones y estructuras de datos reservadas de MS-DOS, expandida para incluir MS-DOS 6, Novell DOS y Windows 3.1 (2 ed.). Reading, Massachusetts: Addison Wesley . ISBN 0-201-63287-X. ISBN 978-0-201-63287-3 . (xviii + 856 + vi páginas, 3.5 "-floppy) Fe de erratas: [1] [2]
  • Paul, Matthias R. (10 de abril de 2002). "[fd-dev] Acceso a HMA desde TSR" . freedos-dev . Archivado desde el original el 9 de septiembre de 2017 . Consultado el 9 de septiembre de 2017 . [...] 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 [...]
  • Paul, Matthias R. (13 de agosto de 2002). "Suche freien Speicherbereich unterhalb von 1 MB, der nicht von OS überschrieben wird" (en alemán). Grupo de noticias :  de.comp.lang.assembler.x86 . Archivado desde el original el 4 de septiembre de 2017 . Consultado el 3 de septiembre de 2017 . (NB. También en el uso de MS-DOS 7+ HMA y \ WINDOWS \ IOS.LOG.)
  • Paul, Matthias R. (17 de junio de 2004). "Re: Bloqueos aleatorios con DR-DOS 7.03" . [email protected]; Conferencia de FidoNet : ALT_DOS . Archivado desde el original el 28 de abril de 2019 . Consultado el 28 de abril de 2019 .[...] 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]
  • King, Adrian (1994). Dentro de Microsoft Windows 95 (2ª ed.). Redmond, Washington, Estados Unidos: Microsoft Press . ISBN 1-55615-626-X. ISBN 978-1-55615-626-7 . 
  • Guía del programador de Microsoft Windows 95: Temas clave sobre programación para Windows del Equipo de desarrollo de Microsoft Windows . Referencia técnica (1ª ed.). Redmond, Washington, Estados Unidos: Microsoft Press . 1995-07-01. ISBN 1-55615-834-3. ISBN 978-1-55615-834-6 . Consultado el 26 de mayo de 2016 . 
  • Oney, Walter (1995). Programación de sistemas para Windows 95 (1ª ed.). Redmond, Washington, Estados Unidos: Microsoft Press . ISBN 1-55615-949-8. ISBN 978-1-55615-949-7 . 
  • Pietrek, Matt (noviembre de 1995). Secretos de programación del sistema Windows 95 . The Secrets Series (1ª ed.). John Wiley & Sons, Inc. ISBN 1-56884-318-6. ISBN 978-156884-318-6 . Consultado el 26 de mayo de 2016 . 
  • Hazzah, Karen (1997). Escritura de controladores de dispositivos y VxD de Windows: secretos de programación para controladores de dispositivos virtuales (segunda impresión, segunda edición). Lawrence, Kansas, Estados Unidos: Miller Freeman, Inc. ISBN 0-87930-438-3. ISBN 978-0-87930-438-6 . 
  • Mitchell, Stan (11 de mayo de 1997). Schulman, Andrew (ed.). Dentro del sistema de archivos de Windows 95 . Manuales de cáscara de nuez (1ª ed.). Sebastopol, California, EE. UU .: O'Reilly & Associates, Inc. ISBN 1-56592-200-X. ISBN 978-1-56592-200-6 . Consultado el 26 de mayo de 2016 . 

enlaces externos

  • Microsoft. "Componentes de la arquitectura de Windows 95" . Microsoft . Archivado desde el original el 17 de octubre de 2014 . Consultado el 27 de mayo de 2016 .
  • Microsoft (15 de noviembre de 2006). "Descripción del proceso de inicio de Windows 95" . 1.1. Microsoft . Q174018. Archivado desde el original el 14 de febrero de 2014 . Consultado el 27 de mayo de 2016 .
  • Microsoft (26 de octubre de 2013). "Comprensión de Win16Mutex" . 5,0. Microsoft . KB125867. Q125867. Archivado desde el original el 16 de enero de 2014 . Consultado el 27 de mayo de 2016 .
Obtenido de " https://en.wikipedia.org/w/index.php?title=Architecture_of_Windows_9x&oldid=979045183 "