Gmxpsoft
驱动牛犊
驱动牛犊
  • 注册日期2007-09-20
  • 最后登录2011-10-11
  • 粉丝1
  • 关注0
  • 积分3分
  • 威望61点
  • 贡献值1点
  • 好评度30点
  • 原创分1分
  • 专家分0分
阅读:6793回复:33

学习驱动几个月来的经验和教训

楼主#
更多 发布于:2007-11-04 01:05
      不知不觉,学习驱动开发已经好近三个了,虽然中间断断续续,从中还是学到了很多东西.
我目前学习的是文件驱动,下面就讲讲自己作为驱动开发的新手这几个月来的一些感受吧.
      准备:
      1.楚狂人编写的《Windows文件系统过滤开发教程(第二版)》:
      个人觉得这是最重要的东西,我当初决定研究驱动就是因为这本教程而起的,过程中我把整个教程打印出来,前前后后读了不止10次,作者对文件驱动的运行过程分析的很好,很多提示也很重要,基本上是文件驱动开发的第一参考手册.
      2.IFS DDK及其帮助文档:
      这个要特别注意,网上流传的即使名字是IFS DDK,但基本上都是普通的WINDDK,不是IFS DDK,IFS DDK在WINDDK之上,包含WINDDK,我的IFS DDK是自己费尽周折从eMule上得到的,Microsoft网站中普通的WINDDK是免费的,而IFS DDK却要100美圆,可见其远非不同WINDDK可比.如何获得真正的IFS DDK可以向我询问.
      3.DriverStudio的调试工具,特别是SoftICE:
      虽然没有必要用DriverStudio开发驱动,但是其一系列的调试工具是不可多得的好东西,特别是SoftICE,强大到超乎想象,你必须学会它的基本操作.
      4.VMware或者其他虚拟机:
      其实这个不是一定必要的,但是如果你害怕自己的电脑因为驱动的调试不断蓝屏,重启(我开始用真机调试的时候试过两个小时内蓝屏近20次-_-!)或者瘫痪的话,还是准备一个虚拟机吧,在虚拟机上面调试不用在真机上面那样提心吊胆.

      当然,上面的条件具备了之后,还要准备的就是你的脑子了,个人觉得没有毅力的人不要轻易的学习驱动开发,特别是文件驱动,不然调试的时候一定坚持不下来,用SoftICE调试惯了驱动再返回WINFORM编程时,你会发现原来Visual Studio的调试工具这么方便,快捷.
同时还要有一定的创新能力,在开发时你往往要穿梭于微软官方的sfilter例程和楚狂人的代码,虽然他们大部分都是相同的,但是错误往往就是出在他们所不同的地方,另外还要特别提醒的是sfilter例程是完整的驱动源代码,而楚狂人的代码仅是sfilter例程中重要的部分或者修改过的部分.
      其实我的过滤驱动也还没有完成,刚刚做到绑定了Volume和获得文件操作部分,真正的过滤还没有开始.因为开发驱动确实不是一个简单的工作,特别是像文件驱动这些Windows驱动中比较复杂的驱动,只想在驱动开发学习阶段的朋友们不要因为我遇到的一些问题而走了很多弯路,所以才会还没有完成过滤驱动就来写东西了,希望没有误导你们,呵呵^_^
      另外感觉这里的学习气氛不是很好,很多次我遇到问题发帖都没有人理我-_-!希望大家,不管高手还是像我这样的菜鸟都可以多多提问,多多回答,多多交流,一起进步!

最新喜欢:

linshierlinshi...
lkni
驱动牛犊
驱动牛犊
  • 注册日期2007-09-18
  • 最后登录2010-08-15
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望22点
  • 贡献值0点
  • 好评度21点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-11-04 09:30
我顶
驱网无线,快乐无限
sssslin
驱动牛犊
驱动牛犊
  • 注册日期2007-06-28
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分260分
  • 威望27点
  • 贡献值0点
  • 好评度26点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-11-04 09:41
可否给我一份 真正的IFS DDK啊
谢谢了
QQ:461209980
Gmxpsoft
驱动牛犊
驱动牛犊
  • 注册日期2007-09-20
  • 最后登录2011-10-11
  • 粉丝1
  • 关注0
  • 积分3分
  • 威望61点
  • 贡献值1点
  • 好评度30点
  • 原创分1分
  • 专家分0分
地板#
发布于:2007-11-04 12:09
你可以从eMule上面下载到的。
似乎现在只有那里有真正的IFSDDK,论坛里流传的似乎都是普通DDK。。。
wisebo
驱动小牛
驱动小牛
  • 注册日期2006-04-13
  • 最后登录2012-07-18
  • 粉丝0
  • 关注1
  • 积分825分
  • 威望218点
  • 贡献值0点
  • 好评度80点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2007-11-04 23:46
顶,和楼主有同感啊,我现在也学了3,4个月了,代码也写了一些,基本功能也有了,
现在突然觉得代码很有问题,想重新从头开始写了。。
I love niu
znsoft
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2023-10-25
  • 粉丝300
  • 关注6
  • 积分910分
  • 威望14796点
  • 贡献值7点
  • 好评度2410点
  • 原创分5分
  • 专家分100分
  • 社区居民
  • 最爱沙发
  • 社区明星
5楼#
发布于:2007-11-05 06:36
楼上的感觉是正常的,初学以后,代码需要重构.

