The Windows 7 Windows Driver Kit
The Windows 7 Windows Driver Kit
The Windows 7 Windows Driver Kit
Keith Boyd
WDK Documentation Manager
Microsoft Corporation
The Windows 7
Windows Driver Kit
Updates
Jennifer Stepler
Program Manager, WDK
Microsoft Corporation
Agenda
Installation
Introducing Kit Servicing
Build Environment
Tools and Samples
Quality Improvements
Documentation
Q&A
WDK Installation Using Kitsetup
Supports servicing
Single UI for all kit components
Single EULA for all kit components
Documentation installation is part of
complete kit installation
KitSetup
Introducing WDK Servicing
For Windows 7
Individual “Hot Fixes” available on
Microsoft Connect, as needed
Scheduled Service Pack releases – feedback?
Beyond Windows 7 (feedback?)
Combine Windows Software Development Kit
with WDK
Kit “in the clouds” –
download/install/servicing
New Device Technologies
Biometrics
XPS Print
Hypervisor
Sensor/PC3
Windows Vista Display Driver
Model (WDDM) updates
Wave Real-Time (WaveRT)
Wireless Wide Area Network (WWAN) updates
Windows Driver Foundation (WDF) 1.9
And more…
Build Environment Changes
No Windows 2000 build environment
New build macros
Use Binplace to target obj/bin directories
Microsoft Automatic Code Review (OACR)
Runs by default in the WDK BE
Runs PREfast for Drivers (PFD)
in the background automatically
Provides a Taskbar monitor
Build Environment Macros
ISSUE: During build, objects and binaries go under source.
WpdBasicHardwareDriver, WPD
WpdServiceSampleDriver,
WpdMultiTransportDriver (UMDF)
Consumer IR Receiver Sample Driver (smscir) IR
(KMDF)
The Windows 7
Windows Driver Kit Quality
Craig Ziegler
Test Lead, WDK
Microsoft Corporation
WDK Content Quality Efforts
QA efforts to improve the overall quality
of the samples and tools in the WDK
Add header annotations to many WDK headers
Run PREfast for Drivers (PFD) against sample sources
Run Static Driver Verifier (SDV) against sample sources
Check for /W4 warnings
Compile with MSC_WARNING_LEVEL=/W4 /WX in sources
Run Application Verifier against UMDF samples and
driver tools
Run Driver Verifier against samples
Conduct code reviews of samples
Remove obsolete and poor samples
Static Analysis Tools
Run Against WDK Samples
PREfast for Drivers
112 bug fixes
3110 PFD defects removed from samples
Header annotations added to
reduce false positives
Static Driver Verifier
14 bug fixes
Role type annotations added to samples
W4 Compiler Warnings
Found by setting MSC_WARNING_LEVEL=/W4 /WX
in sources files
159 bug fixes
3934 warnings removed from samples
Typical errors include uninitialized variables,
unreferenced parameters
MS08-014 – Security vulnerability could
have been prevented by /W4 compilation
Many Windows 7 samples will default
to /W4 in the sample sources file
Build Environment
Validation Testing
Internal testing tool developed to
validate the WDK build environment
Extracts API/Struct/Union/Enum
information from headers
Validates that headers are
versioned properly
Finds discrepancies between headers
in WDK and documentation on MSDN
The Windows 7
Windows Driver Kit
Documentation
Keith Boyd
Documentation Manager, WDK
Microsoft Corporation
WDK Documentation
Windows 7 docs coming at Beta WDK documentation monthly
Over two thousand new topics update on MSDN and WHDC
Available online:
WHDC website: http://www.microsoft.com/wdk
Read the WDK Doc blog at
http://blogs.msdn.com/wdkdocs/default.aspx
Download monthly WDK doc refresh from
http://www.microsoft.com/whdc/DevTools/WDK/WDKdocs.mspx
Driver Development Newsgroup: http
://msdn.microsoft.com/newsgroups/default.aspx?dg=microsoft.public.d
Questions?
Please Complete A Session Evaluation Form
Your input is important!
BlackArmor
Hard Drives provided by:
http://www.winhec2008.com
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market
conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.
MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.