viernes, 27 de julio de 2012

Regedit en Windows

                     


















 Regedit es la herramienta para acceder y modificar el Registro de en los Windows.

El Registro de Windows almacena todos los datos importantes de configuración tanto del sistema operativo como de las aplicaciones instaladas.
El registro de Windows es una base de datos jerárquica que almacena los ajustes de configuración y opciones en los sistemas operativos Microsoft Windows. Contiene la configuración de los componentes de bajo nivel del sistema operativo, así como de las aplicaciones que hay funcionando en la plataforma: hacen uso del registro el kernel, los controladores de dispositivos, los servicios, el SAM, la interfaz de usuario y las aplicaciones de terceros. El registro también proporciona un medio de acceso a los contadores para generar un perfil del rendimiento del sistema.

Cuando se introdujo por primera vez con Windows 3.1, el propósito fundamental del registro de Windows era almacenar información sobre la configuración de componentes basados en COM. Con la introducción de Windows 95 y Windows NT, su utilización se extendió para ordenar la profusión de archivos INI de cada programa, los cuales se habían utilizado anteriormente para almacenar los ajustes de configuración de los programas basados en Windows. Las La aplicaciones portátiles normalmente no escriben los datos relativos a la configuración en el registro de Windows, sino que guardan los datos de configuración en archivos ubicados dentro de un único directorio desde el cual se ejecuta la aplicación.



Antes de la existencia del registro, los archivos.INI almacenaban los ajustes de cada programa en un archivo de texto, a menudo en una ubicación compartida que no permitía ajustes específicos para cada usuario en entornos de múltiples usuarios. Por el contrario, el registro de Windows almacena todos los ajustes de las aplicaciones en un solo repositorio lógico (con un número pequeño de archivos) y de forma estandarizada. Según Microsoft, este sistema ofrece varias ventajas sobre los archivos INI. Como el análisis de archivos se realiza de forma mucho más eficiente con el formato binario, se puede leer o escribir en él más rápidamente que en un archivo INI. Así mismo, los datos fuertemente tipados se pueden almacenar en el registro, lo que no ocurría con la información de texto almacenada en los archivos INI. Esto es una ventaja cuando se editan las claves manualmente usando regedit, el editor integrado para el registro de Windows. Dado que los ajustes del registro específicos para un usuario se cargan desde una ruta concreta para ese usuario, en lugar de hacerlo desde una ubicación de solo lectura del sistema, el registro permite que varios usuarios compartan el mismo equipo, y también permite que los programas funcionen para usuarios con menos privilegios. Además se han simplificado las copias de seguridad y la restauración, ya que es posible acceder al registro a través de una conexión de red para realizar labores de soporte y mantenimiento remotas, o incluso desde scripts usando el conjunto estándar de API, siempre y cuando el servicio de registro remoto esté funcionando y las reglas del cortafuegos lo permitan.

El registro dispone de características que mejoran la integridad del sistema, ya que está diseñado como una base de datos y cuenta con funciones parecidas a las de las bases de datos, como actualizaciones atomizadas. Si dos procesos intentan actualizar a la vez el mismo valor del registro, un cambio del proceso siempre precederá al otro y la coherencia general de los datos se mantendrá. Cuando se hacen cambios en los archivos INI, como en la condición de carrera, se pueden producir datos incoherentes que no coincidan con ninguna de las actualizaciones que se pretendían. Tanto Windows Vista como los sistemas operativos posteriores, proporcionan actualizaciones transaccionales del registro por medio del Administrador de transacciones de kernel[necesita atribución], extendiendo las garantías que proporciona la atomicidad a múltiples cambios en las claves y valores, con la semántica commit-abort tradicional. (Nótese, sin embargo, que el NTFS proporciona el mismo soporte al sistema de archivos, por lo que, en teoría, se podrían obtener las mismas garantías con los archivos de configuración tradicionales.)



El registro contiene dos elementos básicos: claves y valores.

Las claves del registro son similares a carpetas: además de los valores, cada clave puede contener subclaves, que a su vez pueden contener más subclaves, y así sucesivamente. Las claves están referenciadas con una sintaxis parecida a los nombres de las rutas de Windows, y usan barras diagonales inversas para indicar los distintos niveles jerárquicos. Cada subclave tiene obligatoriamente un nombre: una cadena que no puede contener barras diagonales inversas y en la que no se distingue entre mayúsculas y minúsculas.

Únicamente se puede acceder a la jerarquía de las claves del registro desde un identificador de clave raíz conocido (que es anónimo, pero cuyo valor efectivo es un identificador numérico constante) asignado al contenido de una clave de registro precargada por el kernel desde un "subárbol" almacenado, o asignado al contenido de una subclave dentro de otra clave raíz, o también asignado a un servicio registrado o DLL que proporciona acceso a los valores y subclaves contenidos en éste.

Ejemplo:

dijo:
HKEY_LOCAL_MACHINESoftwareMicrosoftWindows se refiere a la subclave "Windows" de la subclave "Microsoft" de la subclave "Software" de la clave raíz HKEY_LOCAL_MACHINE.


