stringtranslate.com

NTLDR

NTLDR ( abreviatura de NT loader ) es el cargador de arranque para todas las versiones del sistema operativo Windows NT desde 1993 con el lanzamiento de Windows NT 3.1 hasta Windows XP y Windows Server 2003. A partir de Windows Vista fue reemplazado por el cargador de arranque BOOTMGR . NTLDR normalmente se ejecuta desde el dispositivo de almacenamiento principal , pero también puede ejecutarse desde dispositivos de almacenamiento portátiles como un CD-ROM , una unidad flash USB o un disquete. NTLDR también puede cargar un sistema operativo no basado en NT dado el sector de arranque apropiado en un archivo.

NTLDR requiere que, como mínimo, los dos archivos siguientes estén en el volumen del sistema :

Un archivo importante adicional es boot.ini , que contiene la configuración de arranque (si falta, NTLDR tomará como valor predeterminado \Windows en la primera partición del primer disco duro).

NTLDR se inicia mediante el registro de arranque del volumen de la partición del sistema, que normalmente se escribe en el disco mediante el comando FORMAT o SYS de Windows .

Historia

Windows NT fue diseñado originalmente para plataformas compatibles con ARC , basándose en el soporte de su gestor de arranque y proporcionando únicamente osloader.exe , un programa de carga que acepta argumentos de línea de comandos ordinarios que especifican la partición del directorio de Windows, la ubicación o los parámetros de arranque, que es lanzado por el gestor de arranque compatible con ARC cuando un usuario elige iniciar un sistema operativo Windows NT específico. Sin embargo, debido a que el x86 carecía de todo el soporte de ARC, se agregó la capa adicional específicamente para esa plataforma: código de gestor de arranque personalizado que presenta un menú de texto que permite al usuario elegir entre uno o más sistemas operativos y sus opciones configuradas en el archivo de configuración boot.ini , precedido por un módulo especial StartUp que es responsable de algunas preparaciones como cambiar la CPU al modo protegido. Cuando un usuario elige un sistema operativo desde el menú de arranque, los siguientes argumentos de línea de comandos se pasan a la parte de osloader.exe común a todas las arquitecturas de procesador:

load  osloader = <Ruta de Windows> \System32\NTLDR systempartition = <Partición de Windows>  osloadpartition = <Partición de Windows>  osloadoptions = <Parámetros de arranque de Windows>  consolein =multi(0)key(0)keyboard(0) consoleout =multi(0)video(0)monitor(0) x86systempartition = <Partición NTLDR>

En las versiones de Windows a partir de Windows Vista y Windows Server 2008 , NTLDR se ha dividido en sus partes de gestor de arranque y cargador de sistema: Windows Boot Manager y winload.exe . La parte del gestor de arranque se ha reescrito por completo; ya no utiliza boot.ini como archivo de configuración, aunque la utilidad bootcfg para modificar boot.ini sigue estando presente en el caso de configuraciones de arranque múltiple con versiones de Windows hasta Windows XP y Windows Server 2003 .

Interfaz de línea de comandos

El programa de utilidad bootsect.exe de las herramientas de Windows PE tiene las opciones /nt52 (NTLDR) y /nt60 (Vista y versiones posteriores) para almacenar un registro de arranque NTLDR o Vista en el primer sector de una partición especificada. [1] El comando se puede utilizar para sistemas de archivos basados ​​en FAT y NTFS . Reemplaza las herramientas FixFAT y FixNTFS. [2]

Ejemplo

El siguiente ejemplo aplica el código de arranque maestro compatible con NTLDR al volumen D: [2]

C:\> bootsect/nt52 D:

Proceso de puesta en marcha

Cuando se enciende un PC, su BIOS sigue el orden de arranque configurado para encontrar un dispositivo de arranque. Puede ser un disco duro, un disquete, un CD/DVD, una conexión de red, un dispositivo USB, etc., según la BIOS. En el caso de un disquete, la BIOS interpreta su sector de arranque (primer sector) como código; en el caso de NTLDR, podría tratarse de un sector de arranque NTLDR que busca el ntldrarchivo en el disquete. En el caso de un disco duro, el código del Registro de arranque maestro (primer sector) determina la partición activa. El código del sector de arranque de la partición activa podría ser, a su vez, un sector de arranque NTLDR que busca ntldrel directorio raíz de esta partición activa. En un escenario más complejo, la partición activa puede contener un sector de arranque de Vista para el nuevo gestor de arranque de Vista con una entrada {ntldr} que apunta a otra partición con un sector de arranque NTLDR. [3]

