学习小结(2005-2-22)

来源:互联网 发布:snmp出口流量监控软件 编辑:程序博客网 时间:2024/04/28 12:33

学习小结(2005-2-22

Author: Kendiv ( fcczj@263.net )

Last UpdateTuesday, February 22, 2005

 

终于翻译完了《Undocumented Windows 2000 Secrets》的第四章,有些累了。这本书的第四章写的非常不错。介绍了X86架构下的内存管理机制同时,还对应讲解了Windows 2000的实现方式,而且内容较详细。建议每个Windows NT平台的开发人员都来看看这一章,而且本章提供的两个示例程序:w2k_mem.exew2k_spy.sys也非常经典。

 

作者在讲解这两个程序的同时,带着我们“游玩”了一遍Windows 2000的内存管理机制。强烈建议阅读本章的朋友,仔细分析一下这两个示列程序,最起码在自己的开发环境下,重新编译一下这两个程序,程序的代码很有价值,不管是编写风格还是性能,都体现了作者的深厚功底。值得我们好好学习。

 

本章中给出了几乎所有X86架构下与内存管理相关的结构的C语言定义(比如GDTLDTIDT以及PTEPDE等),这些结构的设计也很巧妙,大量使用了C中的位域(bit-field)。如果我们想开发涉及Windows NT内存管理细节的程序,这些结构体可以直接拿来用。

 

个人感觉,对于大部分开发来说,关注最多的就是内存管理了,我相信通过本章你将触及Windows 2000内存管理的核心之处,你会对开发中遇到的内存问题有一个更高的认识。不会再为莫名的内存泄漏无从下手,至少我们知道该如何去分析了。

 

建议配套阅读《Windows 95 System Programming SECRETS》的第五章 内存管理,这本书的内存管理是从开发层面上入手,向下分析,但由于年代已久,内容是针对Windows 95的,而《Undocumented Windows 2000 Secrets》的第四章正好补上了这一点。而且个人感觉《Windows 95 System Programming SECRETS》的第五章在讲解内存相关函数时,如HeapXXXLocalXXXVirtualXXX系列函数时,比《Windows核心编程》更有条理些。算是对《Windows核心编程》中关于内存函数的补充吧。

原创粉丝点击