windows WDF驱动程序设计

 

WDF model
 
 
这就是WDF模型,这个驱动模型,在windows WDM驱动设计中,已经讲到了WDM模型和WDF模型的区别,从这个模型就可以看出:
 
对于应用程序来说,下面采用WDM驱动还是WDF驱动模型,是透明的,同样,对于kernel Subsystems来说,对于WDM和WDF驱动,都是一样的。
 
在看下Framework,对于WDF驱动框架来说,框架包括Object Model,I/O Model ,Pnp/Power Model,Object Model的作用是创建WDF对象,I/O Model 就是输入输出,对于WDM和WDF来说,处理IO是不同的,对于wdm,是由IO管理器负责派遣IRP,但是对于WDF来说,是由IRP和IO队列分发的。对于Pnp电源管理来说,框架模型基本上为我们做完了;
 
接着看Framework Objects,它是由Object Model创建的;而Callbacks就是我们做驱动程序必须编写的回调函数:
 
比如读函数,写函数,及特殊的pnp,电源管理等函数。
 
 
WDF  对象
•About Methods, Properties, and Events
•1) Methods Perform actions on the object.
•2) Properties:
3) Events: Are messages that indicate that something has occurred for which a driver might be required to take action.
 
 
3.WDM和WDF驱动
 
WDFDRIVER
Driver object
WDFDEVICE
Device object
WDFQUEUE
Cancel-safe queue/Dispatching /Serialization/Auto-locking/Synch with PnP
WDFREQUEST
IRP
WDFINTERRUPT
Interrupt
WDFDPC
DPC
WDFWORKITEM
Work item
WDFDMAENABLER
DMA adapter object
WDFIOTARGET
Sending I/O to another driver - IoCallDriver
WDFWAITLOCK
Event dispatcher object – passive level lock
WDFSPINLOCK
Spinlock
WDFMEMORY
Kernel pool - refcounted
WDFKEY
Registry access
 
 
4)Why to Port a Driver
•Here are a few advantages of porting a driver to KMDF.
•1)KMDF Drivers Are Simpler and Easier to Maintain.
•2)KMDF Manages Most Interactions with the Operating System.
•3)KMDF Supports Versioning and Is Tested for Each Release of the Operating System.
 
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
Windows设备驱动程序WDFWindows Driver Foundation)开发是针对Windows操作系统的设备驱动程序开发的一种方法。WDF是由微软推出的一套驱动程序框架,可以简化驱动程序的编写和维护过程,提高驱动程序的稳定性和性能。 WDF开发框架包括两个主要的组件:Kernel-Mode Driver Framework(KMDF)和User-Mode Driver Framework(UMDF)。KMDF用于编写运行在内核模式下的设备驱动程序,而UMDF则用于编写运行在用户模式下的驱动程序。 KMDF提供了一套面向对象的编程接口,使驱动程序开发者可以使用C++语言进行开发。它简化了驱动程序的资源管理、设备访问和事件处理等操作,并提供了许多内置的功能和工具,如管理I/O队列、中断处理和电源管理等。通过使用KMDF,开发者可以减少代码量、提高驱动程序的稳定性,并且可以更加方便地适应不同版本的操作系统。 UMDF则提供了一种轻量级的驱动程序开发模式,使驱动程序可以在用户模式下运行,而不需要进入内核模式。UMDF主要针对一些简单的设备和驱动程序,如打印机、摄像头和USB外设等。相比于KMDF,UMDF开发的驱动程序更加易于编写和调试,但也有一定的性能损耗。 通过掌握Windows设备驱动程序WDF开发,开发者可以更加便捷地为Windows系统开发设备驱动程序,提供了更好的稳定性和兼容性。同时,WDF开发框架也遵循微软的最佳编程实践,使得驱动程序开发者能够以更高的效率开发出更加可靠的驱动程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值