The WDK for Engineering Managers and Product Planners

  • Slides: 34
Download presentation
The WDK for Engineering Managers and Product Planners: An Introduction Lee Davis Lead Program

The WDK for Engineering Managers and Product Planners: An Introduction Lee Davis Lead Program Manager Windows Driver Kits Lee. Davis @ Microsoft. com Microsoft Corporation

Session Outline What is the Windows Driver Kit (WDK)? Features and Content Driver Test

Session Outline What is the Windows Driver Kit (WDK)? Features and Content Driver Test Manager Preparing for the WDK

What is the WDK?

What is the WDK?

WDK Goals WDK Vision: Windows device drivers always work WDK Mission: Provide a fully

WDK Goals WDK Vision: Windows device drivers always work WDK Mission: Provide a fully integrated Windows Driver Development System that ensures successful production of the highest quality drivers WDK Motivation Improve driver quality => improve Windows experience Reduce complexity Reduce product development costs Reduce support costs

A Holistic Approach

A Holistic Approach

The WDK - Description One Single Kit More than a simple combination of DDK,

The WDK - Description One Single Kit More than a simple combination of DDK, IFS Kit and HCT Content, tests, tools, development environment Driver Test Manager replaces the Hardware Compatibility Tests Key WDK Objectives Build, test, debug drivers on Windows 2000 forward to Windows codenamed “Longhorn” Support all Signature and Logo programs Including Windows Partner Logo testing and Driver Quality Signature The HCTs for previous Windows releases are planned to be replaced at Longhorn RTM Help partners improve quality by using many of the same tests and tools as the Windows development team uses More than just the Logo tests Verification and analysis tools Stress, performance, and functionality tests

The WDK _ Lifecycle Components Key Usage Integrated build environment for device software development

The WDK _ Lifecycle Components Key Usage Integrated build environment for device software development OS and Tools Documentation Windows Driver Build Foundation Scenarios 1 Build Drivers ( Win 2 K LH) 2 Debug Drivers 3 Driver Testing 4 Logo Testing Win. Qual Driver Test Environment Manager Integration Development Logo Tests Kernel Quality Tests Debugger Test (PREfast) Develop Design Harness. Drivers (WTT) Template Pillars of LDK Tools Maintain Environment LDK Test Samples Qualify Build

The WDK - Deployment WDK Extensions for 3 rd Party Tests Test Lab Logo

The WDK - Deployment WDK Extensions for 3 rd Party Tests Test Lab Logo Tests Driver Test Manager Static Analysis Samples Docs Debugging Tools* Build Environment Test Result Sharing MS Quality Tests OEMs Internet Microsoft

Features

Features

Features: Design and Development Build Environments for Windows 2000 forward Versioned Headers – one

Features: Design and Development Build Environments for Windows 2000 forward Versioned Headers – one set of headers!!! Windows Driver Foundation Latest versions of: Debuggers PREfast for Drivers Call Usage Verifier New Tools Static Driver Verifier Deprecated Function Checking Redesigned Documentation Navigation / Search

Header Hierarchy Core headers utilize a superset/subset model Higher level headers #include lower headers

Header Hierarchy Core headers utilize a superset/subset model Higher level headers #include lower headers NTIFS. H Result: Definitions moved to lowest common header Higher headers only have definitions specific to them Enables versioning #include NTDDK. H #include WDM. H

Versioned Headers Goal: Support driver development from Windows 2000 forward with one set of

Versioned Headers Goal: Support driver development from Windows 2000 forward with one set of headers Creation of binaries for multiple versions of Windows using a single set of headers Separate binaries for each O/S version, or… Single binary that supports multiple O/S versions Both Kernel and User mode headers Planned for Longhorn Beta 1 Benefits Simplified development environment management Easier to use up-level features of later OS versions

Developer Documentation Improvements Goals: Make it easier to find specific content Based on user

