From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI autolearn=unavailable autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,6403691d6db186c8 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-02-21 21:43:31 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!newsfeed.icl.net!newsfeed.fjserv.net!news.tele.dk!news.tele.dk!small.news.tele.dk!fr.usenet-edu.net!usenet-edu.net!enst.fr!not-for-mail From: sk Newsgroups: comp.lang.ada Subject: Re: Getting a symbol table from Gnat 3.15p on Windows Date: Fri, 21 Feb 2003 23:46:27 -0600 Organization: ENST, France Message-ID: References: Reply-To: "comp.lang.ada mail to news gateway" NNTP-Posting-Host: marvin.enst.fr Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Trace: avanie.enst.fr 1045892560 31360 137.194.161.2 (22 Feb 2003 05:42:40 GMT) X-Complaints-To: usenet@enst.fr NNTP-Posting-Date: Sat, 22 Feb 2003 05:42:40 +0000 (UTC) To: "comp.lang.ada mail to news gateway" Return-Path: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20020828 X-Accept-Language: en-us, en X-BeenThere: comp.lang.ada@ada.eu.org X-Mailman-Version: 2.1 Precedence: list List-Id: comp.lang.ada mail to news gateway List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Xref: archiver1.google.com comp.lang.ada:34411 Date: 2003-02-21T23:46:27-06:00 Hi, The Gnat.Expect tools, and I believe the whole Expect concept, hook into the stdin, stdout and stderr of the spawned program, Basically, they use the underlying OS "pipe" mechanisms. If one were to spawn the debugger, thru expect (or pipes), and in turn got the debugger to load and run the "image", the image is as close to production as needed with the possible exception of extra debugging symbols. The symbols of interest would be identified by the map file and the program using Gnat.Expect would tell the debugger, thru expext calls, to set break-points etc. Spawn (Debugger); ... -- Read in all the introduction lines and ignore ... -- Wait for the Debugger_Stdin to be writeable Put_Line (Debugger_Stdin, Load file "image"); Put_Line (Debugger_Stdin, set break point "image" address); ... Put_Line (Debugger_Stdin, read address); Get_Line (Debugger_Stdout, value at address); -- Really stderr ... Granted the performance would take big hits thru the debugger, but the "image" is not altered at all. ... since you work for tons of wonderfull tax-dollars (according to the PBS special) and like "Stephen.A.Leake@nasa.gov", give me the money and I will show you a full proof-of-concept :-) ... seriously, the map-file, spawn gdb, expect method might be the closest you get at controlling an "image" without altering the source or buying sophisticated hardware. -- -- -- Merge vertically for real address -- ------------------------------------ -- s n p @ t . o -- k i e k c c m ------------------------------------