Al arrancar, la parte del cargador de NTLDR hace lo siguiente en orden:

  1. Accede al sistema de archivos en la unidad de arranque (ya sea FAT o New Technology File System, NTFS ).
  2. Si Windows se pone en estado de hibernación, el contenido de hiberfil.sys se carga en la memoria y el sistema se reanuda donde lo dejó.
  3. De lo contrario, lee boot.ini y le solicita al usuario el menú de arranque correspondiente.
  4. Si se selecciona un sistema operativo que no está basado en NT, NTLDR carga el archivo asociado que aparece en boot.ini ( bootsect.dos si no se especifica ningún archivo o si el usuario está iniciando un sistema operativo basado en DOS) y le otorga el control.
  5. Si se selecciona un sistema operativo basado en NT, NTLDR ejecuta ntdetect.com , que recopila información sobre el hardware de la computadora. (Si ntdetect.com se bloquea durante la detección de hardware, existe una versión de depuración llamada ntdetect.chk que se puede encontrar en el soporte técnico de Microsoft. [4] )
  6. Inicia ntoskrnl.exe y le pasa la información devuelta por ntdetect.com . [5]

arranque.ini

La primera acción de NTLDR es leer el archivo boot.ini . [6] NTLDR permite al usuario elegir desde el menú desde qué sistema operativo arrancar. Para los sistemas operativos NT y basados ​​en NT, también permite al usuario pasar opciones preconfiguradas al núcleo. Las opciones del menú se almacenan en boot.ini , que a su vez se encuentra en la raíz del mismo disco que NTLDR. Aunque NTLDR puede arrancar versiones de Windows DOS y no NT, boot.ini no puede configurar sus opciones de arranque.

Para los sistemas operativos basados ​​en NT, la ubicación del sistema operativo se escribe como una ruta de Computación RISC avanzada (ARC).

boot.ini está protegido de la configuración del usuario al tener los siguientes atributos de archivo : sistema, oculto, solo lectura. Para editarlo manualmente, el usuario primero tendría que eliminar estos atributos. Una forma más segura de editar el archivo es usar el comando bootcfg desde una consola. bootcfg también volverá a bloquear el archivo (estableciendo el archivo nuevamente en sistema, oculto y solo lectura). Además, el archivo se puede editar dentro de Windows usando un editor de texto si la opción de vista de carpeta "Mostrar archivos y carpetas ocultos" está seleccionada, la opción de vista de carpeta "Ocultar archivos protegidos del sistema operativo" está desmarcada y la opción "Solo lectura" está desmarcada en las propiedades del archivo.

bootsect.dos es el sector de arranque cargado por NTLDR para cargar DOS, o si no hay ningún archivo especificado al cargar un sistema operativo no basado en NT.

Ejemplo

Un ejemplo de un archivo boot.ini :

[cargador de arranque] tiempo de espera = 40 predeterminado = multi(0)disk(0)rdisk(0)partition(1)\WINDOWS [sistemas operativos] multi(0)disk(0)rdisk(0)partition(1)\WINDOWS = "Microsoft Windows XP Professional" /fastdetect

Si la opción de tiempo de espera del cargador de arranque en boot.ini está establecida en 0, el menú de arranque NTLDR no aparece. Se debe tener mucho cuidado al modificar el cargador de arranque, ya que la información errónea puede provocar que el sistema operativo no arranque.

Conmutadores de kernel de NT

Menú de opciones avanzadas del cargador de arranque NTLDR

Véase también

Referencias

  1. ^ "Opciones de la línea de comandos de Bootsect". Windows Vista: referencia técnica . Microsoft Technet. 2009. Consultado el 3 de julio de 2011 .
  2. ^ ab "Comando bootsect de línea de comandos de MS-DOS y Windows".
  3. ^ "Preguntas frecuentes sobre el editor de datos de configuración de arranque". Windows Server . Microsoft Learn . 2007 . Consultado el 4 de enero de 2024 .
  4. ^ "Ntdetect.com (Installd.cmd)". Microsoft . Archivado desde el original el 6 de febrero de 2006.
  5. ^ Microsoft (2000). Kit de recursos de Windows 2000 Professional (1.ª edición). Redmond, WA: Microsoft Press. ISBN 1-57231-808-2.
  6. ^ Rick Maybury (2009). "Problemas de inicio y apagado, parte 1". Bootcamp . Archivado desde el original el 11 de julio de 2012. Consultado el 25 de abril de 2012 .{{cite web}}: CS1 maint: URL no apta ( enlace )
  7. ^ abcdefghijklmnopqrstu Microsoft (28 de noviembre de 2007). «Opciones de conmutación disponibles para los archivos Boot.ini de Windows XP y Windows Server 2003» . Consultado el 4 de enero de 2024 .
  8. ^ abcdefghijkl Russinovich, Mark (1 de noviembre de 2006). "Boot INI Options Reference". Microsoft Learn . Microsoft . Consultado el 4 de enero de 2023 .
  9. ^ "Pérdida de la superposición de DirectDraw y VMR9 después de una actualización". Foro de VideoHelp . Julio de 2008.
  10. ^ "/burnmemory (Controladores de Windows". Referencia de parámetros de arranque Boot.ini . Microsoft. Archivado desde el original el 10 de enero de 2013.
  11. ^ abcde "Descripción de las opciones de arranque en modo seguro en Windows XP". Soporte técnico de Microsoft . Archivado desde el original el 19 de febrero de 2015.
  12. ^ "Los programas que utilizan la función QueryPerformanceCounter pueden tener un rendimiento deficiente". Soporte técnico de Microsoft . 23 de febrero de 2023.

Enlaces externos