Developer Documentation Improvements Goals: Make it easier to find specific content Based on user data collected in 2004 Improvements Integrating content from IFS Kit Table of Contents – more hierarchical, improve grouping Index – emphasis on keywords Readmes for samples and tools included in TOC and Search Filtering based on technologies Some improvements are in Windows Server 2003 SP 1 DDK Benefits No need to obtain separate IFS Kit Don’t need to know topic title to find content Information on samples and tools more readily available

Improve TOC Old TOC

Improve TOC Old TOC

Improve TOC New TOC

Improve TOC New TOC

Features: Test

Features: Test

Driver Test Manager (DTM) Formerly known as the “LDK Test Harness” Same testing tool

Driver Test Manager (DTM) Formerly known as the “LDK Test Harness” Same testing tool used by Windows Test Teams Many of the same tests used by Windows Teams More than just the Logo tests Stress, performance and functionality tests Targeted Environment For testing only Windows drivers and related apps Not to be used in non-test environments Usage limited to OEMs, ODMs, IHVs, ISVs

DTM: Scaling to All Driver Test Needs Scaling Up To large QA Labs Up

DTM: Scaling to All Driver Test Needs Scaling Up To large QA Labs Up to 100 test clients per controller As many controllers as needed Single controller per database No inter-controller processing Scaling down Developer unit testing One controller, one test client

DTM: Deployment Studio UI Streamlined for driver testing Planning and monitoring ∞ 1 Controller

DTM: Deployment Studio UI Streamlined for driver testing Planning and monitoring ∞ 1 Controller Services and daemons Configuration database Stored procedures Test Client System under test Contains a slim execution agent Automation Datastore 1 100 DTM Controller

DTM: Key Concepts Jobs A codified test plan A collection of 1 or more

DTM: Key Concepts Jobs A codified test plan A collection of 1 or more tasks Executables, like “Logo. Test. exe” Task dependencies can be created Setup, Regular, Cleanup Sharable Constrainable DTM Job Configuation Tests Dumps Results Dimensions Parameters The DTM provides a common set of jobs You can create custom jobs Configuration Gatherer Collects information about a test client’s configuration Hardware and software Presents configuration to controller for scheduling

DTM: Key Concepts Scheduling Automated job distribution Parallel execution Targets jobs to the resources

DTM: Key Concepts Scheduling Automated job distribution Parallel execution Targets jobs to the resources Packaging Collection of test scenario information Tests, configuration, logs, results Collaboration Reproduction Automated Deployment Automated System Installer (ASI) Hands-off installation of any Windows version Clean installation integrity No need to manage a large number of images System Imaging Tool Automated install of any image

Packager Scenario Investigate a failure View Data Import LDK Controller Test Clients Jobs, tests,

Packager Scenario Investigate a failure View Data Import LDK Controller Test Clients Jobs, tests, results, system configuration data, crash dumps Studio LDK Controller Test Clients

The package can be saved so the tests can be duplicated at a later

The package can be saved so the tests can be duplicated at a later date… DTM Scenario OEMs The scheduler matches the jobs to the test targets with the appropriate hardware …and shared with customers, OEMs, or submitted to Microsoft My Job 0 Automation Datastore My Job t n e Config em The test engineer creates and manages Microsoft jobs from the studio J ob M Scheduler Device x ag n a The jobs and test configuration are sent to the test targets DTM Controller Device 00 Device 0 Log 1 DTM Studio The test targets are configured automatically, including a clean install of the OS After reviewing the results, the test engineer packages all test information and results The gatherers are sent to the test targets to gather information about their devices When the tests are complete, the results are sent to the controller where they can be reviewed Log 0 The tests execute in parallel or in sequence, collecting results in logs Test System Pool

Demo Driver Test Manager

Demo Driver Test Manager

DTM: Benefits Single automated testing framework Logo tests Non-logo tests Your tests – preserve

