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