Back in 16-bit Windows, the registry was a very different beast.
Originally, the only registry
hive was
HKEY_CLASSES_ROOT ,
and the only things it was used for were COM object registration
and file type registration.
(Prior to the registry,
file type registration was done in WIN.INI ,
and the only verb you could register for was "open".)
The registry was stored in a single file, REG.DAT ,
which could not exceed 64KB in size.
But back to registry keys.
In 16-bit Windows, the registry was much simpler.
The first program to call RegOpenKey caused the
registry to be loaded, and the registry kept a running count
of how many registry keys were open.
When the matching number of RegCloseKey calls was made,
the registry was written back to disk and unloaded from memory.
(Yes, this means that if a program leaked a registry key,
then the registry never got unloaded.
Welcome to 16-bit Windows,
which
trusted software developers not to be stupid.)
The registry key itself was just an index
into the raw registry data.
|