From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 32555 invoked by alias); 6 Sep 2007 19:38:48 -0000 Received: (qmail 32547 invoked by uid 22791); 6 Sep 2007 19:38:47 -0000 X-Spam-Check-By: sourceware.org Received: from main.gmane.org (HELO ciao.gmane.org) (80.91.229.2) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 06 Sep 2007 19:38:42 +0000 Received: from list by ciao.gmane.org with local (Exim 4.43) id 1ITNBT-00037d-JP for gdb@sources.redhat.com; Thu, 06 Sep 2007 21:38:35 +0200 Received: from 77.246.241.246 ([77.246.241.246]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 06 Sep 2007 21:38:35 +0200 Received: from ghost by 77.246.241.246 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 06 Sep 2007 21:38:35 +0200 To: gdb@sources.redhat.com From: Vladimir Prus Subject: Re: MI: "^running" issues Date: Thu, 06 Sep 2007 21:18:00 -0000 Message-ID: References: <200709041653.22357.ghost@cs.msu.su> <200709061046.21723.ghost@cs.msu.su> <5.2.0.9.1.20070906085944.01d61e20@localhost> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7Bit User-Agent: KNode/0.10.4 X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2007-09/txt/msg00059.txt.bz2 Fabian Cenedese wrote: > >>> > What commands are actually meaningful to emit while target are >>> > running >>> >>> A less trivial example is "info break" (to see >>> what breakpoints were already hit during execution up to now, in case >>> your "commands" for the breakpoints continue the target). >> >>Technically speaking, you don't need async for that -- you can interrupt >>the target, provide output, and then go on. Making this async will maybe >>cut some fraction of section from the run time, why do we care? > > I'm working on embedded targets and a multithreaded gdb would help > for many cases. > > - A lot of times the hardware is controlling a machine or some system > that is highly optimized for speed. Any interruption could disturb the > process or even throw the whole thing out (Imagine a motor that is > running and not stopped because the end position was not detected). > > - The connection to the target can be Ethernet but also a slow SIO. > So any communication can take quite some time (for CPUs, not > for humans). So it may not be just a fraction of a second. Do you have a communication channel that can talk with the device while the program is running? > - Even while the target is running it's useful to watch some values. > These aren't necessarily process variables that can be read by some > other means as a visualisation might do. gdb with its debug info is > the only way to get there then. And this is only possible if gdb is > responding even while the target is running. This seems a valid usecase; I can find essentially the same request in the archive. - Volodya