Path: csiph.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: Bob Eager Newsgroups: alt.folklore.computers Subject: Re: Is it a lost cause? Date: 24 Jun 2016 13:47:22 GMT Lines: 55 Message-ID: References: <87d1nbmtuo.fsf@senguio.mx> <87d1nbmtuo.fsf@senguio.mx> <87d1nbmtuo.fsf@senguio.mx> <87d1nbmtuo.fsf@senguio.mx> <87d1nbmtuo.fsf@senguio.mx> <87d1nbmtuo.fsf@senguio.mx> <87d1nbmtuo.fsf@senguio.mx> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Trace: individual.net 1ssZDTmbdwaWOXu3P8bqrQDNjaOAWnKtJTkDwJETN+67it6RYz Cancel-Lock: sha1:OGx7F4P8b8gNfzfkWhCtA+YVe7I= User-Agent: Pan/0.139 (Sexual Chocolate; GIT bf56508 git://git.gnome.org/pan2) Xref: csiph.com alt.folklore.computers:165879 On Fri, 24 Jun 2016 12:33:22 +0000, jmfbahciv wrote: > Scott Lurndal wrote: >> jmfbahciv writes: >>>Charles Richmond wrote: >>>> "jmfbahciv" wrote in message >>>> news:PM000535DD60B75673@aca41e4e.ipt.aol.com... >>>>> >>>>> [snip...] [snip...] >>>>> [snip...] >>>>> >>>>> Dealing with a bug in any code looks the same if you use DDT or >>>>> EDDT. >>>>> I'm not sure how you guys would approach that task with an HLL. >>>>> >>>>> >>>> In a Unix/Linux enviroment, you can debug the executable with "dbx" >>>> or "gdb". These are "source level debuggers" that work well with C >>>> code. >>>> >>>The debuggers take the EXE code and reverse engineer it into C language >>>when giving the filename of the EXE to the debugger? >> >> Effectively. The EXE (a file in the Extensible Linking Format (ELF)) >> is divided into sections. There are sections for executable >> instructions (called text), for mutable data (called data), for >> immutable data (called rodata) and for the heap (called bss - block >> storage section). There are also metadata sections containing symbol >> tables (mapping symbols to addresses in the text/data/rodata/bss >> sections) and optional metadata sections that correlate source code >> statements (by file and line) to specific instruction sequences in the >> text section. >> >> So, once the debugger detects that the program being debugged has >> halted, it can fetch the program counter and map that to the exact >> source line (modulo optimization) and source file corresponding to that >> instruction. >> >> Likewise, it can step a source-code-statement by using that metadata to >> determine which instruction starts the next statement and setting a >> breakpoint on that instruction. > > Ah! The wonders of having enourmous existing address space :-). > Symbol tables were a luxury on TOPS-10 for efficient execution. TOPS-20 > was able to ignore the memory occupied by them. That's just an implementation issue. Perfectlyh possible to keep the symbols in the executable and access them there. -- Using UNIX since v6 (1975)... Use the BIG mirror service in the UK: http://www.mirrorservice.org