Archivo de inicio de Windows Para llegar al escritorio de Windows (Nos enfocaremos principalmente hacia Windows XP, aunque también es válido para otros sistemas Windows), el computador debe ejecutar ciertos procesos que preparen el sistema para ser operativo, para ello debe regirse por unos parámetros contenidos dentro del archivo boot.ini que se encarga de controlar el arranque del sistema operativo. El archivo boot.ini es un archivo de texto, oculto y de sistema, ubicado en la partición activa y de boot del SO que contiene la configuración de arranque por la que regirá el sistema. Su deterioro, modificación o borrado acarreará graves problemas al equipo. Hay que aclarar que este archivo sólo permite el arranque de SOs pertenecientes a Microsoft. Estructura del archivo boot.ini Contiene dos secciones bien diferenciadas: - Boot loader Operating systems La sección de boot loader nos informa de la partición de arranque y del sistema operativo por defecto, además de que si el arranque es de múltiples SOs nos dará un cierto tiempo (opción timeout) para escoger de cual SO arrancar. La sección operating systems nos indica la partición de ubicación de cada SO presente en el sistema en el formato: multi(W)disk(X)rdisk(Y)partition(Z) Donde: - W es el número ordinal de control que indica donde tiene que pasar el control la BIOS para que el archivo Ntldr inicie el SO. X siempre vale 0 y sólo aparece si hay otras particiones presentes. Y indica con que disco duro está relacionado el parámetro W. Z Indica desde que partición del disco duro Y arrancará el SO a través del archivo Ntoskrnl.exe. Modificadores Son opciones que alteran el comportamiento del arranque en general, usado para efectos de recuperación, reparación y detección de errores en un sistema Windows. Enumeraremos las más importantes. /basevideo Permite el arranque con video a una resolución de 60x480. Útil para descartar problemas con la tarjeta de video. /maxmem= Establece la máxima cantidad de memoria RAM disponible para Windows. Útil para descartar memoria defectuosa. /noguiboot deshabilita el logo de inicio de Windows (La famosa figurita de Windows al iniciarse el SO). /numproc indica el número de procesadores del sistema. Útil para descartar procesadores defectuosos en sistemas con múltiples procesadores. /fastdetect:com # Evita que el archivo Ntdetet.com detecte los puertos seriales y paralelos del sistema. /sos Nos permite visualizar la carga de controladores y archivos durante el inicio de arranque de Windows, deshabilitando el logo de inicio. Útil para verificar la correcta inicialización de ciertos archivos durante el inicio. /bootlog Genera un archivo de registro (log) cuando se inicia Windows con todos los eventos generados durante este. Útil para detectar errores en la carga de ciertos archivos de sistema. /burnmemory= Indica la cantidad de memoria RAM a no utilizar por Windows. Útil para detectar fallos de memoria. [B]/safeboot:[I]parámetro Con este modificador se arranca en modo seguro de distintas formas. Admite tres parámetros: minimal: carga un conjunto mínimo de controladores (modo seguro). network: carga controladores de red (modo seguro con funciones de red). minimal(alternateshell): para conseguir arrancar en modo seguro con interfaz interactiva. /redirect Es un modificador específico para Windows 2003 Enterprise Edition, y permite activar los Servicios de administración de emergencia (EMS). /noexecute= opción Es un modificador introducido por el SP2 de Windows XP y que activa la DEP (Data Execution Prevention) es decir, la Prevención de Ejecución de Datos. Evita la ejecución de página de datos y que código malintencionado se ejecute en el sistema. La DEP puede forzarse por software y/o por hardware. En XP SP2 la DEP está forzada de las dos formas. Hay que tener en cuenta que para modificar el archivo boot.ini, primero debemos crear una copia de seguridad (copiarlo a un diskette, CD o memoria para efectos de recuperación), quitarle los atributos de sistema, oculto y solo lectura, modificarlo con cualquier editor de texto (preferiblemente el notepad o el edit de la consola), guardarlo en la posición inicial y darle nuevamente al archivo los atributos de sistema, oculto y sólo lectura. Secuencia de Pre-Inicio (Pre-Boot) Durante el arranque de cualquier máquina, su BIOS localiza el sector de arranque del disco duro (MBR). Los siguientes 4 pasos describen el pre-inicio: 1) Cuando prendemos el computador, se ejecutan las rutinas POST (Power and Self Test) para determinar la cantidad de memoria física y los componentes de hardware presentes en la máquina. 2) La BIOS, localiza el dispositivo de arranque (BOOT) y carga y ejecuta el MBR (Master Boot Record). 3) El MBR busca en su tabla de particiones, la partición que esté marcada como activa, carga en memoria el sector de boot de dicha partición y lo ejecuta. 4) Dicho sector, carga y ejecuta el archivo NTLDR el cual es el cargador del sistema operativo. Secuencia de inicio en Windows XP / 2000 Desde el momento que se enciende la computadora, se siguen ciertos pasos para llevar a término la correcta carga del SO, hasta llegar al entorno gráfico u escritorio del sistema. Para lograr esto el SO en el momento del arranque ejecuta en secuencia ciertos archivos que le permitan con éxito cargar los controladores, servicios y archivos necesarios para la ejecución del entorno gráfico. Archivo ntldr boot.ini bootsec.dos ntdetect.com ntbootdd.sys ntoskrnl.exe hal.dll system dispositivos.sys Path (Camino) Partición raíz (de arranque) Partición raíz (de arranque) Partición raíz (de arranque) Partición raíz (de arranque) Partición raíz (de arranque) Carpeta system32 de Windows. Carpeta system32 de Windows. Carpeta system32 de Windows. Carpeta drivers de system32 en Windows. Fase en el arranque Preboot y boot Inicio Inicio (opcional) Inicio Inicio (opcional) Carga del núcleo Carga del núcleo Inicialización del núcleo Inicialización del núcleo Después de cargarse en memoria en archivo NTLDR, se busca información respecto del hardware y los controladores para proseguir con la carga del SO en el orden que nos muestra la anterior tabla. La secuencia de boot consta de 4 fases: 1. 2. 3. 4. Carga inicial del sistema de arranque. Fase de selección del SO. Detección de hardware. Selección de la configuración. El archivo NTLDR carga Windows desde la partición activa, luego a través de los archivos ntdetect.com y ntoskrnl.exe realizan la detección de hardware y por último se inicia la carga del entorno gráfico hasta llegar al logon donde finaliza la inicialización del núcleo. El logon o pantalla de inicio de sesión se ejecuta a través del programa winlogon.exe y permite el ingreso al sistema gráfico y la finalización de la carga de controladores y servicios del sistema. El archivo bootsec.dos sólo se utilizará en caso de existir un SO de tipo Win9x instalado en el sistema, sólo para efectos de compatibilidad con el arranque. NOTA: Hay diversas utilidades o programas que nos permiten personalizar el logo de arranque y de inicio de sesión en Windows, permitiéndonos agregar imágenes y fotos (para el logon o logo de inicio de sesión) o figuras animadas (para el bootscreen o logo de arranque del SO), que más nos agraden. POST MBR Servicios de administración de emergencia (EMS). Modo PAE DEP