驱动开发经典书,看了有很大收获 第一部分 开始WDF之旅 第一章 WDF简介 (本章无实质内容,故省略。若有兴趣请参见原文。) 第二章 Windows Driver Fundamentals 概述 这一章是针对从未有过Windows驱动开发经验的开发人员。本章提供了Windows操作系统内核的基本的背景知识,以及驱动如何在此环境中工作。本章也可以作为对编写核心态程序的介绍。 如果你是Windows驱动编程的新手,请阅读这一章里的概念和技术,这将是理解本书中所讨论的话题的基础。如果你有驱动开发的经验,请先查看本书最后的“基础词汇”。若你对这些术语和概念都很熟悉,请直接跳过这一章。 驱动是什么? 从设计上说,Windowss内核并不直接与设备打交道。检测设备,在设备与Windows内核间通信,以及向客户端-诸如应用程序-开放设备功能,都要依赖设备驱动。Windows提供了虚拟设备以支持接口,称为设备模型。驱动开发人员的任务就是实现接口以支持设备的需求。 更具体的说,驱动通常的目的是处理应用程序和设备间的通信。驱动和服务在很多方面相似。例如,驱动: 1. 在后台运行,与应用程序进程分离,且可以被多用户访问。 2. 长期生存。驱动有和设备一样的生存期。Windows发现设备时驱动就开始运行,设备被移除时驱动被关掉。 3. 响应外界生成的I/O请求。这些请求通常由应用程序,Windows或其他驱动生成。 4. 没有用户界面。用户与驱动打交道,通常是直接通过生成这个I/O请求的应用程序。 5. 运行在和生成I/O请求的应用程序不同的地址空间。 驱动在一些重要方面和服务不同。它们: 1. 通过专门的程序接口-称为DDI-与系统内核服务以及设备通信。 2. 基于WindowsI/O模型,这与服务和应用程序使用的模型完全不同。 3. 可以直接与核心态的组件通信。核心态的驱动完全运行在核心态。而UMDF驱动想要与设备交换数据的话,必需通过在它下层的核心态驱动。 本章概念性地描述了驱动怎样在Windows操作系统中存在,以及怎样管理客户端与设备之间的请求流程。虽然本书是关于WDF的,但是本章主要关注于老的WDM,它是基于Windows内核直接开放的DDI的。WDM非常灵活,但是软件开发人员却认为用WDM开发驱动是一项具有挑战性的工作。不管怎样,对WDM有一个基本的了解是很重要的: 1. 从设计上,WDF取代WDM作为Windows主要的驱动模型,是通过提供在WDM之上的一个虚拟层;WDM仍在后台工作。要了解WDF,你必需了解WDM的一些基本概念。 2. 从概念的层次上来说,WDF和WDM有着相似的结构,以及很多相同的处理I/O请求的方式。本章大多数的讨论都适用于WDM和WDF驱动,虽然实现的细节上有所不同。 本章关注于核心态驱动以及编程技术,因为所有的驱动开发人员应该对核心态的概念有基本的了解。关注用户态驱动的开发人员仍然会从了解核心态的基本概念中获益。例如,UMDF驱动的结构和WDM或WDF驱动相似,WMDF驱动处理I/O请求的很多方式也和核心态驱动相同。
2023-01-31 07:57:52 8.34MB WDF 驱动 driver
1
我将带领大家学习WDM驱动开发,包括重要的理论与实践。 我们逐步深入,在系列一和二的基础上慢慢推进,开始学习WDF驱动模型,包括面向对象和事件机制、重要的WDF对象,具体章节包括: 1)WDF编程框架:面向对象和事件机制 2)WDF重要对象:驱动对象、设备对象、IO队列、IO请求、等 3)事件回调函数:从派遣函数到事件回调函数的原理流程解析 4)WDF过滤驱动:掌握WDF对IRP的处理,以及过滤驱动的应用 5)WDF驱动安装:掌握驱动安装原理和INF文件的重要概念   Windows内核开发寄语: 1、Windows内核非常复杂,相关图书和课程都很少,让很多初学者望而生畏;没关系,我带领大家别有兴致地来领略Windows内核的神秘,解开面纱,层层深入。 2、本书以Windows10x64位基准,所有程序都编译、运行在Vmware的Win10x64位机器上。vs2019+wdk 3、内核学习并不可怕,授人以鱼不如授人以渔,艺多不压身,学习能提升人的综合能力,尤其是核心技术。
1
驱动开发经典书,看了有很大收获 第一部分 开始WDF之旅 第一章 WDF简介 (本章无实质内容,故省略。若有兴趣请参见原文。) 第二章 Windows Driver Fundamentals 概述 这一章是针对从未有过Windows驱动开发经验的开发人员。本章提供了Windows操作系统内核的基本的背景知识,以及驱动如何在此环境中工作。本章也可以作为对编写核心态程序的介绍。 如果你是Windows驱动编程的新手,请阅读这一章里的概念和技术,这将是理解本书中所讨论的话题的基础。如果你有驱动开发的经验,请先查看本书最后的“基础词汇”。若你对这些术语和概念都很熟悉,请直接跳过这一章。 驱动是什么? 从设计上说,Windowss内核并不直接与设备打交道。检测设备,在设备与Windows内核间通信,以及向客户端-诸如应用程序-开放设备功能,都要依赖设备驱动。Windows提供了虚拟设备以支持接口,称为设备模型。驱动开发人员的任务就是实现接口以支持设备的需求。 更具体的说,驱动通常的目的是处理应用程序和设备间的通信。驱动和服务在很多方面相似。例如,驱动: 1. 在后台运行,与应用程序进程分离,且可以被多用户访问。 2. 长期生存。驱动有和设备一样的生存期。Windows发现设备时驱动就开始运行,设备被移除时驱动被关掉。 3. 响应外界生成的I/O请求。这些请求通常由应用程序,Windows或其他驱动生成。 4. 没有用户界面。用户与驱动打交道,通常是直接通过生成这个I/O请求的应用程序。 5. 运行在和生成I/O请求的应用程序不同的地址空间。 驱动在一些重要方面和服务不同。它们: 1. 通过专门的程序接口-称为DDI-与系统内核服务以及设备通信。 2. 基于WindowsI/O模型,这与服务和应用程序使用的模型完全不同。 3. 可以直接与核心态的组件通信。核心态的驱动完全运行在核心态。而UMDF驱动想要与设备交换数据的话,必需通过在它下层的核心态驱动。 本章概念性地描述了驱动怎样在Windows操作系统中存在,以及怎样管理客户端与设备之间的请求流程。虽然本书是关于WDF的,但是本章主要关注于老的WDM,它是基于Windows内核直接开放的DDI的。WDM非常灵活,但是软件开发人员却认为用WDM开发驱动是一项具有挑战性的工作。不管怎样,对WDM有一个基本的了解是很重要的: 1. 从设计上,WDF取代WDM作为Windows主要的驱动模型,是通过提供在WDM之上的一个虚拟层;WDM仍在后台工作。要了解WDF,你必需了解WDM的一些基本概念。 2. 从概念的层次上来说,WDF和WDM有着相似的结构,以及很多相同的处理I/O请求的方式。本章大多数的讨论都适用于WDM和WDF驱动,虽然实现的细节上有所不同。 本章关注于核心态驱动以及编程技术,因为所有的驱动开发人员应该对核心态的概念有基本的了解。关注用户态驱动的开发人员仍然会从了解核心态的基本概念中获益。例如,UMDF驱动的结构和WDM或WDF驱动相似,WMDF驱动处理I/O请求的很多方式也和核心态驱动相同。
2021-11-12 18:39:25 8.34MB WDF驱动开发
1
WDF驱动开发手册
2021-09-23 17:44:41 1MB WDF驱动开发
1
武安河的《Windows设备驱动程序WDF开发》,是一本wdf驱动开发入门好书,里面包含书本所有源码。
2021-05-10 20:32:41 52.69MB WDF驱动开发
1
本文件夹旨在帮助广大同学们学习windows wdf驱动开发。重点是usb驱动开发。学习完这三个文件后,你将拥有为usb设备开发windows驱动程序的能力。如需学习stm32 usb设备的开发,敬请关注本人csdn账号。本人有stm32 usb设备开发的相关文档:“STM32F10xxx全速USB设备开发套件用户手册+usb2.0协议”
2020-01-03 11:33:50 23.42MB WDF驱动开发
1