Open as PDF
User Manual November 21
156 Chapter 11: Debug Interface
The pipe is not created until the first “go” command will be executed. This can be
achieved by clicking on the “go” button followed by a click on the “stop” button. This
command sequence will setup the named-pipe.
If you try to connect the kernel debugger without setting up the named-pipe as described
the kernel debugger will return an error message.
In case you have difficulties to establish a connection, or the connection is unstable, or
KD has difficulties to stay in sync with the simulated OS. You can set a multiplier to
delay the baud rate. The baud rate is normally modeled based on the time elapsed on the
simulated system. The simulated system may be running at 1/100 of normal time which
will give longer time delays than the kernel debugger can tolerate. Consequently we
provide a way to speed up the modeled baud rate by up to 100 times. For example to
delay the baud rate by 1/100th of normal you would use the following automation
By default, the multiplier is 100 which means the modeled rate is unchanged. The user
may set it in the range 1 to 100. When set to 1, the modeled rate is 100 times faster than
the baud rate, so the system delays will be that much shorter. See also Section A.7.10,
“Serial”, on page 235.
The following command will connect the kernel debugger to the simulator using a pipe as
C:\Program Files\Debugging Tools for Windows 64-bit\kd –k
We recommend not starting the kernel debugger too early. To achieve best results launch
the kernel debugger after the O/S kernel has loaded and it is trying to establish a
connection with the kernel debugger.
11.2 GDB Interface
Getting the gdb interface in the simulator to work involves a sequence of commands in
both the simulator and gdb. The current implementation requires the simulator to be
started and told to be ready for gdb to connect and then having gdb connect. As long as
the gdb command, "target remote ..." is issued last, the interface should be established.
It has been observed that after shutting down the simulator, the port used by the gdb
interface may not become immediately available for reuse. If this happens just shut down
both the simualtor and gdb and start again and the problem should go away.
11.2.1 Simple Approach
This assumes you are running the simulator and gdb on the same machine.
Start the simualtor