Hay siete claves raíz predefinidas, las cuales tradicionalmente se nombran según su identificador constante definido en la API de Win32, **por sus abreviaturas correspondientes (dependiendo de las aplicaciones):


HKEY_LOCAL_MACHINE o bien HKLM
HKEY_CURRENT_CONFIG o bien HKCC (únicamente en Windows 9x/Me y en las versiones basadas en NT de Windows)
HKEY_CLASSES_ROOT o bien HKCR
HKEY_CURRENT_USER o bien HKCU
HKEY_USERS o bien HKU
HKEY_PERFORMANCE_DATA (únicamente en las versiones de Windows basadas en NT, pero invisible para el editor del registro)
HKEY_DYN_DATA (únicamente en Windows 9x/Me, y visible en el editor de registro de Windows)


Al igual que otros archivos y servicios de Windows, todas las claves de registro pueden restringirse mediante listas de control de acceso (ACL), dependiendo de los privilegios del usuario, los tokens de seguridad obtenidos por las aplicaciones, o las directivas de seguridad aplicadas por el sistema (estas restricciones pueden ser definidas por el mismo sistema y configuradas por los administradores locales del sistema o por administradores de domino). Los diferentes usuarios, programas, servicios y sistemas remotos podrán ver únicamente una parte de la jerarquía o de las distintas jerarquías de las mismas claves raíz.

Los valores del registro son pares de nombres y datos almacenados dentro de las claves. Los valores del registro se referencian separados de las claves de registro. Cada valor de registro almacenado en una clave de registro posee un nombre único, sin distinguie entre mayúsculas y minúsculas. Las funciones API de Windows que consultan y manipulan los valores del registro toman nombres de valor independientes de la ruta de la clave o el indicador que identifica la clave principal. Los valores del registro pueden contener barras diagonales inversas en el nombre, pero esto los hace difíciles de distinguir de sus rutas de clave cuando se utilizan algunas funciones API del registro de Windows (cuyo uso está obsoleto en Win32).



La terminología puede inducir a error, ya que cada clave de registro es similar a un vector asociativo, en el que la terminología estándar denomina "clave" a la parte del nombre de cada valor de registro. Los términos son un vestigio del registro de 16 bits de Windows 3, en el cual las claves de registro no podían contener pares de nombres/datos, sino que contenían únicamente un valor sin nombre (que tenía que ser una cadena). En este sentido, todo el registro era como un único vector asociativo en el que las claves de registro (tanto en el sentido de registro como en el del diccionario) formaban una jerarquía, y los valores del registro eran todos cadenas. Cuando se creó el registro de 32 bits, también se creó la capacidad adicional de crear múltiples valores con nombre por clave y, de algún modo, se distorsionó el significado de los nombres.4 Para mantener la compatibilidad con el comportamiento anterior, todas las claves de registro pueden tener un valor "por defecto", cuyo nombre es la cadena vacía.

Cada valor puede almacenar datos arbitrarios de longitud y codificado variables, pero asociados a un tipo simbólico de datos (definido como una constante numérica) que expresa cómo analizar estos datos. Los tipos estándar son:

Lista de tipos de valores estándar del registro

0 REG_NONE Datos sin ningún tipo (en todo caso, el valor almacenado)
1 REG_SZ Valor de cadena, normalmente almacenado y mostrado en UTF-16LE (cuando se utiliza la versión Unicode de las funciones API de Win32), que generalmente termina con un carácter nulo
2 REG_EXPAND_SZ Valor de cadena "expandible" que puede contener variables de entorno, normalmente almacenado y mostrado en UTF-16LE, que generalmente termina con un carácter nulo
3 REG_BINARY Datos binarios (cualquier dato arbitrario)
4 REG_DWORD / REG_DWORD_LITTLE_ENDIAN Valor DWORD, número entero no negativo de 32 bits (números entre el 0 y el 4.294.967.295 [232 – 1]) (little-endian)
5 REG_DWORD_BIG_ENDIAN Valor DWORD, número entero no negativo de 32 bits (números entre el 0 y el 4.294.967.295 [232 – 1]) (big-endian)
6 REG_LINK Enlace simbólico (UNICODE) a otra clave de registro, especificando una clave raíz y la ruta a la clave objetivo
7 REG_MULTI_SZ Valor de cadena múltiple, que generalmente es una lista ordenada de cadenas no vacías, normalmente almacenadas y mostradas en UTF-16LE, cada una de ellas terminada en un carácter nulo, y la lista normalmente también termina con un carácter nulo.
8 REG_RESOURCE_LIST Lista de recursos (usada por la enumeración y configuración del hardware Plug-n-Play)
9 REG_FULL_RESOURCE_DESCRIPTOR Descriptor de recursos (usado por la enumeración y configuración del hardware Plug-n-Play)
10 REG_RESOURCE_REQUIREMENTS_LIST Lista de requisitos de recursos (usada por la enumeración y configuración del hardware Plug-n-Play)
11 REG_QWORD / REG_QWORD_LITTLE_ENDIAN Valor QWORD, número entero de 64 bits (puede ser big-endian o little-endian, o sin especificar). (Introducido en Windows XP)

No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.