`

开源Windows驱动程序框架

    博客分类:
  • C++
 
阅读更多
转自
http://code.csdn.net/news/2824273

源码地址
https://github.com/Microsoft/Windows-driver-frameworks


微软宣布在 MIT 许可证下开源 Windows 驱动程序框架,源代码托管在 GitHub上。微软最新的开源举动可能有助于开源项目 Wine 的开发。Windows Driver Frameworks (WDF)是一组库文件,帮助开发者为设备开发高质量的驱动程序。微软表示他们的目标是让 WDF 的内部工作原理对开发者尽可能的透明。



WDF 团队的代表 J M Rossy 在博客里是这样讲述开源 WDF 的主要目标。

昨天我们在 WinHEC 很激动的对外宣布将 Windows Driver Frameworks (WDF) 的源代码最大化的开放在 GitHub 上。相关的报告文件可以在这里看到:github.com/Microsoft/Windows-Driver-Frameworks

WDF 开源的主要目标

开源 WDF 的最主要的目标就是为了更加直接的开发高质量的驱动器。该框架提取了底层操作系统的核心部分,当需要的时候还不牺牲掉灵活性。同时它也集成了世界级开发环境,包括 Visual Studio 和 Windows Driver Kit (WDK)。不管怎么说,这对于Windows 10 的驱动开发者都是一次极好的开发经验。

当然,我们理解目前还没有可替代的OS源码,这也就是为什么我们要开放 WDF 的源代码,以此帮助所有人挖掘和调试他们的驱动器。这帮助开发者更加透明的理解框架和驱动程序之间是如何互动的。

适用范围

这一次公开代码之后,我们会发布更多的源代码,尤其是在 KMDF 和 UMDF v2 之后,你会发现大量的源代码随之也会公布出来。用一个统一的模式来驱动框架的发展是 WDF 团队最主要的一个优势。

正如你对 WDF 所期待的那样,你可能会遇到一些没有正式文件的行为和API,我们强烈建议不要依赖于那样的行为,因为在未来发型的版本里可能会做一些改变。如果你在源码里看到有被人添加的或是可能存在的BUG,我们希望你们能在GitHub里面提交报告。虽然现在不能接受来自贡献者的修改,但是在未来可能会做出这方面的改进。

相关案例

我们同样很高兴的宣布,像WDF那样的驱动程序示例项目收集现在已经放在GitHub上了,在 MSDN Code Gallery 上的 Windows 8.1 全套案例将会一直保持更新。我们相信开放 WDF 源码对于任何人来说都是很有意义的一步,说明 Windows 硬件实现这一块又前进了一步。
分享到:
评论

相关推荐

    Windows驱动开发框架WDF源码,来自微软Github

    Windows驱动开发框架(Windows Driver Framework,简称WDF)是微软推出的一种现代化的驱动程序开发模型,旨在简化驱动程序的编写,提高驱动程序的稳定性和安全性。这个框架建立在Windows Driver Model(WDM)的基础...

    Windows驱动开发技术详解源码

    "chapter22"和"chapter23"可能涵盖了更高级的主题,如高级设备驱动接口(如WDF, WDM等框架)的使用,以及现代驱动程序开发的最佳实践和设计模式。 通过这个源码包,开发者不仅可以了解到Windows驱动开发的基本概念...

    详细解析Windows usb驱动与Linux usb驱动的相似和差异

    - **WDF**:是微软推出的一种新的驱动程序框架,旨在简化驱动程序的开发过程。 - **KMDF**:Kernel-mode Driver Framework,是在WDF基础上专门为内核模式驱动程序设计的框架。 - KMDF提供了一系列高级API,帮助...

    windows7的PCIE驱动程序安装包

    为了在Windows 7系统中使用riffa框架,需要安装与之相配套的PCIE驱动程序,以确保PC与FPGA开发板之间的通信顺畅无阻。 安装PCIE驱动程序包时,如果用户的操作系统不是Windows 7或Windows 8,需要对安装程序的兼容性...

    位图打印机开源驱动

    位图打印机开源驱动是一种软件组件,它允许开发者创建或修改打印机驱动程序,特别是针对那些能够将图像转换为位图格式的设备。这个开源项目对于理解打印机驱动的工作原理、进行驱动开发,以及创建自定义的虚拟打印机...

    Windows驱动开发技术详解

    - KMDF(Kernel-Mode Driver Framework)和UMDF(User-Mode Driver Framework):是Microsoft提供的框架,简化了驱动程序的开发,提高了稳定性和安全性。 2. **开发工具**: - DDK(Driver Development Kit):是...

    Windows设备驱动程序设计课件4

    最后,“www.pudn.com.txt”可能是一个链接或引用资源,指向一个在线平台,如PUDN(编程开发网络),该网站上通常有许多开源的驱动程序代码、技术文章和论坛讨论,对于学习和解决问题非常有帮助。读者可以通过这个...

    C++设计模式--基于Qt4开源跨平台开发框架

    而Qt4作为一个强大的开源库,提供了丰富的功能,使得开发者能够在多个操作系统上构建用户界面和应用程序。 首先,我们要理解设计模式的基本类型,包括创建型、结构型和行为型模式。创建型模式如单例模式(Singleton...

    AVRISP MKII for WIN7-x86(32位) 驱动程序.zip

    WUDFUpdate_01011.dll和WdfCoInstaller01011.dll是Windows用户模式驱动程序框架相关的动态链接库文件,它们用于支持新的驱动程序模型,以提高设备驱动程序的安装、管理和卸载的便捷性。winusbcoinstaller2.dll文件...

    微软驱动程序框架WindowsDriverFrameworks.zip

    Windows Driver Frameworks (WDF) 是一组库文件,帮助开发者为设备开发高质量的驱动程序。 标签:Windows

    libwdi:USB设备的Windows驱动程序安装程序库

    **libwdi:USB设备的Windows驱动程序安装程序库** libwdi,全称为Windows Driver Installer,是一个开源的C语言库,专为USB设备在Windows操作系统上安装驱动程序而设计。它提供了一套方便的API,帮助开发者简化驱动...

    微软WDF驱动模型开源代码

    总之,微软的WDF驱动模型开源代码是一个宝贵的资源,它使开发者能够更深入地理解和利用这个框架,从而提高驱动程序的质量和效率。对于那些想要从事Windows驱动开发的人来说,研究这些源代码是提升技能的重要途径。

    安信Windows驱动开发教程:win 11 创建新应用的方法.docx

    ### 安信Windows驱动开发教程:win 11 创建新应用的方法 #### 一、引言 随着Windows 11的发布,对于开发者而言,掌握如何在这个最新的操作系统上创建应用程序变得尤为重要。本教程旨在帮助开发者了解如何利用Visual...

    C++模式设计-基于QT4开源跨平台开发框架与源代码

    3. QT4框架:QT4是一个用于开发跨平台应用程序的库,支持Windows、Linux、macOS等多种操作系统。它包含丰富的GUI组件、网络、数据库和多媒体等功能。QT4的信号与槽机制使得对象间的通信更加便捷,是实现设计模式中的...

    构建linux下的设备驱动程序

    假设我们要为一个简单的字符设备编写驱动程序,以下是一个基本的框架示例: ```c #include #include #include #include #define DEVICE_NAME "mydevice" #define MAJOR_NUMBER 255 static int mydevice_open...

    驱动框架(供初学者)STD_DRV

    驱动程序是操作系统与硬件设备之间的桥梁,它允许操作系统和应用程序控制和管理硬件设备。在Windows系统中,驱动通常分为内核模式驱动和用户模式驱动。内核模式驱动运行在操作系统的核心层,拥有更高的权限,可以...

    PCIE驱动源代码

    WDK(Windows Driver Kit)是微软提供的用于开发、调试和测试Windows驱动程序的工具集。通过WDK,开发者可以构建、配置、编译、链接以及测试驱动程序,确保其在Windows系统上的正常运行。 描述中提到的“一个非常...

    C# 开源组态

    【C# 开源组态】是一种基于C#编程语言的工控类软件,它提供了用于构建和配置自动化系统的工具和框架。开源意味着源代码对公众开放,允许开发者查看、修改和分发代码,以适应各种特定需求。这种软件通常由全球社区的...

    asp.net开源程序

    ASP.NET开源程序是微软开发的一款用于构建Web应用程序的框架,它基于.NET Framework或.NET Core,提供了丰富的功能和组件,使得开发者能够快速构建动态网站、Web服务以及复杂的Web应用程序。VB.NET(Visual Basic ...

Global site tag (gtag.js) - Google Analytics