What is the X in X-mas?
The database used by Microsoft Windows 95 and later to store all sorts of configuration information such as which program should be used to open a .doc file, DLL registration information, application-specific settings and much more.
The Registry is stored in .dat files, one in the user's profile containing their per-user settings and one in the Windows directory containing settings that are global to all users. These are loaded into memory at login.
The loaded data appears as a tree with five main branches: HKEY_CLASSES_ROOT, HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE, HKEY_USERS, HKEY_CURRENT_CONFIG. HKEY_CLASSES_ROOT defines file types and actions, HKEY_CURRENT_USER is an alias for one of the sub-trees of HKEY_USERS and contains user settings that override the global defaults in HKEY_LOCAL_MACHINE.
The branches of the tree are called "keys" and are identified by paths like HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion. Any node in the tree can have zero or more "values" which are actually bindings of a name and a value, e.g. "Logon User Name" = "Denis". The value can be of type string, binary, dword (long integer), multi-string value or expandable string value.
Windows includes a Registry Editor (regedit.exe).