Windows驱动程序
文章平均质量分 57
Hooooxz
这个作者很懒,什么都没留下…
展开
-
NDIS小端口驱动实现IOCTL分发
关键思路:为驱动创建一个设备对象 usbnwifi 例程中,MPInitialize函数通过NICRegisterDevice函数,注册了NICDispatch函数入口(该函数实现IRP的分发处理),从而为小端口驱动注册了一个IOCTL接口。这一过程根本上是调用了NDIS的NdisRegisterDeviceEx函数,传入了包含分发函数入口的_NDIS_DEVICE_OBJECT_...原创 2018-04-24 10:05:29 · 1008 阅读 · 0 评论 -
利用同步事件实现驱动主动通知应用
一、同步事件对数据结构 KEVENT 进行初始化、等待和设置,实现多个线程之间的同步。例如,希望主线程 A 在等待线程 B 完成某事后才能做某事,可在主线程 A 中配置KEVENT事件等待,在线程B中完成操作后,对正在等待的KEVENT事件进行设置即可。实例如下:// 定义一个事件KEVENT event;// 事件初始化KeInitializeEvent(&even...原创 2018-04-24 10:08:51 · 1458 阅读 · 0 评论 -
NDIS定时器工作机制
一、初始化 NDIS 定时器任何NDIS驱动程序都可以有多个定时器,可以是一次性或周期性的。NDIS_TIMER_CHARACTERISTICS结构定义了定时器的若干属性,其中一项是NetTimerCallback函数入口。当定时器到期时,NDIS调用NetTimerCallback函数执行定时任务。初始化定时器:调用NdisAllocateTimerObject函数,传入自己定义的ND...原创 2018-04-24 10:10:57 · 755 阅读 · 0 评论