From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 5301 invoked by alias); 1 Feb 2008 03:33:08 -0000 Received: (qmail 5293 invoked by uid 22791); 1 Feb 2008 03:33:07 -0000 X-Spam-Check-By: sourceware.org Received: from web27212.mail.ukl.yahoo.com (HELO web27212.mail.ukl.yahoo.com) (217.146.182.102) by sourceware.org (qpsmtpd/0.31) with SMTP; Fri, 01 Feb 2008 03:32:40 +0000 Received: (qmail 29440 invoked by uid 60001); 1 Feb 2008 03:32:37 -0000 X-YMail-OSG: PZqsxRIVM1myy9LdOPKxFEiA8RCuPbYvHdAHTk3_dHOAvGgf7jhQDMt5.6hfQaYlst22LEAQOy71_nSboxU7Xu5vfOhHRrVara0Nt5qJgDSN3LJt2pFn5wf.V3A- Received: from [57.72.66.20] by web27212.mail.ukl.yahoo.com via HTTP; Fri, 01 Feb 2008 03:32:37 GMT Date: Fri, 01 Feb 2008 03:33:00 -0000 From: srinivas bakki Subject: Re: beginner To: Arun Paneri Cc: gdb@sourceware.org In-Reply-To: <922038.13119.qm@web90410.mail.mud.yahoo.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Message-ID: <845944.74159.qm@web27212.mail.ukl.yahoo.com> 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: 2008-02/txt/msg00000.txt.bz2 Thank you all people, it seems i have enough at hand now. may be i'll keep pestering with all those silly doubts though :) Regards Srinivas Bakki --- Arun Paneri wrote: > See this mail chain if it helps you (Courtesy > Michael Snyder) > > Also go through this site > http://sourceware.org/gdb/current/onlinedocs/gdbint_toc.html > > Regards. > > var YAHOO = {'Shortcuts' : {}}; > YAHOO.Shortcuts.hasSensitiveText = false; > YAHOO.Shortcuts.sensitivityType = []; > YAHOO.Shortcuts.doUlt = false; > YAHOO.Shortcuts.location = "us"; > YAHOO.Shortcuts.document_id = 0; > YAHOO.Shortcuts.document_type = ""; > YAHOO.Shortcuts.document_title = "Re: Pls help: > regarding gdb internals"; > YAHOO.Shortcuts.document_publish_date = ""; > YAHOO.Shortcuts.document_author = > "msnyder@specifix.com"; > YAHOO.Shortcuts.document_url = ""; > YAHOO.Shortcuts.document_tags = ""; > YAHOO.Shortcuts.annotationSet = { > > }; > > On > Wed, > 2008-01-16 > at > 11:59 > -0800, > Arun > Paneri > wrote: > > > Hi > All, > > > > > I > am > new > to > gdb > code > and > trying > to > learn > more > things. > i > need > help > regarding > gdb > internals. > > > > > Can > anyone > write > few > lines > about > how > does > gdb > internally > works. > > > I > went > to > "Gdb > internals > guide" > but > couldn't > find > much > information > > > specifically > which > i > am > looking > for. > I > want > information > like > > > when > we > give > command > > > "$gdb > test.exe" > > > then > how > internaly > it > works. > Does > it > start > reading > symbols > > > and > start > making > symbol > table > with > this > command > ? > > Yes. > > > > Does > it > start > creating > stack > frames > as > we > give > command > "run" > or > before > even > that > with > "$gdb > test.exe"? > > No, > and > no. > Before > you > "run" > a > program, > there > are > no > stack > frames. > But > gdb > does > not > start > constructing > its > internal > stack > frame > representation > until > the > program > STOPS, > eg. > at > a > breakpoint > or > after > executing > a > "step". > > > > I > am > basically > interested > to > know > about > creation > of > frames > and > how > does > gdb > read > them > back > when > we > give > "backtrace" > command? > > For > performance > reasons, > gdb > tries > to > construct > its > stack > frame > data > lazily > -- > it > postpones > the > work > whenever > possible. > > So, > in > general, > whenever > the > program > stops, > gdb > will > construct > one > (and > hopefully > only > one) > stack > frame > -- > the > one > for > the > function > in > which > the > program > stopped. > > If > you > give > the > "up" > command, > gdb > will > construct > the > next > (one) > stack > frame. > > If > you > ask > for > "backtrace > 10" > it > will > construct > the > next > ten > stack > frames. > And > if > you > ask > for > a > full > backtrace, > gdb > will > construct > as > many > stack > frames > as > it > can > find. > > > > > > I > am > not > sure > but > i > think > to > creat > a > frame > it > calls > _initialize_stack > (void) > > No. > That > function > is > the > initializer > for > the > "stack.c" > module. > It > is > called > when > gdb > starts > up, > and > just > initializes > the > infrastructure > for > stack > manipulation. > > > > and > from > this > it > calls > fun_command(char > *arg, > int > from_tty) > then > parse_frame_specification(char > *frame_exp) > & > then > create_new_frame(CORE_ADDR > addr, > CORE_ADDR > pc) > function. > > Start > with > the > function > "get_prev_frame", > and > work > your > way > up > (and > down) > from > there. > > > > > > > > > > ----- Original Message ---- > > srinivas > > > bakki > > > wrote: > > > > > > Hi > > > people, > > > > > > I > > > wanted > > > to > > > start > > > going > > > through > > > the > > > GDB > > > > > > source > > > code > > > to > > > learn > > > how > > > it > > > is > > > implemented, > > > what > > > goes > > > > > > into > > > the > > > application > > > and > > > its > > > various > > > nuances, > > > perhaps > > > > > > in > > > a > > > direction > > > to > > > be > > > an > > > active > > > contributor > > > to > > > gdb. > > > > > > > > > But > > > am > > > not > > > able > > > to > > > get > > > a > > > clue > > > for > > > the > > > starting > > > point. > > > > > > where > > > should > > > i > > > start > > > digging > > > the > > > code > > > ? > > > > > > > > > Would > > > be > > > great > > > if > > > you > > > people > > > help > > > me > > > through > > > this. > > > > man > > > ptrace > > > > You > > > should > > > have > > > a > > > good > > > understanding > > > of > > > how > > > the > > > unix > > process > > > works > > > first. > > > > > > > > ____________________________________________________________________________________ > Looking for last minute shopping deals? > Find them fast with Yahoo! Search. > http://tools.search.yahoo.com/newsearch/category.php?category=shopping > ___________________________________________________________ Support the World Aids Awareness campaign this month with Yahoo! For Good http://uk.promotions.yahoo.com/forgood/