Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!elroy.jpl.nasa.gov!usc!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!att!pacbell.com!ucsd!ucbvax!unisoft!aegl From: aegl@unisoft.UUCP (Tony Luck) Newsgroups: comp.unix.internals Subject: Re: finding out where the text/bss sits Message-ID: <3324@unisoft.UUCP> Date: 29 Jan 91 00:45:46 GMT References: <304@bria.AIX> <5179@idunno.Princeton.EDU> <1991Jan11.141844.26262@cbnews.att.com> <3295@unisoft.UUCP> Organization: UniSoft Corporation -- UNIX R Us. Lines: 16 josef@nixpbe.nixdorf.de (josef Moellers) writes: >Rather than bus-error-ing, how about a look at ye olde symboltable? >usually >_start sits at the very beginning of the program code >etext sits at the end of the program code >edata sits at the end of the initialized data >end sits at the end of the uninitialized data (bss) Ah, but do you trust the symbol not to lie to you? And do you trust your kernel to do all the things that it is supposed to do when mapping a process? Its surprising how many systems have had odd little bugs that the "checkaddr" program has shown up (from forgetting to write protect the processes text to leaving a read-write copy of the kernel mapped into each processes address space!!!). -Tony