读书频道 > 网站 > 网页设计 > 网络分析技术揭秘:原理、实践与WinPcap深入解析
3.1.3 设备扩展(_DEVICE_EXTENSION)
12-08-11    叶孤城
收藏    我要投稿   
本书结合著名的开源软件库WinPcap来说明网络分析技术的实现原理及使用方法。其中包括WinPcap内核驱动,编译与使用,数据包的捕获、发送、内核过滤与接收,以及网络流量的统计与网络状态的分析等重要内容,而且作...立即去当当网订购
设备对象记录的是设备的“通用”信息,而另外一些“特殊”的信息记录在设备扩展中,每个设备都会指定一个设备扩展。设备扩展是由程序员在驱动程序中自行定义的结构体,结构体的大小在调用IoCreateDevice函数时设置。设备扩展由I/O管理器创建,并保存在非分页内存中。
在驱动程序中应该尽量避免使用全局变量,因为全局变量会导致不同步的问题,解决办法之一就是可将全局变量存储在设备扩展中,将其作为一个局部变量来使用。
比如在WinPcap驱动程序中,设备扩展用于存储每个被绑定网络适配器的相关信息,此结构体的具体定义如下:
typedef struct _DEVICE_EXTENSION {
    //
    NDIS_STRING AdapterName;
    //WinPcap
       PWSTR  ExportString;
} DEVICE_EXTENSION, *PDEVICE_EXTENSION;
点击复制链接 与好友分享!回本站首页
分享到: 更多
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:1.3 功能
下一篇:1.5 小结
相关文章
图文推荐
JavaScript网页动画设
1.9 响应式
1.8 登陆页式
1.7 主题式
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做最好的IT技术学习网站