El Registro de Windows ( Registro de Windows en inglés ), o el registro del sistema, es una base de datos de parámetros y configuraciones construida jerárquicamente en la mayoría de los sistemas operativos de Microsoft Windows .
El registro contiene información y configuraciones para hardware , software , perfiles de usuario, ajustes preestablecidos. La mayoría de los cambios en el Panel de control , las asociaciones de archivos, las políticas del sistema, la lista de software instalado se fijan en el registro.
El Registro de Windows se introdujo para organizar la información que anteriormente se almacenaba en muchos archivos INI , proporcionar un mecanismo único (API) para escribir/leer configuraciones y deshacerse de los problemas de nombres cortos, falta de derechos de acceso y acceso lento a los archivos ini almacenados. sobre el sistema de archivos FAT16 , que presentaba serios problemas de rendimiento a la hora de buscar archivos en directorios con gran cantidad de ellos. Con el tiempo (finalmente, con la llegada del sistema de archivos NTFS ), los problemas resueltos por el registro desaparecieron, pero el registro permaneció debido a la compatibilidad con versiones anteriores y está presente en todas las versiones de Windows, incluida la última. Dado que actualmente no existe un requisito previo real para usar dicho mecanismo, Microsoft Windows es el único sistema operativo (aparte de ReactOS y eComStation ) en uso hoy en día que usa el mecanismo de registro del sistema operativo.
El registro en sí como una base de datos jerárquica en forma de árbol (base de datos de registro - base de datos de registro) apareció por primera vez en Windows 3.1 ( abril de 1992 ). Era solo un archivo binario llamado REG.DAT y estaba almacenado en el directorio C:\Windows\. El registro de Windows 3.1 solo tenía una rama HKEY_CLASSES_ROOT. Sirvió para comunicar objetos DDE y OLE posteriores.
Simultáneamente con la llegada del registro en Windows 3.1, apareció el programa REGEDIT.EXE para ver y editar el registro.
El primer registro ya tenía la capacidad de importar datos de archivos *.REG . La distribución base incluía el archivo SETUP.REG que contenía datos sobre las principales extensiones y tipos de archivos.
El Registro de Windows 3.1 tenía un límite de tamaño máximo de 64 KB para el archivo REG.DAT. Si el registro excedía este tamaño, el archivo de registro (REG.DAT) tenía que eliminarse y reconstruirse a partir de archivos *.REG o ingresarse manualmente.
El siguiente paso se dio en Windows NT 3.1 ( julio de 1993 ). Los archivos obsoletos de MS-DOS AUTOEXEC.BAT y CONFIG.SYS se han eliminado , así como los archivos INI como archivos de configuración principales. Toda la configuración del sistema se transfirió a la "base de registro" (registro). El registro es la base de la configuración del sistema. Tenía 4 particiones raíz: HKEY_LOCAL_MACHINE, HKEY_CURRENT_USER, HKEY_CLASSES_ROOT y HKEY_USERS.
El registro se volvió "prefabricado": se almacenaba en el disco en los archivos: DEFAULT, SOFTWARE, SYSTEM, y cuando se iniciaba el sistema, se ensamblaba una única base de datos a partir de estos archivos.
El archivo REGEDIT.EXE permaneció en el kit de distribución, que aún permitía ver y editar solo la rama HKEY_CLASSES_ROOT, y apareció el archivo REGEDT32.EXE, que editó todas las ramas del registro.
Además, la tecnología y la ideología (propósito) del registro no cambiaron. Todas las versiones posteriores de Windows (NT 3.5, 95, NT 4.0, 98, 2000, XP, Vista, 7, 8, 10) utilizaron el registro como la base de datos principal que contenía todos los datos de configuración básicos tanto para el sistema operativo como para los programas de aplicación. Además, cambiaron los nombres de los archivos de registro y su ubicación, así como el nombre y el propósito de las claves.
El registro, como lo usa Windows y como lo ve el usuario en el proceso de usar los programas de registro, se forma a partir de varios datos. Para obtener lo que ve el usuario al editar el registro, sucede lo siguiente.
Inicialmente, durante la instalación de una configuración de Windows, se generan archivos en el disco que almacenan algunos de los datos relacionados con la configuración del sistema.
Luego, durante cada inicio del sistema, así como durante cada inicio y cierre de sesión de cada usuario, se forma una cierta entidad virtual llamada "registro": el objeto REGISTRO \. Los datos para la formación del "registro" se toman en parte de los mismos archivos (Software, System...), en parte de la información recopilada por ntdetect durante el arranque (HKLM\Hardware\Description). Es decir, parte de los datos de registro se almacenan en archivos y parte de los datos se forman durante el proceso de arranque de Windows.
Las ramas del registro están disponibles para editar, ver y estudiar el registro utilizando las herramientas estándar de Windows (programas regedit.exe y regedt32.exe). Después de editar el registro y/o realizar cambios en él, estos cambios se escriben inmediatamente en los archivos. Sin embargo, existen programas de terceros que le permiten trabajar directamente con archivos.
Los programas de optimización del registro, los modificadores , así como los instaladores y desinstaladores de programas funcionan a través de funciones de registro especiales.
En Windows 2000, el número de subárboles de registro seguía siendo el mismo que en WIndows NT 5.0.
5 colmenas, una de las cuales es una referencia clave en HKEY_USERS. La colmena en sí se llama HKEY_CURRENT_USER
En Windows XP, los archivos de registro se almacenan en las siguientes ubicaciones:
En Windows Vista, los archivos de registro se almacenan en el mismo lugar que en Windows XP.
En Windows 7, según HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\hivelist, los archivos de registro se almacenan en las siguientes ubicaciones:
Los archivos de registro DEFAULT, SAM, SECURITY, SOFTWARE y SYSTEM están respaldados en la carpeta %SystemRoot%\System32\config\RegBack. La copia de seguridad en sí la realiza el Programador de tareas a las 0000 horas. cada 10 días por la tarea "RegIdleBackup" ubicada en la jerarquía de tareas a lo largo de la ruta "\Microsoft\Windows\Registry".
La rama de registro "HKEY_CURRENT_USER" se forma a partir del archivo "%USERPROFILE%\NTUSER.DAT", donde %USERPROFILE% significa la ruta a la carpeta del usuario actual.
El registro para las versiones de 64 bits de Windows XP y Windows Server 2003 y Windows Vista se subdivide en claves de 32 y 64 bits. La mayoría de las particiones de 32 bits tienen los mismos nombres que sus equivalentes de 64 bits y viceversa. De forma predeterminada, el Editor del registro para las versiones de 64 bits de Windows XP, Windows Server 2003 y Windows Vista muestra claves de 32 bits en HKEY_LOCAL_MACHINE\Software\WOW6432Node.
Esta sección contiene configuraciones para el usuario activo actual que inició sesión en el sistema. Las carpetas de usuario, los colores de la pantalla y la configuración del panel de control se almacenan aquí. Esta información está asociada a un perfil de usuario. A veces se utiliza la abreviatura HKCU en lugar del nombre completo de la sección. [2] Aunque esta clave parece una de las principales en el Editor del Registro, es solo un enlace a uno de los perfiles HKEY_USERS\.
La clave HKEY_USERS (alias HKU) contiene información sobre los perfiles de todos los usuarios en esta computadora. Esta sección casi nunca es utilizada por los usuarios. Tenga en cuenta la relación de esta clave raíz con la clave HKEY_CURRENT_USER, que en realidad es un enlace a una subsección de la clave raíz HKEY_USERS que almacena información sobre el usuario actual.
Esta sección contiene opciones de configuración específicas para esta computadora (para todos los usuarios). A veces se utiliza la abreviatura HKLM en lugar del nombre completo de la sección. [2]
Es una subclave de HKEY_LOCAL_MACHINE\Software\Classes. Contiene principalmente información sobre tipos de archivos registrados y objetos COM y ActiveX . A veces se usa la abreviatura HKCR en lugar del nombre completo de la sección. A partir de Windows 2000, esta información se almacena tanto en LOCAL_MACHINE como en CURRENT_USER. La clave HKLM\Software\Classes contiene configuraciones predeterminadas que se aplican a todos los usuarios en la computadora local. La configuración contenida en la sección HKCU\Software\Classes se aplica solo al usuario actual y tiene prioridad sobre las predeterminadas. La sección CLASSES_ROOT incluye datos de ambas fuentes. Además, la sección CLASSES_ROOT proporciona datos agregados a programas escritos para versiones anteriores de Windows. Los cambios en la configuración del usuario actual se realizan en la clave HKCU\Software\Classes. La modificación de los parámetros predeterminados debe realizarse en la sección HKLM\Software\Classes. Los datos de las particiones agregadas a CLASSES_ROOT serán almacenados por el sistema en la partición HKLM\Software\Classes. Si se cambia una configuración en una de las subsecciones de la sección CLASSES_ROOT y dicha subsección ya existe en HKCU\Software\Classes, entonces se usará la sección HKCU\Software\Classes para almacenar información, y no la sección similar en LOCAL_MACHINE. [2]
Esta sección contiene información sobre el perfil de hardware utilizado por la computadora local al iniciar el sistema. [2] Es un enlace a HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardware Profiles\Current
Esta clave solo existe en el registro del sistema operativo Windows 9x/ME. Contiene datos que cambian dinámicamente sobre la computadora (carga del procesador, tamaño del archivo de paginación, etc.). [2]
La forma en que se almacenan los parámetros y la configuración del sistema operativo mediante el registro de Windows suele criticarse por los siguientes motivos:
Los críticos citan UNIX , como sistemas operativos como ejemplo, donde no hay registro y las tareas que realiza se resuelven por otros medios.
Hay programas publicitados sin escrúpulos que prometen, entre otras cosas, la optimización del registro. Se pueden utilizar tanto para beneficiarse de la venta a un precio excesivamente alto como para propagar virus. Dichos programas ni siquiera funcionan en teoría, ya que es inútil desfragmentar archivos de registro grandes, que también son archivos del sistema.
Descripción del registro en la literatura inglesa, entre otros, se utiliza el término Hive . En algunas obras, se traduce al ruso como "árbol". Microsoft traduce esto como colmena en sus documentos . Por ejemplo:
Sección de registro HKEY_LOCAL_MACHINE \SAM == Sección de registro HKEY_LOCAL_MACHINE\ SAM [2] [4]
Un árbol de registro (colmena) es un subconjunto de claves de registro, subclaves y configuraciones asociadas con un conjunto de archivos auxiliares que contienen copias de seguridad de estos datos. [2]