Windows注册表-为什么(和在哪里)存在?


13

与一个朋友谈论注册表,并意识到我不记得Microsoft试图解决的问题导致了注册表的出现。我知道这与太多的程序将其首选项存储在太多的不同位置/方式中有关,但是正如我所说的那样,这似乎不是一个很强的论点。一定有更好的理由。

问题的B部分是:如何存储注册表以使其搜索如此缓慢?看来,无论您的处理器速度或硬盘速度如何(我刚刚有了Intel SSD),搜索VIRGIN XP系统的注册表仍需要几秒钟的时间……大约需要10年的时间。前。哪种出色的技术可以使Windows的这一方面不受CPU和存储进度的影响?

澄清:我认为大多数人都误解了我的问题。在我看来(现在我可能是完全错误的),现在进行注册表搜索所需的时间几乎与十年前一样,鉴于处理速度的提高,我感到惊讶。我不提倡注册表编辑(尽管我多年来做的比我预期的要多),我也没有抱怨它花费的时间太长-我很好奇为什么搜索速度没有那么快。在过去的十年左右的时间里,t似乎随着处理能力的增长而扩展。我意识到注册表对我来说就像一个奇怪的黑匣子,因此是这个问题。


2
您何时以及为何需要以最终用户身份搜索注册表?我从来没有这样做过,甚至没有出于好奇,我已经使用PC约14年了……
Alex

1
过去它很方便,同时可以查看系统启动时所启动的内容。但是现在有自动运行(technet.microsoft.com/en-us/sysinternals/bb963902.aspx)。同样,某些程序在卸载后没有(并且仍然没有)清理注册表项,这有时会带来负面影响。但是现在也有注册表清理程序。
dertoni

1
@alex:对于玩游戏的最终用户而言,注册表搜索和编辑对于解决某些路径问题,调整某些选项或恢复cd键非常有用(并且仍然有用)。
Gnoupi

您只抱怨几秒钟?有点该死的耐心。只要不超过10分钟,它就会很快。
KdgDev

4
注册表未针对全局搜索性能进行优化。它针对单个键查找和更新进行了优化。
Greg Hewgill

Answers:


10

维基百科是这样的细节很不错,
读取Windows注册表中的其他操作系统等价物-

要了解有关注册表如何工作的更多信息,请阅读Mark Russinovich的出色注释,网址为:

也有一个CodingHorror文章针对另一个观点
Windows注册表是个好主意吗?(另请参阅此处的评论)。


每个注册表配置单元都存储在一个单独的文件中。
Greg Hewgill

是的,格雷格,我意识到这种解释。它已经修复。谢谢。
nik

12

注册表存储在多个文件中。Wikipedia上的位置有很好的描述。

如果您按预期使用它,搜索速度不会很慢。它基于值名称和指向它们的路径进行索引,因此可以快速加载和保存值。搜索所有内容是从来没有打算做的事情,“免费”索引的维护成本对于非标准用例来说太高了。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.