为視窗书写 WDF 驱动程序 -- 超速版

点击此处查看研讨会概要(PDF).

視窗驅動程式基礎(簡稱WDF)是创建視窗驅動程式的最新标准,并且也是实现最新視窗驱动程序的首选方式。

此次快速、集中的研讨会专为需要理解如何使用WDF内核模式驅動程式架構(简称KMDF)设计、开发或测试視窗驱动程序的工程师而设计。研讨会特别注重 KMDF软件驱动程序、过滤驱动程序、通用串行总线 (USB) 设备驱动程序、以及可编程输入/输出型外围组件接口设备驱动程序。然而,一旦您理解了WDF的基本概念,为其他类型设备创建 KMDF驱动程序以及创建用户模式驅動程式架構(簡称UMDF)应当相对较简单。

在此次特别的快速研讨会中,我们将包括的有关KMDF的细节比任何其他 OSR研讨会都多。我们甚至添加了一个完 整的模块专门讨论扩展KMDF到某些网络 (NDIS) 以及声/像 (内核音频流)设备。

此次研讨会是为没有书写視窗驱动程序经验的开发者以及了解如何使用視窗驅動程式模型(簡稱WDM)书写驱动程序的人或已经具有WDF 经验的人设计的。

您的学习甚至在研讨会结束后仍旧继续:对于想要立即将所学知识投入实践的学生来讲,他们可以将一整套实验室练习带回家,包括样品驱动程式、作业、以及答案。USB 和 PCI 实验室作业使用很容易获得、价格便宜的 OSR USB FX2 和 Sealevel Systems 8018 数字输入/输出套装,您可以通过 OSR 在线 商店订购。

细节

为期: 4 天

形式: 讲座

费用: $2,450.00

适用折扣: 五(5)人或以上享有百分之十 (10%)折扣

当前时间表

为視窗书写 WDF 驱动程序 – 超速版

  • 南韩,汉城,2010年4月26日
  • 中国,上海,2010年5月10日
  • 印度,海得拉巴,2010年5月24日

目标听众

需要了解如何使用KMDF设计、开发或测试視窗驱动程序的工程师。已经知道如何使用WDM书写視窗驱动程序的工程师会吃惊地发现 KMDF会如何使得他们的生活变得更轻松。此次研讨会之后,从未开发过視窗驱动程序的工程师将肯定觉得纳闷为什么人人都说书写視窗驱动程序如此之难(因为,在OSR 向您解释了如何使用KMDF之后,您将发现它并不像人人 说的那么难!)

注: 无论地点在哪,研讨会将使用英文教授。

先决条件

参加此次研讨会的学生必须有牢固的通用系统操作概念知识 (用户模式对比kernel模式、虚拟記憶器概念、并发问题),设备 概念 (寄存器、中断),以及視窗操作系统结构的基本知识。如果有开发设备(任何操作系统)驱动程式的经验,那肯定会有帮助。

研讨会概要

  • 介绍
    欢迎致词、研讨会目标和目的、以及WDF 和KMDF简介。
  • 視窗结构概述
    简单介绍視窗操作系统构造,特别注重KMDF驱动程式书写员需要的细节。
  • WDF 物件模式
    WDF 物件特点和分类法。物件在KMDF 中是如何被实现和利用的。概述最为普通的WDF 物件。
  • 驱动程序初始化
    如何初始化一个 KMDF驱动程序及其有关设备。还有,处理典型的即插即用(PnP)以及动力管理,如设备到达、启动、关闭等。KMDF驱动程序如何得到通知以及要求其硬件资源。
  • 驱动程序安装
    如何为KMDF 驱动程序创建安装控制文件。讨论十个最常用INF 文件。描述KMDF 协作安装器,以及如何在INF文件中指定。
  • 组建及调试
    使用視窗驱动程序套装 (WDK)来组建KMDF驱动程序。 如何设置視窗调试器 (WinDbg),并简单概述WDF Kernel Debugger Extensions (WDFKD),包括从"in flight recorder”中收回WDF 记录。还讨论各种与WDF启动程式有关的调试工具 (驱动程序验证器、静态驱动程序验证器、以及驱动程式Prefast)。
  • 視窗设备树型
    描述視窗PnP 子系统如何发现和列举驱动程式。所有有关 Physical Device Objects (PDOs)、Function Device Objects (FDOs)、以及过滤设备的知识。过滤设备如何起作用。在視窗输入/输出子系统中,请求是如何得到处理、并从一个驱动程式传往另一个驱动程式的。
  • 中断水平& DPC
    在本模块,我们讨论中断请求级别(IRQLs)的重要概念,以及視窗特别使用各种IRQLs的情况。我们还讨论DPC以及在視窗中如何使用它们于中断服务完成例程(DPCforISR)。
  • 队列和请求
    在此部分,我们讨论WDFQUEUEs 和WDFREQUESTS。主体包括列队如何被具体化、队列派送类型、以及队列如何能够被用于排序请求。我们还讨论框架请求以及请求是如何得到处理和完成的。
  • I/O 目标
    讨论局部、远程和特别 I/O 目标。如何向系统内其他驱动程式同步和异步发送请求以供处理。还讨论完成例程。
  • 缓冲区算法和IOCTL 定义
    在该部分,我们讨论请求者数据缓冲区描述的不同方法。直接I/O、缓冲I/O 和 "无关 I/O"得到描述、比较和对照。还讨论如何定义用户IOCTL,以及先前描述的缓冲区算法如何用于 IOCTL。
  • 系列化
    在此模块中,我们与你讨论在驱动程式中同步访问共享数据的有关的问题。完整描述通常被误解的KMDF同步范围问题,以及通过自动系列参数扩展同步范围到其他回调例程。WDFSPINLOCKs 以及WDFWAITLOCKs 也得到讨论,以及它们各自的潜在执行以及如何被使用的问题。
  • USB 概念
    讨论 USB的基本概念,包括设备、配置、以及界面描述符。描述端点和管线。
  • 执行WDF USB 驱动程式
    在此部分,我们描述如何在KMDF 中执行USB 驱动程式。包括如何选择配置和界面,以及如何找回端点。如何通过端点0向设备发送供应商指令。使用Bulk 和中断端点。简单讨论WDF 连续读取机,以及支持選擇性暫停(USB 设备电源管理系统)。
  • 为可编程I/O设备执行驱动程式
    在此部分,我们将对接受和处理请求的讨论扩展到驱动程式如何为可编程I/O 类 PCI 和 PCI Express 设备处理请求。我们描述在KMDF驱动程式中如何为中断服务完成例程执行中断服务例程(ISR)和DPC (DPCforISR) 。
  • 清理、关闭和取消
    讨论处理列队中的和正在处理请求的策略,清洁和关闭处理中一般会发生什么处理过程。
  • 有益的课程
    几个框架课程的简述,如 WDFCOLLECTION、WDFWORKITEM 和WDFTIMER,可能帮助您获得更多诀窍。
  • 扩展驱动程式类型
    与其他视窗驱动程式结构同时使用KMDF模式的优点。为某些NDIS 或 KS (内核音频流)使用KMDF 驱动程式的实现技巧。
联络我们


More on Seminars

OSR Seminars: What to Expect?

Which OSR Seminar is Right For Me?

Testimonials

Private, On-site Seminars

Seminar FAQ

How to Register

Questions? Contact a Seminar Consultant



Seminar Updates

Subscribe by email to receive scheduling updates for OSR seminars