windows驱动开发 DDK/WDK/WDM/WDF区别

  • WDM(Windows Driver Model)和WDF(Windows Driver Foudation)的区别

  1. 2000/XP/2003下,Windows采用WDM驱动模型,开发2000/XP/2003的驱动开发包为:DDK。
  2. Vista及以后版本,Windows采用WDF驱动模型,对应的开发包:WDK。
  3. WDK可以看做是DDK的升级版本,现在一般的WDK是包含以前DDK相关的功能,现在XP下也可以用WDK开发驱动,WDK能编译出2000-2008的各种驱动。
  • DDK(Driver Developer Kit)和WDK(Windows Driver Kit)的区别
  1. wdf驱动框架对WDM进行了一次封装。例如对于Pnp管理和电源管理,基本上都由WDF框架做了,而WDF的功能驱动几乎不要对它进行特殊的处理。
  2. WDF 驱动采用队列进行IO处理,而WDM中将所有的IO操作都用默认的队列进行处理,如果要进行IRP同步,必须使用StartIO。
  3. WDF是面向对象的,而WDM是面向过程的,WDF提供对象的封装,如将IRP封装成WDFREQUEST,对象提供方法和Event。

猜你喜欢

转载自blog.csdn.net/j2forever/article/details/82114164