stringtranslate.com

NTLDR

NTLDR ( abreviatura de NT loa d e r ) es el cargador de arranque para todas las versiones del sistema operativo Windows NT desde 1993 con la versión de Windows NT 3.1 hasta Windows XP y Windows Server 2003 . A partir de Windows Vista fue reemplazado por el gestor de arranque BOOTMGR . NTLDR normalmente se ejecuta desde el dispositivo de almacenamiento principal , pero también se puede ejecutar 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, como mínimo, que los dos archivos siguientes estén en el volumen del sistema :

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

NTLDR se inicia mediante el registro de inicio 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 , confiando en su soporte de administrador de arranque y proporcionando sólo 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 se inicia mediante plataformas compatibles con ARC. administrador de arranque cuando un usuario elige iniciar un sistema operativo Windows NT específico. Sin embargo, debido a que el x86 carecía de soporte ARC, se agregó una capa adicional específicamente para esa plataforma: código de administrador 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 de inicio especial que es responsable de algunos preparativos, como cambiar la CPU al modo protegido. Cuando un usuario elige un sistema operativo en el menú de inicio, los siguientes argumentos de la 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 del administrador de arranque y del cargador del sistema: el Administrador de arranque de Windows y winload.exe . La parte del administrador de arranque ha sido completamente reescrita; ya no utiliza boot.ini como archivo de configuración, aunque la utilidad bootcfg para modificar boot.ini sigue presente para 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 en las herramientas de Windows PE tiene las opciones /nt52 (NTLDR) y /nt60 (Vista y superiores) para almacenar un registro de inicio 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 inicio maestro compatible con NTLDR al volumen D:: [2]

C:\> arranque/nt52 D:

Proceso de inicio

Cuando una PC está encendida, su BIOS sigue el orden de inicio configurado para encontrar un dispositivo de inicio. Puede ser un disco duro, un disquete, un CD/DVD, una conexión de red, un dispositivo USB, etc., dependiendo del BIOS. En el caso de un disquete, el BIOS interpreta su sector de arranque (primer sector) como código; para NTLDR, este podría ser un sector de arranque NTLDR que busca el ntldrarchivo en el disquete. Para un disco duro, el código en el Registro de arranque maestro (primer sector) determina la partición activa. El código en el sector de arranque de la partición activa podría ser nuevamente un sector de arranque NTLDR que se busca ntldren el directorio raíz de esta partición activa. En un escenario más complicado, la partición activa puede contener un sector de arranque de Vista para el administrador de arranque de Vista más nuevo 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 puso en estado de hibernación, el contenido de hiberfil.sys se carga en la memoria y el sistema continúa donde lo dejó.
  3. De lo contrario, lee boot.ini y solicita al usuario el menú de inicio correspondiente.
  4. Si se selecciona un sistema operativo no basado en NT, NTLDR carga el archivo asociado que figura en boot.ini ( bootsect.dos si no se especifica ningún archivo o si el usuario está iniciando en 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 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 qué sistema operativo iniciar en el menú. Para los sistemas operativos NT y basados ​​en NT, también permite al usuario pasar opciones preconfiguradas al kernel. 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 iniciar versiones de Windows DOS y no NT, boot.ini no puede configurar sus opciones de inicio.

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, de solo lectura. Para editarlo manualmente, el usuario primero tendría que eliminar estos atributos. Una forma más segura de editar el archivo es utilizar el comando bootcfg desde una consola. bootcfg también volverá a bloquear el archivo (configurando el archivo nuevamente al sistema, oculto y de solo lectura). Además, el archivo se puede editar en 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" no está marcada y la opción "Solo lectura" está desmarcado 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)disco(0)rdisco(0)partición(1)\WINDOWS [sistemas operativos] multi(0)disco(0)rdisco(0)partición(1)\WINDOWS = "Microsoft Windows XP Profesional" /fastdetect

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

Conmutadores de kernel NT

Menú de opciones avanzadas del gestor de arranque NTLDR

Ver también

Referencias

  1. ^ "Opciones de línea de comandos de Bootsect". Windows Vista: referencia técnica . Microsoft Technet. 2009 . Consultado el 3 de julio de 2011 .
  2. ^ ab "Comando de arranque de línea de comandos de MS-DOS y Windows".
  3. ^ "Preguntas frecuentes sobre el editor de datos de configuración de arranque". Servidor de windows . Microsoft aprende . 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ª ed.). Redmond, WA: Microsoft Press. ISBN 1-57231-808-2.
  6. ^ Rick Maybury (2009). "Problemas de inicio y apagado, parte 1". Campo de entrenamiento . Archivado desde el original el 11 de julio de 2012 . Consultado el 25 de abril de 2012 .{{cite web}}: Mantenimiento CS1: URL no apta ( enlace )
  7. ^ abcdefghijklmnopqrstu Microsoft (28 de noviembre de 2007). "Opciones de cambio 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). "Referencia de opciones de arranque INI". Microsoft aprende . Microsoft . Consultado el 4 de enero de 2023 .
  9. ^ "Pérdida de DirectDraw Overlay y VMR9 después de la actualización". Foro de vídeoayuda . 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 "Una descripción de las opciones de arranque en modo seguro en Windows XP". Soporte de Microsoft . Archivado desde el original el 19 de febrero de 2015.
  12. ^ "Los programas que utilizan la función QueryPerformanceCounter pueden funcionar mal". Soporte de Microsoft . 23 de febrero de 2023.

enlaces externos