探索Windows的内部机制所需的基础

 

 

探索Windows的内部机,分析Windows各种系统机能的实现方式,并不那么难。只要有一定的基础就可以开始这方面的学习。以我的学习经历来说,我觉得在开始深入学习Windows之前,最好有如下的基础:

1.         熟练使用C语言   你至少要对C中的指针了如指掌,知道如何使用指针访问数组。知道数组并不是仅可通过下标来访问的。如果你看过很多遍《C缺陷和陷阱》并认为这本书很棒。那就太好了。

 

2.         一定的汇编基础   了解基本的汇编语句,对x86架构的汇编指令有基本的了解。如果在学校认真学习过汇编语言这门课,那么就足够了。在深入学习Windows时,你会遇到不少汇编代码,很多时候你需要使用一些工具来反编译一些东西,此时你汇编水平的高低就直接有影响了。

 

3.         Windows API很熟悉  可以直接用API开发小规模的程序,了解Windows的消息机制,至少要看过《Windows程序设计》(上、下),如果深入学习过《Windows核心编程》那就更好。

 

4.         掌握基本的数据结构   至少应该达到能很容易的用C实现一个双向链表吧?基本上掌握了《数据结构》这门课,就差不多了。否则,学习中遇到的很多复杂结构,将会使你陷入云雾里,不知如何下手。

 

5.         学习过《操作系统》  对处理器调度、虚拟内存、I/O设备管理有基本的认识。知道什么是中断,引入中断的目的对CPU的工作方式有基本了解。这门课算是总的理论基础课了。你对这门课的掌握程度将直接影响你的学习进度,尤其是你要看《Windows Internals 4th》这本书时。

 

6.         对面向对象有一定的了解  

 

上面是一些基本的硬性要求,下面的是一些软性要求:

1.         要经常问:为什么?   没有质疑的精神,探索从何而言?

2.         要有耐心    学习是一个较长的过程,探索Windows内部时,有时确实让人很有挫折感,这时千万不要急躁,耐心才能保证你终有所成。

3.         要细心      这个。。。。不用说了吧?

4.         要多思考   不要把书中内容当作金科玉律。

5.         要多总结   这样知识才能变成自己的。

 

当然,有一本好书,也是必须的。我推荐如下:

Inside Windows 2000》或者《Windows Internals 4th

Undocumented Windows 2000 Secrets

 

或许有人认为没有必要探索Windows的内部机制,这个问题仁者见仁、智者见智,不过我相信你如果对Windows的内部机制有很深的了解,那么你一定能写出更高效、更能利用系统优势的程序来。并且,当程序出现Bug时,我相信你更有把握解决它们。知其然,而不知其所以然的感觉,确实很糟J

 

上述仅是个人所见,不足之处还请多多指教。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值