13

Was talking to a friend about the registry, and realized I couldn't remember the issues Microsoft was trying to solve that brought it into being. I know it had something to do with too many different programs storing their preferences in too many different places/ways, but as I said that it didn't seem like a very strong argument. There must be a better reason.

Part B of the question is: how is the registry stored that it is so SLOW to search? It seems that no matter how fast your processor is or how fast your hard disk is (I just got an Intel SSD), it still takes seconds to search the registry of a VIRGIN XP system...about as long as it took 10 years ago. What fantastic technology enables this aspect of Windows to be immune to CPU & storage progress?

Clarification: I think most people have misinterpreted my question. It seems to me (and I could be completely wrong), that it takes almost as long to do a registry search now as it did a decade ago, which I find surprising given the advances in processing speed. I'm not advocating registry editing (although I've ended up doing more of it than I ever expected over the years) and I'm not complaining that it takes too long - I'm just curious about why the search speed hasn't seemed to scale with processing power over the last 10 years or so. I realized that the registry is like this odd black box to me, hence this question.

8
  • 2
    When and why have you needed to search the registry as an end-user? I have never done that, not even out of curiosity and I've been using a PC for about 14 years...
    – alex
    Sep 15, 2009 at 7:35
  • 1
    In the past it came in handy, while looking what was started at system start up. But there is Autoruns (technet.microsoft.com/en-us/sysinternals/bb963902.aspx) for that now. Equally some programs didn't (and still don't) clean up there registry entries after uninstalling, which sometimes can have negative side effects. But there are registry cleaners for that now, too.
    – dertoni
    Sep 15, 2009 at 7:51
  • 1
    @alex : For end-users playing games, registry searching and editing was (and still is) useful to solve some path issues, tweak some options, or recover cd-keys.
    – Gnoupi
    Sep 15, 2009 at 8:10
  • You're complaining about mere seconds? Have some goddamn patience. As long as it doesn't take more than 10 minutes, it's fast.
    – KdgDev
    Sep 15, 2009 at 8:46
  • 4
    The registry is not optimised for global search performance. It is optimised for individual key lookup and updates. Sep 15, 2009 at 8:47

2 Answers 2

10

The Wikipedia is very good for such details,
read Windows Registry - Equivalents in other operating systems onwards

To learn more on how the registry works read Mark Russinovich's excellent notes at

There is also a CodingHorror article for another view-point
Was The Windows Registry a Good Idea? (also read the comments there).

2
  • Each registry hive is stored in a separate file. Sep 15, 2009 at 8:49
  • Yes Greg, I realized that interpretation. Its already fixed. thanks.
    – nik
    Sep 15, 2009 at 8:50
12

Registry is stored in multiple files. There is pretty good description with locations on Wikipedia.

Search is not slow if you use it as intended. It is indexed based on value names and path to them so loading and saving values is fast. Searching through all of content is something it was never intended to do and maintenance cost for "free" index would be too high for something that is not standard use case.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .