驱动程序模块框架 Driver Module Framework

MIT
C/C++ 查看源码»
Windows
微软
2018-09-03
局长

为了方便开发人员为 Windows 编写驱动程序,微软发布了一个开源框架驱动程序模块框架(DMF)。这个新框架允许开发者编写简单和结构化的 Windows 驱动程序框架(WDF)、驱动程序并在驱动程序之间共享代码。

在为 Surface 设备驱动程序时,Microsoft Devices 团队开发了此框架供内部使用。微软现在将其作为开源发布,以帮助其他 OEM 以最高的效率和可维护性,开发和维护高质量的驱动程序。

微软解释了传统 WDF 与这款新的基于 DMF 的 WDF 驱动程序之间的一些主要差异。

这些差异在于:设备上下文(以绿色显示)独立存在于每个模块和客户端驱动程序特定的代码中。每个较小的设备上下文仅包含该模块所需的元素。没有模块可以访问另一个模块的设备上下文;WDF 回调(以红色显示)现在在每个模块和客户端特定代码中独立存在。 WDF 调用客户端驱动程序。DMF 拦截调用并将其调度到实例化模块树中的每个模块;每个模块按其认为合适的方式处理每个回调。最后,DMF 将回调调度到客户端驱动程序的回调。

最后,请注意箭头。箭头专门显示模块和客户端特定代码之间的流程。在此示例中,特定于客户端的代码只能与三个模块通信:ACPI,Button和 Stream。它无法与 GPIO,FIFO,列表或线程通信。 ACPI 无法与 FIFO 等进行通信。即使不查看源代码,我们也很清楚数据如何在此驱动程序中流动。

的码云指数为
超过 的项目
加载中

评论(0)

暂无评论

微软开源驱动程序模块框架,编写 Windows 驱动程序更方便

为了方便开发人员为 Windows 编写驱动程序,微软昨天发布了一个开源框架驱动程序模块框架(DMF)。这个新框架将允许开发人员编写简单和结构化的 Windows 驱动程序框架(WDF)、驱动程序并在驱动程...

2018/08/17 08:02

没有更多内容

加载失败,请刷新页面

没有更多内容

暂无问答

8 Android平台开发-WIFI 驱动移植 -- 详细

一、WIFI的基本架构(代码路径) 1、WIFI Settings应用程序: packages/apps/Settings/src/com/android/settings/wifi/ 2、JAVA部分(framework): frameworks/base/services/java/com/andr...

2013/06/03 15:51
401
0
Android Interprocess Communication(二)

学习Android Binder的入门文章,浅显易懂,您值得阅读。 -----by Thorsten Schreiber

2014/10/08 20:27
90
0
[日更-2019.4.4] cm-14.1 Android系统定制(一):添加"以太网"上网功能

声明 本文使用的是代码是Nexus5的cm-14.1(要下载cm-14.1代码可参考此文:[日更-2019.3.31]如何下载Nexus5的LineageOS14.1(cm-14.1)系统源码并编译、刷机),实现通过USB连接以太网; 代码实现...

04/02 17:34
32
0
Deep Learning Models on Kubernetes with GPUs

Deploying Deep Learning Models on Kubernetes with GPUs April 19, 2018 by ML Blog Team This post is authored by Mathew Salvaris and Fidan Boylu Uz, Senior Data Scientists at Micr...

2018/04/27 14:13
111
0
Cloudify源码解读

以下内容由Barak Merimovich 提供,本人仅译与学习。 Cloudify由以下几个工程组成: CLI —— Cloudify Shell,基于Karaf CLI 框架开发。 USM —— 统一服务管理。在XAP应用服务器内部运行C...

2013/05/02 10:24
524
0
module_init和module_exit

转自:http://blog.csdn.net/hudashi/article/details/7080071 本文参照:http://blog.163.com/xinbuqianjin@126/blog/static/167563447201010221231507/ http://www.360doc.com/content/11...

2012/03/12 23:48
619
0
java 调用摄像头

java 调用摄像头。 这个问题,是一个很坑的问题,为什么这么说那。由于公司的朋友测试了 JMF 这个坑的东西。兼容性真的很渣。 后来发现了2个不错的。项目,现在公司,也在用着。

2016/04/09 18:09
433
2
Android wifi打开流程(Android O)

根据自己的理解整理了Android O的wifi启动流程,为便于理解,绘制了Android O wifi架构图。有理解不到之处和错误之处,请各位指出,一起学习。 一. Android O wifi 架构: 由于Android O的T...

01/11 10:24
111
0
编译内核模块出现error: negative width in bit-field 错误

今天在写一个简单的内核测试模块的时候出现了一个挺奇怪的问题,网上查了一下也没人解决,自己试了好久终于解决了,所以分享出来供大家参考,先贴出源码: /************************************...

2013/10/27 12:32
124
0
Linux下面一个简单的虚拟platform驱动

在Linux之中,约定如果设备不属于任何的总线,则可以把它注册为虚拟的platform设备。 下面就简单来学习一下一个简单的platform设备是怎么创建出来的。 一般注册platform驱动的步骤是: 1,p...

2013/03/08 16:30
173
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部