即使是商业开发,在写完一段时间,基本稳定后,都需要重构
http://www.zndev.com 免费源码交换网 ----------------------------- 软件创造价值,驱动提供力量! 淡泊以明志,宁静以致远。 ---------------------------------- 勤用搜索,多查资料,先搜再问。
stevphen
驱动牛犊
驱动牛犊
  • 注册日期2003-02-09
  • 最后登录2010-12-03
  • 粉丝0
  • 关注0
  • 积分573分
  • 威望87点
  • 贡献值1点
  • 好评度57点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2007-11-05 10:33
同感!!这里的学习气氛确实不是很好!!
lovemi
驱动牛犊
驱动牛犊
  • 注册日期2007-10-30
  • 最后登录2007-11-29
  • 粉丝0
  • 关注0
  • 积分660分
  • 威望67点
  • 贡献值0点
  • 好评度66点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2007-11-05 10:39
wwg266543
驱动小牛
驱动小牛
  • 注册日期2007-07-03
  • 最后登录2014-08-27
  • 粉丝3
  • 关注1
  • 积分3分
  • 威望882点
  • 贡献值0点
  • 好评度9点
  • 原创分0分
  • 专家分54分
8楼#
发布于:2007-11-05 13:29
同感!大家应该多在这里交流一下自己的学习心得!
lohcve
驱动牛犊
驱动牛犊
  • 注册日期2007-08-31
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分400分
  • 威望41点
  • 贡献值0点
  • 好评度40点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2007-11-05 13:37
向楼主学习,我现在也是菜鸟,如果我会的问题我一定会知无不言,言无不尽的。
还有楼主说emule上有ifs ddk,那个完整文件名是什么,搜索什么关键字呢??
QQ:19421832
Gmxpsoft
驱动牛犊
驱动牛犊
  • 注册日期2007-09-20
  • 最后登录2011-10-11
  • 粉丝1
  • 关注0
  • 积分3分
  • 威望61点
  • 贡献值1点
  • 好评度30点
  • 原创分1分
  • 专家分0分
10楼#
发布于:2007-11-05 18:17
在eMule里面搜索IFSDDK就可以了,只有一个符合的条件,那个就是真正的IFSDDK了~
hustwing
驱动牛犊
驱动牛犊
  • 注册日期2007-08-19
  • 最后登录2012-03-03
  • 粉丝0
  • 关注0
  • 积分180分
  • 威望19点
  • 贡献值0点
  • 好评度18点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2007-11-05 23:42
兄弟,我跟你一样,也就到你这程度。。。
潜龙勿用-->见龙在田-->飞龙在天-->亢龙有悔
zy7749
驱动牛犊
驱动牛犊
  • 注册日期2007-11-06
  • 最后登录2007-11-23
  • 粉丝0
  • 关注0
  • 积分60分
  • 威望7点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2007-11-06 14:40
顶,好贴.
我才刚上路! 多多交流!
dionysus77
驱动小牛
驱动小牛
  • 注册日期2006-11-15
  • 最后登录2011-12-18
  • 粉丝0
  • 关注0
  • 积分27分
  • 威望392点
  • 贡献值0点
  • 好评度177点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2007-11-06 23:36
我没装driverstudio,windbg调试就挺好,蓝屏了还能自己分析
dionysus77
驱动小牛
驱动小牛
  • 注册日期2006-11-15
  • 最后登录2011-12-18
  • 粉丝0
  • 关注0
  • 积分27分
  • 威望392点
  • 贡献值0点
  • 好评度177点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2007-11-06 23:38
winddk和ifsddk有什么不同?
Gmxpsoft
驱动牛犊
驱动牛犊
  • 注册日期2007-09-20
  • 最后登录2011-10-11
  • 粉丝1
  • 关注0
  • 积分3分
  • 威望61点
  • 贡献值1点
  • 好评度30点
  • 原创分1分
  • 专家分0分
15楼#
发布于:2007-11-07 00:09
IFS DDK在WINDDK之上,包含WINDDK.
提供比普通DDK更多的功能,例如很多关于文件操作的调用.
wpegh
驱动牛犊
驱动牛犊
  • 注册日期2007-12-11
  • 最后登录2009-11-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望12点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2007-12-17 14:47
呵呵,说得不错,有同感
beiujm
驱动小牛
驱动小牛
  • 注册日期2005-11-03
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分983分
  • 威望129点
  • 贡献值0点
  • 好评度98点
  • 原创分0分
  • 专家分0分
17楼#
发布于:2007-12-18 08:35
这里的商业气息太重。
http://beiyu.bokee.com
akira1207
驱动牛犊
驱动牛犊
  • 注册日期2006-09-24
  • 最后登录2008-10-12
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望27点
  • 贡献值0点
  • 好评度25点
  • 原创分0分
  • 专家分0分
18楼#
发布于:2007-12-18 20:49
刚开始学习,庆幸先看到了楼主的经验和教训,确实是在一片迷雾中指引了一个方向~!任务初安排是1个月到1个半月完成,看来是不可能的!何况还多包含了一个虚拟磁盘驱动。。。先看楚狂人的,尽力了!
beiujm
驱动小牛
驱动小牛
  • 注册日期2005-11-03
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分983分
  • 威望129点
  • 贡献值0点
  • 好评度98点
  • 原创分0分
  • 专家分0分
19楼#
发布于:2007-12-21 10:40
这里的很多人想学习,只是很少人会来教。
http://beiyu.bokee.com
上一页
游客

返回顶部