DTM: Benefits Single automated testing framework Logo tests Non-logo tests Your tests – preserve your existing investments Testing framework used by Microsoft internally Improved testing throughput – parallel execution Installation of OS images on test systems Collaboration using the “Packager” Among remote sites, your partners and Microsoft Share any test scenario – drivers, jobs and tests, test results (including Logo), crash dumps

Preparing for the WDK

Preparing for the WDK

Planned WDK Timeline Tied to the Longhorn release schedule WDK released simultaneously with Longhorn

Planned WDK Timeline Tied to the Longhorn release schedule WDK released simultaneously with Longhorn interim releases and milestones WDK Betas released simultaneously with Longhorn Betas Beta 1 – DTM, OS Imaging, Versioned Headers, CUV, PFD, Samples Beta 2 – DTM Collaboration, Tests RC 0 – DFW Logo content / tests RC 1 – Use WDK for Logo submittals

Partner Engagement Driving early adoption We have traditionally not had strong adoption during the

Partner Engagement Driving early adoption We have traditionally not had strong adoption during the previous DDK or HCT betas The WDK needs feedback early enough to act on it Sign up for the WDK program if you are interested in providing feedback Technology Adoption Program 25 participants Focused adoption efforts in the beta timeframe Select 75 participants Surveys, limited call downs, availability of interim builds Beta Hundreds of participants Testing adoption through statistical sampling

Call to Action Start preparing now The WDK will be necessary for Longhorn Logo

Call to Action Start preparing now The WDK will be necessary for Longhorn Logo testing Plan and budget for new software Try Driver Test Manager in your lab Consider changes to lab topology Training (courses, books) Don’t be caught off guard: Sign up for the WDK beta program and try the WDK Does it align with your business goals? How does it fit into your line of business processes? What features might help keep your costs down? Contact: WDKFB @ microsoft. com

Community Resources Windows Hardware & Driver Central (WHDC) www. microsoft. com/whdc/default. mspx Technical Communities

Community Resources Windows Hardware & Driver Central (WHDC) www. microsoft. com/whdc/default. mspx Technical Communities www. microsoft. com/whdc/default. mspx Non-Microsoft Community Sites www. microsoft. com/communities/related/default. mspx Microsoft Public Newsgroups www. microsoft. com/communities/newsgroups Technical Chats and Webcasts www. microsoft. com/communities/chats/default. mspx www. microsoft. com/webcasts Microsoft Blogs www. microsoft. com/communities/blogs

Additional Resources Community Sites http: //www. microsoft. com/communities/default. mspx List of Newsgroups http: //communities

Additional Resources Community Sites http: //www. microsoft. com/communities/default. mspx List of Newsgroups http: //communities 2. microsoft. com/communities/newsgroups/enus/default. aspx Attend a free chat or webcast http: //www. microsoft. com/communities/chats/default. mspx http: //www. microsoft. com/seminar/events/webcasts/default. mspx Locate a local user group(s) http: //www. microsoft. com/communities/usergroups/default. mspx Non-Microsoft Community Sites http: //www. microsoft. com/communities/related/default. mspx

Additional Resources For questions on the WDK, email WDKFB @ microsoft. com Web Resources:

Additional Resources For questions on the WDK, email WDKFB @ microsoft. com Web Resources: Windows Driver and Hardware Central – http: //www. microsoft. com/whdc/default. mspx WDK Page: http: //www. microsoft. com/whdc/driver/wdk/default. mspx “Introduction to the Windows Driver Foundation Peter Viscarola” “How To Develop Device Drivers Using the Kernel Mode Driver Foundation“ by OSR Press. September 2005. www. osr. com/wdfbook. htm Related Sessions Windows Driver Foundation: An Introduction (next) Business Value of the Windows Device Software Lifecycle (today afternoon) Windows Driver Quality Signature (today afternoon) How to Improve Driver Quality with Winqual / WHQL (Wed) How to Manage a Quality Device Driver (previous) Driver Install Frameworks Tools and Strategies (Wed)

© 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only.

© 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.