hw 98 p-radeva

26
www.buildwindows.com Windows 8 kernel debugging: New protocols and certification requirements Joe Ballantyne Principle Software Design Engineer Microsoft Corporation HW-98P Tanya Radeva Program Manager Microsoft Corporation

Upload: henrique-kothrade-casonatto

Post on 06-Aug-2015

92 views

Category:

Devices & Hardware


0 download

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

Network Kernel Debugging (KDNET)

demo

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

USB 3.0 Debugging

demo

www.buildwindows.com

Support USB 3.0 and network kernel debugging in your new Windows

Systems

www.buildwindows.com

Hardware Development Cycle

Component

Device

Driver

Certification

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

Kernel debugging on the Nike tablet

demo

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

WHCK Debug Capability Tests <WLK Studio>

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.