注册表就是一个数据库,键值查找非常快,windows 把几乎大部分程序的相关信息,都写入了注册表,包括巨量 COM 信息。
心血来潮想看一下查找原理,找到了源代码,但硬是没看懂。
不知道用到了 hashtable 来查找键值,还是二分法查找,或者是黑白树?
头文件定义结构: https://github.com/CupertinoDude/windows2000/blob/master/private/ntos/inc/hivedata.h
具体的查找代码: https://github.com/CupertinoDude/windows2000/blob/master/private/ntos/config/hivemap.c
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.