写在前面
此系列是本人一个字一个字码出来的,包括示例和实验截图。由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新。 如有好的建议,欢迎反馈。码字不易,如果本篇文章有帮助你的,如有闲钱,可以打赏支持我的创作。如想转载,请把我的转载信息附在文章后面,并声明我的个人信息和本人博客地址即可,但必须事先通知我。
你如果是从中间插过来看的,请仔细阅读 羽夏看Win系统内核——简述 ,方便学习本教程。
所需工具
- SourceInsight
- WRK(Windows Research Kernel)
SourceInsight 的安装
SourceInsight
是一个功能强大的面向项目的编程编辑器、代码浏览器和分析器,可帮助您在工作和计划时理解代码,内置了针对C/C++
、C#
、Java
、Objective-C
等的动态分析,点击进入 官网 。它是一款付费软件,如果你觉得软件有用,请购买正版。看雪上有个大佬给出了Patched
版本,点击 链接 进行查看。怎么安装就按照上面的说明就行了,本人不再赘述。
配置 WRK
WRK
的全称是Windows Research Kernel
,它是微软为高校操作系统课程提供的可修改和跟踪的操作系统教学平台。它给出了Windows
这个成功的商业操作系统的内核大部分代码,可以对其进行修改、编译,并且可以用这个内核启动Windows
操作系统。可让学生将操作系统基本原理和商业操作系统内核联系起来,进一步加深对操作系统整体的理解。
当然,我们配置WRK
并不是为了编译系统,而是为了必要时查看源码,降低不必要的逆向成本。不过逆向对于本系列教程的学习,是必须的技能。因为WRK
是个好几个老版本NT
架构的代码了,现在我写文章的时候Win11
都出来了,肯定部分代码还是有些变化,不过对于基于XP
研究系统内核,这个似乎也足够了。WRK
请到本系列的 羽夏看Win系统内核——简述 进行查看和下载。
安装完SourceInsight
注册之后,打开后界面如下所示:
接下来我们需要解压WRK
源码,只需解压WRK-v1.2
到你想要放置的路径即可:
解压好后,然后在SourceInsight
的Project
菜单下点击New Project
:
就会出现下面的界面,按照下图所示的步骤进行:
点击确定后,就会到配置项目设置。这里直接点击确定按钮即可:
接下来我们需要将源码文件添加到项目即可。SourceInsight
是比较人性化的,我们不需要一个一个的将源码文件添加到项目里面,只需要按照下面图示的方法添加,它就会自动分析将需要添加的文件添加到项目当中去:
点击Add Tree
后,会弹出下面的弹出,点击确定即可:
最终添加好源码的窗体效果如下,点击关闭按钮完成项目文件的添加:
关闭上面的窗体后,点击键盘上的F7
,它的作用就是Activate Project Symbol List
,即激活项目符号,会有下面的弹窗,点击是即可:
SourceInsight
开始加载,过一会就会加载完毕:
我们可以直接在Project Symbol
中搜索我们感兴趣的东西,双击即可定位到源码,效果如下:
综上,我们的配置完成。
下一篇
羽夏看Win系统内核——保护模式篇