阅读:1278回复:5
至今不懂设备扩展为何物,深感羞愧,请赐教!
我对设备扩展这个东东至今是一头雾水。
我认为它是用户自定义的一个结构,这个结构中包括的东西完全由用户自己定义。这种理解对吗? 为什么要建立设备扩展,它是做什么用的,就没有一个官方声明的设备扩展结构吗?DDK也看过了,WALTER的书也看过了,但还是...哎,只有请教大家了! :D |
|
沙发#
发布于:2003-03-31 09:26
为了你写驱动的方便,定义了一个额外的空间给驱动使用,方便你放入一些全局变量比如registry path,或者以后一直在用的pdo,其目的主要也在这里,所以不需要有什么固定结构。
|
|
|
板凳#
发布于:2003-03-31 09:28
你对某个设备可能有你需要纪录的与其关联的东西,而在系统调用你的dispatch routine时,你可能需要知道这个东西,你就需要设备扩展了。
比如你要记录某个网卡发包的个数,而系统的设备数据结构中没有这个东西,你就搞个扩展,里面有一个字段,每次系统调用你的函数发包的时候就会把设备扩展给你,你向里面的字段加一,okay了。 |
|
|
地板#
发布于:2003-03-31 09:59
1。我看了本站关于设备扩展的全部帖子,其中有好多人问过全局变量是否需要放入设备扩展中,但回答不一。哪为给一个准确的回答,再讲讲为什么?
2。还有在定义设备扩展结构的时候,只要我需要什么就可以定义什么吗?在DDK中就没有相关定义吗?(我是没有找到) |
|
地下室#
发布于:2003-03-31 14:43
1。我看了本站关于设备扩展的全部帖子,其中有好多人问过全局变量是否需要放入设备扩展中,但回答不一。哪为给一个准确的回答,再讲讲为什么? 1、如果你的全局变量是个readonly的,“可以”不放到extention。 因为全局的,例程都可以修改他的,你不能保证他正确。放到扩展中去,就是一个device object有一个了。 2、扩展的大小由你自己来定,里面有什么,也由你自己定。 |
|
5楼#
发布于:2003-03-31 15:10
听arthurtu一讲,顿时开朗不少。
本应该给分的,可是我登录了好几次,一进入这个帖子就显示没登录,只有下次来的时候,答谢你了 |
|