суббота, 9 апреля 2011 г.

Windows 7 device driver

дочитал например давеча subj (если верить shelfari - стал первым читателем, бгг).
Книжка про kmdf & umdf, причем для umdf даже примерчиков законченных не дается.
С одной стороны книжка весьма попсовая, ибо просто прочитав ее совершенно невозможно выучиться писать дрова с использованием kmdf например
С другой стороны - ни разу не для начального уровня подготовки. Например совершенно обязательно знание устройства ядра, irql, irp и все такое (хотя kmdf и делает старательно вид что этих вещей не существует). Кроме того совершенно нелишними будут при чтении знания об устройстве wdm драйверов и их переходы в разные состояния
В качестве бонуса прилагается весьма обстоятельный список ссылок по разным темам

Using WinUSB for User-Mode to USB Device Communication
Getting Started with Windows Drivers
Kernel-Mode Driver Architecture
Device and Driver Installation
Driver Developer Tools
Using Checked Builds of Windows
Download Windows Symbol Packages
Windows Driver Foundation (WDF)
About WDK and Developer Tools
Getting Started with Driver Development
Managing Hardware Priorities
User-Mode Driver Framework Design Guide
Kernel-Mode Driver Framework Design Guide
Installing UMDF Drivers
Building and Loading a Framework-Based Driver
Building Drivers
Build Utility Reference
Utilizing a Sources File Template
Roadmaps
Installing a Framework-Based Driver
Installation and Driver Signing-Papers
Framework Library Versions
Driver Signing Requirements for Windows
Windows Logo Program-Overview
Creating a Catalog file for a PnP Driver Package
Code-Signing Best Practices
Distributing Drivers on Windows Update
Kernel-Mode Code Signing Walkthrough
How Setup Selects Drivers-PnP Manager
Driver Installation Rules
Using Driver Install Frameworks (DIFx)
Writing a Device Installation Application
Troubleshooting Device and Driver Installation
Guidelines for Using SetAPI
Hardware and Driver Developer Blogs
Hardware and Driver Developer Community
UMDF Objects and Interfaces
Kernel-Mode Driver Framework Objects
Driver Verifier
Microsoft Application Verifier
How do I keep my driver from running out of kernel-mode stack?
Component Object Model
Inside COM
ATL (Active Template Library)
Installing Just the Checked Operating System and HAL
ChkIN-INF Syntax Checker
DevCon WDK Command-Line Tool
Device Path Exerciser
KrView-The Kernrate Viewer
Plug and Play Driver Test
PNPCPU
PoolMon
PwrTest
Windows Device Testing Framework
Verifier Command Line
Driver Verifier Manager
Debugging a Framework-Based Driver
Windows Error Reporting: Getting Started
Handing Driver Failures-UMDF drivers
Scanning the Driver
Adding the Reflector
Build Utility Limitations and Rules
C++ for Kernel Mode Drivers: Pros and Cons
Can I customize DoTraceMessage?
Creating Reliable and Secure Drivers
Debugging Tools for Windows-Overview
Defect Viewer
Device Manager Error Messages
DllMain Callback Function
DMA Verification
Waits and APCs
Handling DMA Operations in Framework-Based Drivers
Interface Definition Language (IDL) File
Library Processing in Static Driver Verifier
PREfast for Drivers
Results Pane in the Static Driver Verifier Report
Static Driver Verifier-WHDC Web Site
Static Driver Verifier-WDK Documentation
Static Driver Verifier Commands
Static Driver Verifier Limitations
Uninstalling Drivers and Devices
WPP Software Tracing
Preparing to Run Static Driver Verifier
Build (Build Utility)
Thorough Static Analysis of Device Drivers
Handling I/O Requests in Framework-Based Drivers
Object Names
ACCESS_MASK
Boot Options for Driver Testing and Debugging
Trace Message Prefix
Securing Device Objects
Creating Secure Device Installations
SDDL for Device Objects
Synchronization
How to: Specify Additional Code Information
Using a Pragma Warning Directive
Developing Drivers with WDF
Boot Configuration Data
Device Interface Classes
Using Device Interfaces
Controlling Device Access in Framework-Based Drivers
Implementing WMI
Specifying Priority Boosts When Completing I/O Requests
Writing a Bug Check Callback Routine
KeRegisterNmiCallback
HAL Library Routines
Using Device Installation Functions
Using GUIDs in Drivers
PnP and Power Management in Framework-Based Drivers
USB Power Management
Plug and Play-Architecture and Driver Support
Managing Kernel Objects
Device Management
Introduction to UMDF
Getting Started with Kernel-Mode Driver Framework
Service User Accounts
WDM to KMDF Porting Guide
Interpreting Bug Check Codes
I/O Completion/Cancellation Guidelines
Introduction to WMI
ExAllocatePoolWithTag
Locks, Deadlocks, and Synchronization
Operating Systems, Stallings
Locking Pageable Code or Data
Microsoft Windows Internals Fourth Edition
PAGED_CODE
PAGED_CODE_LOCKED
SECURITY_IMPERSONATE_LEVEL Enumeration
Specifying WDF Directives in INF Files
WINUSB_SETUP_PACKET
Event Tracing
Engineering Windows 7 Blog
Microsoft Hardware Newsletter
Microsoft Research: SLAM-Automatically Checks C-Based Programs
Obtain the WDK version 7.0.0
Using WinUSB for User-Mode to USB Device Communication
The Windows Blog
The Windows 7 Team Blog
Windows 7 WDK-New for Device and Driver Installation

2 комментария:

  1. Млять, походу идеально хэндбука по драйверам нету ( и как всегда метод "научного фтыка"

    ОтветитьУдалить
  2. какбе это вовсе не повод для депрессии. даже наоборот тащемта - меньше пионеров всяческих, готовых уронить цены до стоимости доширака например

    ОтветитьУдалить