Some Background
The registry has to be of the least understood aspects of the Windows operating system family. Even seasoned professional approach it with a degree of caution, knowing that a wrong entry can potentially wreak havoc on the system. To understand the Registry is to get to the heart of controlling and modifying your Windows system. With a detailed understanding of what you are doing, you can turn your machine into a lean performance machine customize and personalize its appearance, and get fine-grained control over nearly every aspect of how Windows XP behaves.
Some History
The Registry was introduced as way out of the “INI files mess” that plagued early versions of Windows. Configuration information regarding the operating system, application files, hardware, and so on were stored in INI files scattered all over the system. For example, when an application is installed, it needs to know various parameters regarding the operating system and the available hardware. Much of this information is common to other applications as well. However, if there was any change in the hardware or operating system software, updating the application’s INI files used to be hell.
The Registry was conceived as a way out of this madness. It is a hierarchical database that stores information regarding the hardware, operating system software, application software, user’s preferences and system preferences. The hierarchy separates the machine information, user’s information and the software information into logically discrete units that can be manipulated with greater ease. Any changes made by users, the operating system, newly installed software, and hardware are all updated and reflected in the Registry.
During system startup, Windows uses the registry to get configuration data regarding the hardware, software and other peripherals that have been configured. It also maintains a backup copy of the registry with which the system had successfully started up last. Hence, if it encounters a problem with the current startup, it can then use the configuration information from the backup to attempt to start the system. Some of the information stored in the registry is specific to the particular startup session only, and is mostly user-specific. When the user installs new software, Windows will either make the installation user-specific or system-wide. In some software, the user is given the option to select whether the installation should or not be available to every one else who uses the system. In other cases, the software will install itself system-wide and save user specific information separately, making entries in the registry that are both user-specific as well as system-wide.
For example, when you install Yahoo! Messenger, the program is installed system-wide, but the user information is specific to the currently logged-in user. Any preferences that are made are stored under the username in the registry. If another user logs in and starts Yahoo! Messenger, the default preferences are initialized, and a new entry is created in the registry under this username.
Critics of the Registry concept point to it as a “single point of failure”. If the Registry is damaged, XP will fail to start up, and in most cases will require a complete reinstall. It is for this reason that the registry is hidden deep in the system and any discussion on the tweaking the registry is accompanied by dire warnings of disaster if one does any thing wrong. Also, if an application doesn’t uninstall correctly, it can leave traces in the registry, which over time will increase its size and affect performance.
Physically, the Registry information in XP is stored in multiple files in the\Ststem32\Config folder of the operating system (or root) folder – usually C:\Windows or C:\WINNT. These files cannot be edited directly; they have to be accessed through a Registry-editing program such as Regedit.exe or Regedt32.exe.