CeDebugX is a newer feature in Compact 7 and is an extension to the PB debugger. When the operating system is at a breakpoint, it can be used to examine things such as threads, processes, modules, synchronization objects, heaps, GDI objects, windows, message queues, and other objects through the Target Control Window. It is particularly useful for examining a crash, hang, or deadlock. Table 34-5 shows the main commands.
|!help||Lists all available commands.|
|!refresh||Synchronizes the extension with the current state of the system. This command must be invoked after every run/break cycle or any time the state of the system changes.|
|!diagnose||Performs an automatic diagnosis of all crashes or hangs present in the current state at break time.|
|!xml||Logs positive diagnoses and detailed system information in an XML file and displays the formatted data in a browser window.|
An example of a command is
that runs through all available diagnostic procedures to diagnose a failure of unknown type.
eXDI enables hardware-assisted debugging, which relies on a technology called JTAG (from Joined Test Action Group, the specification committee). JTAG is an electronic circuitry integrated in modern CPUs that enables an external device to read or write CPU inputs and outputs through a serial line. Using the serial JTAG port, you can interact directly with the CPU by sending instructions and reading the results ...