Intel® System Debugger User Guide

ID 648476
Date 06/13/2024
Confidential
Document Table of Contents

Intel® Debug Extensions for WinDbg Usage Sample

This project demonstrates how you would use Intel® Debug Extensions for WinDbg over Intel® Direct Connect Interface (Intel® DCI) to connect to a target and loading kernel symbols.

This sample works with Windows* 10 Host/Target Systems only. For a list of system requirements matching your configuration, see the Intel® System Debugger Release Notes.

Starting the Intel® Debug Extensions for WinDbg for IA JTAG Debugging

WinDbg must have access to kernel symbols for the connection to succeed. Thus, you must set the symbol file path beforehand.

Launch WinDbg (not by using the batch script, as this will perform a connection) and set the symbol file path by selecting File > Symbol File Path and adding:

srv*C:Symbols*http://msdl.microsoft.com/download/symbols

to the path or by setting the _​NT_​symbol_​path global environment variable with a corresponding value. Save the workspace by selecting File > Save Workspace, and then closing WinDbg.

Note:

You need to do this only once before the first use. Connect the host system to the target one with the Intel® In-Target Probe (Intel® ITP) or the Intel® Direct Connect Interface (Intel® DCI).

Launching WinDbg

Intel® Debug Extensions for WinDbg can be launched as follows:

Click the desktop icon or open the Start Menu and click Intel® Debug Extensions for WinDbg under Intel® System Debugger NDA

Run windbg_​iajtag_​console.bat located at:

C:\IntelSWTools\oneapi_​nda\system_​debugger\<version>\windbg_​iajtag_​console.bat

Another way to launch WinDbg over Intel DCI would be to use the isd_​shell. Launch isd_​shell.bat, that is located in the root installation directory:

C:\IntelSWTools\oneapi_​nda\system_​debugger\<version>\isd_​shell.bat

From isd_​shell run windbg_​dci to invoke WinDbg.

At this point, two Python objects are available for debugging:

itp - Intel® ITP interface

itpkd - wrapper over WinDbg and kernel debug console

console

Execute windbg() to halt the target and run a WinDbg session. After that, WinDbg starts connecting to the target.

windbg

From now on, you can use WinDbg commands to interact with target, for example:

Set a breakpoint:

windbgbreak

Debugging drivers:

driver

Get pcitree:

driver

Note:

Connecting to the target can take several minutes. Do not enter any commands until the connection is fully established and the connection confirmation message is displayed (Target initialization succeeded). If the connection fails, you see an exception in the console. Check the network connection if KDVersionBlock is not found. Run the target for a while if the kernel is not found.

Using Intel® Debug Extensions for WinDbg with WinDbg Preview*

System requirements:

  • Microsoft WinDbg Preview*. For download and installation instructions, see the Windows* Debugging Tools documentation.

  • Windows 10 version 14257.0 or higher

Starting WinDbg Preview

To start using Intel® Debug Extensions for WinDbg with WinDbg Preview* follow the steps below:

  1. Connect to the target.

  2. Launch isd_​shell.bat located in the installation root directory.

  3. Execute the windbg_​preview command to start WinDbg Preview*.

windbgprev