Services - tools - models - for embedded software development
Embecosm divider strip
Prev  Next

3.1.3.  Asynchronous Remote Debugging

The most recent versions of GDB have started to introduce the concept of asynchronous debugging. This is primarily for use with targets capable of "non-stop" execution. Such targets are able to stop the execution of a single thread in a multithreaded environment, allowing it to be debugged while others continue to execute.

This still represents technology under development. In GDB 6.8, the commands target async and target extended-async were provided to specify remote debugging of a non-stop target in asynchronous fashion.

The mechanism will change in the future, with GDB flags set to specify asynchronous interpretation of commands, which are otherwise unchanged. Readers particularly interested in this area should look at the current development version of GDB and the discussions in the various GDB newsgroups.

Asynchronous debugging requires that the target support packets specifying execution of particular threads. The most significant of these are:

In addition, non-stop targets should also support the T response to continue or step commands, so that status of individual threads can be reported.

Embecosm divider strip