|
From: Soam V. <soa...@co...> - 2005-08-30 17:37:36
|
Kalpak, please send your questions to liz...@li..., not me. ---------------------------- Original Message ---------------------------- Subject: Re: [lizard] Fwd: CODITO - Reversible debugger From: "Kalpak Shah" <kal...@gm...> Date: Tue, August 30, 2005 9:50 am To: "Soam Vasani" <soa...@co...> -------------------------------------------------------------------------- Hey Soam, Sameer told me that you guys wanted to make a "reversible debugger for SMP systems". We are not thinking of re-implementing Lizard. In case of Lizard if we identify an error, we need to make the change and again start debugging the program from line 1. Sameer defined a reversible debugger as in, we should be able to change code at line 75, while line 100 is being executed and then take the flow of execution back to line 75. People are not optimistic about the feasibility of such a project. So they are suggesting that we just implement the "what-if"(changing variable values) capability you mentioned. I also feel that implementing "what-if" capability would not be a big enough BE project. Right now I am thinking about being able to change entire code blocks at runtime. That I feel would be really cool. This functionality is available with Visual Basic because it uses an interpreter at debugging stage. We are looking at different options to implement this. Thanks, Kalpak. On 8/29/05, Soam Vasani <soa...@co...> wrote: > > --- Kalpak Shah <kal...@gm...> wrote: > > Our BE project group is working at Codito. We were really inspired by LIZARD and have been thinking about reversible debugging. Sameer asked me to take your help for doubts regarding reversible debugger. > > Ok > > > Visual Basic has reversible debugging capability with the help of an interpreter which it uses at debugging stage. I found a few > > interpreters for C viz. Ch(www.softintegration.com<http://www.softintegration.com>) > and EiC. EiC can > > be embedded or linked to other programs. We could use it along with GDB to provide this functionality. > > Which functionality ? Do you want to re-implement lizard ? why ? (re-implementing lizard is not an invalid idea, i'm just asking you why you're considering it.) > > > There are good tools available for checkpointing to minimize the memory requirements, so checkpointing most probably should not be a problem. Would it be enough, if we can provide minimal functionality but prove that it is extensible? > > Minimal functionality for what ? Lizard already implements some > minimal functionality for a replay debugger, including checkpointing. > > > Sameer also said that even if are able to change variable values in the executed code, it would be a good enough project. In this case we wouldnt need any recompilation. > > Yeah, allowing users to change variable values during the debug > session would be a good feature; i'm not sure it's a big enough BE project. (But we'll certainly help you if you decide to do this.) > > What is the case you are thinking of that requires recompilation ? > > > What were the major roadblocks that you encountered when you thought about this idea? I thought that the recompilation of the changed code would be the biggest problem, but i guess it could be solved with the help of an interpreter. > > Overall, I haven't really understood your email. What exactly are you looking for ? > > Please have a look at http://lizard.sourceforge.net/explain.html . > > If you're looking to extend lizard, we had, i think, thought of 3 new things that would be nice to do: (1) what-if capability > i.e. changing variable values (2) supporting multi-threaded programs (3) supporting multi-processor programs. > These 3 things are in increasing order of difficulty. > > There's also the list of bugs at > http://sourceforge.net/tracker/?group_id=112369&atid=662041 > > hope this helps. > > regards, > soam > > > soam |