This patch adds the base inferior control support for non-stop mode. In non-stop mode, each thread is handled individually.  It should behave close to having a separate debugger attached to each thread. To accomplish that, as soon as we have an event, we context switch to it, and go on handling it.  The cases of hiting a breakpoint in another thread while we're stepping don't need to be handled specially, as each thread will have its own stepping state. Another difference in non-stop mode, is that exec commands apply only to the selected thread; the target is never told to resume all threads -- much like with scheduler locking on. It is also needed to have support to interrupt/suspend a simple thread so a new target_stop_ptid method was added to request the target to interrupt a single thread. Several checks have been added so GDB doesn't try to do things with running threads, which don't make sense, like asking for the current PC of an executing thread. "info threads" now shows "(running)" instead of info on the selected frame, on running threads.  MI support will be added on top. -- Pedro Alves