阅读:1399回复:8
直接学WDM如何?不想从VXD开始了
因为装的2000的系统,所以不想再麻烦VXD了,
这样做会不会有很大困难? |
|
沙发#
发布于:2002-03-23 10:07
根据我的经验,WDM和VXD没有必然的联系,你可以直接从WDM开始学习驱动程序开发。不过懂得VXD的技术对WDM的学习和理解是有帮助的;另外WDM和NT的KMD非常类似,所以写过NT驱动程序的人学习WDM比只写过VXD的人学WDM要快得多,毕竟它们是如此地类似。
我现在认为,学习WDM,首先必须弄清楚Win2000/NT的系统构架,组件构成,如I/O Manager,PnP Manager,Power Manager等等,同时多看书,多实践,就OK了。 祝你好运! |
|
|
板凳#
发布于:2002-03-23 10:07
用2000怎可以用VxD?VxD已经过时了,根本没必要学它。比如我原来什么都不懂,一上来就开始学WDM,根本不理VxD
|
|
|
地板#
发布于:2002-03-23 18:22
WDM 好不好学啊?
|
|
|
地下室#
发布于:2002-03-23 20:39
很好上手!不过要精通就不是那么简单了,可以说比编APP要难一些!
|
|
5楼#
发布于:2002-03-23 20:47
真是个明智的选择!
|
|
6楼#
发布于:2002-03-23 22:22
的确,学WDM是明智的选择,而且关于它的书很多,推荐Walter Oney的Programming the Microsoft Windows Driver Model,堪称经典 :D
|
|
7楼#
发布于:2002-03-24 15:47
如果是为了学驱动而学的话,确实是应该学习最新的技术,那么WDM是最好的选择,但是VxD也是有它立足之地的,VxD可以直接操作硬件,而WDM不可以,这是有Windows2000的机制决定的,WDM操作的不是直接的硬件,我想就因为这个它对硬件的响应时间应该会比VxD要慢些,如果你只是想通过驱动来控制某个硬件来达到什么目的的话,那么还是应该选择VxD,但是如果你纯粹是想学习驱动那么就可以跳过VxD,选择WDM吧。不知道我说得对不对,还请各位大虾多多指教!
|
|
|
8楼#
发布于:2002-03-25 09:07
楼上的兄弟有一处错误存在,WDM中并不是不能直接操作硬件,你完全可以在你的程序中直接用in/out指令直接操作端口,只不过是Microsoft为了平台兼容性而提供了一个HAL来封装所有的对硬件的操作,它其实是由一组宏组成的,如WRITE_CHAR,WRITE_UCHAR等。至于实时性能,微软的可视化操作系统以其方便性和易用性而牺牲了它的实时性,不论是VXD或是WDM 都无法实现真正的实时性。
|
|
|