Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
This article describes how to work with the Data Model menu in WinDbg.
New model query
Use the Specify Model Query dialog to create a new model query. You can put anything here that you put into a normal dx command.
For example, specify Debugger.Sessions to examine the debugger sessions objects.
For general information about the debugger objects, refer to dx (Display debugger object model expression).
Use LINQ queries to dig deeper into the session. This query shows the top five processes that run the most threads.
Debugger.Sessions.First().Processes.Select(p => new { Name = p.Name, ThreadCount = p.Threads.Count() }).OrderByDescending(p => p.ThreadCount),5
Data Model explorer
Use the Data Model explorer to quickly browse every data model object in the Debugger namespace.
Display mode
Use display mode to toggle between grid, hierarchy, and graph display modes. You can right-click column headers to hide or show more columns.
Grid mode is useful when you want to dig down in the objects. For example, here's the previous top threads query in grid view.
Selecting any underlined item opens a new tab and runs a query to display that information.
This query shows the devices in the plug-and-play device tree grouped by the name of the physical device object's driver for a kernel session.
Debugger.Sessions.First().Devices.DeviceTree.Flatten(n => n.Children).GroupBy(n => n.PhysicalDeviceObject->Driver->DriverName.ToDisplayString())
Change query
Edit the query text box to change the query that's used in the active Data Model window.
Change window or tab title
New generic data model windows are given the Data Model title. You can customize titles by invoking the Change Title context menu item from either the tab or window title pane.
Note
The title can't be empty or contain semicolons.