Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10 5/3/83 based; site houxj.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxt!houxm!houxj!wapd From: wapd@houxj.UUCP (Bill Dietrich) Newsgroups: net.unix-wizards,net.micro.att Subject: Re: end, etext, edata on ATT 3B2 Message-ID: <534@houxj.UUCP> Date: Thu, 11-Jul-85 09:43:41 EDT Article-I.D.: houxj.534 Posted: Thu Jul 11 09:43:41 1985 Date-Received: Sat, 13-Jul-85 07:46:53 EDT References: <966@sdcsvax.UUCP> Organization: AT&T Information Systems, Holmdel NJ Lines: 21 Xref: watmath net.unix-wizards:13787 net.micro.att:228 The MMU used by the 3B-2/300 splits the 32-bit virtual address space and its own internal caches into 4 "sections" via the top two bits of the 32-bit address. So to distribute accesses somewhat uniformly through the MMU caches, 3B-2 Unix puts some kernel stuff in section 0 (virtual addresses 0x00000000 - 0x3FFFFFFF), kernel text and data in section 1 (0x40000000 - 0x7FFFFFFF), user text and data in section 2 (0x80000000 - 0xBFFFFFFF), and user stack in section 3 (0xC0000000 - 0xFFFFFFFF). So even for a small program, you will see what looks like "big" addresses. You can see concrete numbers by using the "dump -h" command on "/unix" and your program. This command prints the section header information from an object file. Or use "nm" on those files. Bill Dietrich AT&T Information Systems houxj!wapd