hw 98 p-radeva
TRANSCRIPT
www.buildwindows.com
Windows 8 kernel debugging: New protocols and certification requirements
Joe BallantynePrinciple Software Design EngineerMicrosoft Corporation
HW-98P
Tanya RadevaProgram ManagerMicrosoft Corporation
www.buildwindows.com
Agenda
• Modern Kernel Debug Transports• Debuggable Windows Machines• Windows Certification Debug Requirements
You’ll leave knowing how to• Leverage Windows 8 inbox support for new debug
transports• Design debuggable systems certified for Windows
8
www.buildwindows.com
• Existing PC debugging hardware is going away• Serial is gone• 1394 is being phased out
• USB2 debugging hardware is available• Hard to setup• Requires external dongle• USB2 is being replaced with USB3
Existing Kernel Debug Transports
www.buildwindows.com
• USB3.0 XHCI and Network Debugging
- Easy to setup - No special cables needed - Much faster than serial and USB2 - Ship in modern form factor machines
Modern Kernel Debug Transports
www.buildwindows.com
• Kernel debug target machines directly over the network
• Can debug single NIC machines and still use Windows Networking
• Debug connection requires encryption and authentication, and this requires a shared secret 256 bit key.
• Supports a number of Ethernet NICs from different vendors
Network Kernel Debugging
www.buildwindows.com
• Automatic Setup• Use Visual Studio target machine configuration
• Manual Setup• Target machine• Bcdedit –dbgsettings net hostip:w.x.y.z port:50000• Bcdedit –debug on
• Host machine• Windbg –k net:port=50000,
key=paste.your.generated.keyhere
Network Kernel Debug Setup
www.buildwindows.com
• Supports USB3 XHCI Debug Compatible Hardware• USB3 XHCI controllers with XHCI debug will support
debugging on any of their ports• Much faster than USB2 debugging.• Silicon vendors are starting to produce parts• Should be available on most machines in 1-2 years
USB 3.0 Debugging
www.buildwindows.com
• Automatic Setup• Use Visual Studio target machine configuration
• Manual Setup• Target machine• Bcdedit –dbgsettings usb targetname:mytestmachine• Bcdedit –set dbgtransport kdusb3.dll• Bcdedit –debug on
• Host machine• Windbg –k usb:targetname=mytestmachine
USB 3.0 Debug Setup
www.buildwindows.com
Device Lifecycle Cost and Debugging • Device Lifecycle cost• BOM• Hardware bring-up• Device drivers development• Support
• Debuggable Windows systems• Maximum value by reusing the “debug” port• Ensure more than one port for debugging
www.buildwindows.com
Windows Standardization and Certification • Standard debug protocols and chipsets• Windows 8 hardware requirements for debugging• Windows Hardware Certification program
www.buildwindows.com
Windows 8 Hardware Debug Requirements • Goals• User accessible debug ports• USB3 XHCI debug support for USB3 controllers
• Where to look?System.Fundamentals.DebugPort.SystemExposesDebugInterfaceSystem.Fundamentals.DebugPort.USB.SystemExposesDebugInterfaceUsb
www.buildwindows.com
• USB3 XHCI Debug Registers (3+ Gbps)• Gigabit Ethernet Networking (1+ Gbps)• USB2 OTG Device Function (480 Mbps)• 1394 Firewire OHCI (400+ Mbps)• USB2 EHCI Host-Host Cable (480 Mbps)• Serial UART 16550 (115 Kbps)
Windows 8 Hardware Debug Requirements
www.buildwindows.com
Use standard debug transports and existing supported chipsets
whenever possible.
Support USB 3.0 and Network kernel debugging in your new Windows
Systems.
Provide more than one port for debugging.
www.buildwindows.com
Windows Hardware Certification Kit
Verify Windows 8 systems support debugging.• User accessible debug ports
Verify USB 3.0 xHCI controllers support debugging.
www.buildwindows.com
Partners
www.buildwindows.com
Further reading and documentation
• MSDN Debugging Tools for Windows or Debugging Help.chm
• Windows Hardware Certification Kit• Extensible Host Controller Interface (xHCI
) Specification for USB 3.0 • Windows Hardware Dev Center• Setting Up a USB 3.0 Connection in Visual Studio• Debugging Using Visual Studio • Windows Dev Center• Contact info:
www.buildwindows.com
Related sessions
• [HW-774T] Building great Windows 8 systems
• [HW-256T] Understanding USB 3.0 in Windows 8
• [HW-773T] Building great USB 3.0 devices
• [HW-659T] Certifying hardware with the Windows Hardware Certification Kit
• [HW-260T] Windows Certification: improvements to the logo program
www.buildwindows.com
• Feedback and questions http://forums.dev.windows.com
• Session feedbackhttp://bldw.in/SessionFeedback
thank you
© 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.