210 likes | 471 Views
TOL-235T. Developing Drivers in Visual Studio. Adam Shapiro Senior Program Manager Microsoft Corporation. Windows and Visual Studio are collaborating to create a world-class environment for driver development. Agenda. Why modern driver development?
E N D
TOL-235T Developing Drivers in Visual Studio Adam Shapiro Senior Program Manager Microsoft Corporation
Windows and Visual Studio are collaborating to create a world-class environment for driver development.
Agenda • Why modern driver development? • Getting started/migrating to Visual Studio • Focus on driver quality • Simplifying common driver development tasks You’ll leave with • An understanding of Microsoft investments for driver development and how to use them to create great drivers more quickly
Primary goals for Windows 8 • Make developers more productive • Integrate driver tools into the modern Visual Studio environment • Find defects early • Move quality “upstream” in the development process • Integrate quality tools and tests into Visual Studio • Ease creation of more reliable, better-performing drivers • Enhance driver development frameworks • Simplify common driver development tasks
Driver development in Visual Studio “11” • Visual Studio “11” is the recommended development environment for building Windows 8 drivers • Driver-specific functionality is delivered via a Windows Driver Kit (WDK) add-on pack to Visual Studio • Copies of Visual Studio “11” Ultimate and the WDK are on the USB stick you received with your conference materials
Driver development in Visual Studio “11” Component layout WDK (Visual Studio add-on) Driver analysis tools Driver testing and deployment tools Online VS driver toolbar (build, package, sign) Kernel debugger (engine and UI) Redistributables(Developer portal) VS driver templates Kernel-mode headers/libs Samples (Code gallery) Documents (MSDN) Visual Studio “11” Ultimate Windows SDK Visual Studio Core
Getting started • Get going quickly • New Visual Studio templates provided for networking, storage, printing, WDF (KMDF and UMDF) and WDM drivers • New tool automates migration of existing Windows 7 driver projects • Write less code • The Windows Driver Framework (WDF)has new support for power management, kernel-mode DMA and user-mode hardware access
demo Create, build, package, and sign a driver in Visual Studio
Driving quality “upstream”Tools • Compiler enhancements ease driver development • C++ is a “first class citizen” for creating drivers • New “/kernel” switch catches illegal driver code at compile time • Integrated analysis tools find bugs early • Static Driver Verifier (SDV) • Code Analysis (was PREfast/PFD)
demo Early bug detection
Simplifying common tasksScenario focus • “Easily run tests” automates build-debug cycle for developers • Automated driver build, packaging, signing and deployment • Test library pre-loaded with “Device Fundamentals” tests • Remote machine provisioning and integrated kernel debugging • “Easily write tests” simplifies creation of new driver tests • Create new driver tests with Visual Studio templates
demo Remote driver deployment, testing and debugging
Next steps • Timing • Get started now with driver development using Visual Studio! • Visual Studio “Go Live” licensing takes effect at beta • Visual Studio in “build labs” • Version-control tool scenarios will be documented at beta • Operating system targeting • Windows 8, Windows 7, Windows Vista, and Windows Server 2008 (SP2 and R2) are supported
Recap • Find defects early • Learn more at Session #239, “Moving driver quality upstream with WDK Driver Verification and Test Tools”
Windows and Visual Studio are collaborating to create a world-class environment for driver development.
Visual Studio licensing • Visual Studio is licensed per-user, not per-installation • MSDN licensees receive all versions of Visual Studio shipped while their subscription is active • More information for enterprises here • Start-upsand smaller businesses may be eligible for BizSparkor the Microsoft Partner Network (MPN) • Academic institutions (including students) can take advantage of DreamSpark
Related WES sessions • [HW-322T] Designing great devices and drivers • [HW-328T] Using the Windows Driver Framework to build better drivers • [HW-239T] Moving driver quality upstream with WDK driver and verification test tools • [HW-98P] Windows 8 kernel debugging: New protocols and certification requirements • [HW-907C] Inside the Windows 8 driver developer workflow
Further reading and documentation Event Site: • http://channel9.msdn.com/Events Resources: • Developing, Testing, and Deploying Drivers • Debugging Using Visual Studio • Windows Hardware Dev Center • Windows DevCenter Contact: • win8wdk@microsoft.com
Thank You! For questions, please visit me in the Speakers Connection area following this session.
© 2011 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.