The Windows Registry is the central database in your computer. It contains all the instructions and settings (related to hardware and software) your computer needs to perform any task. Frequently your computer accesses the registry. To help you gain more knowledge on the science of registry, in this article we discuss about the basic structure of the registry.
Once you open the Windows Registry you can see the entire registry organized into 5 folders (technically called ‘keys’). Each of these keys again contains sub keys and values (similar to files) within them. So the description of the five root keys of Windows Registry is mentioned below.
The 5 Registry Root Keys of The Windows Registry:
1. HKEY_CLASSES_ROOT (HKCR)
The HKEY_CLASSES_ROOT, abbreviated as HKCR is a registry root key, whose hive has all the information of the file name extensions and OLE (Object Linking and Embedding). There are thousands of keys within this hive. All of these are for sake of understanding classified into these classes:
- Each key is a file name extension with the information about the default program with which files of that format are accessed. You can modify the program that is set as default here. But owing to all the complexity this process carries, we recommend not doing so. Also the OLE technology helps in linking and embedding objects and programs. But the complexity involved is definitely a bottleneck though.
- The remaining keys in this hive are ProgID, CLSID and IID. These keys are related to technical aspects of programming and will be discussed later on.
2. HKEY_CURRENT_USER (HKCU)
This registry root key contains all the settings related to the user who is currently logged into the computer. Right from the appearance aspect to how the mouse pointer behaves, everything can be controlled via this hive. Usually in most of the Windows operating systems all these settings are available in the following keys:
- Console Key
- Control Panel Key
- Environment Key
- Network Key
- Software Subtree
(Source: technet.microsoft.com)
3. HKEY_LOCAL_MACHINE (HKLM)
This is one of the most accessed registry hives. This registry root key contains all the information about the hardware and software of the system. It includes the bus system used, the hard drive technology, the operating system details and everything else about your computer.
This entire information is not a part of the hard drive but is stored in the system memory, mapping all the sub keys. There actually can be in depth discussion of the science of the HKLM but is out of scope of this article.
4. HKEY_USERS (HKU)
In this registry is the information on settings made by various users on the computers, many a time the values represented by the HKU and HKCU are similar. For better understanding, we can interpret it to be a superset of the HKEY_CURRENT_USER registry root keys.
5. HKEY_CURRENT_CONFIGURATION (HKCC)
The HKCC is the registry root key which contains information about the hardware which is currently used by the computer. It is most often empty and gets activated at boot time, during which it loads the ‘hardware profiles’ sub key of the HKLM.
These are the registry root keys being used in the Windows 8’s registry. Some other additional root keys like the HKEY_DYN_DATA (HKDD) used to be present in the earlier versions of Windows.