From owner-freebsd-questions Wed Feb 20 14: 0:45 2002 Delivered-To: freebsd-questions@freebsd.org Received: from mailb.telia.com (mailb.telia.com [194.22.194.6]) by hub.freebsd.org (Postfix) with ESMTP id ED93C37B400 for ; Wed, 20 Feb 2002 14:00:36 -0800 (PST) Received: from d1o913.telia.com (d1o913.telia.com [195.252.44.241]) by mailb.telia.com (8.11.6/8.11.6) with ESMTP id g1KM0Yp25065 for ; Wed, 20 Feb 2002 23:00:35 +0100 (CET) Received: from falcon.midgard.homeip.net (h185n2fls20o913.telia.com [212.181.163.185]) by d1o913.telia.com (8.8.8/8.8.8) with SMTP id XAA08562 for ; Wed, 20 Feb 2002 23:00:29 +0100 (CET) Received: (qmail 21541 invoked by uid 1001); 20 Feb 2002 22:00:29 -0000 Date: Wed, 20 Feb 2002 23:00:28 +0100 From: Erik Trulsson To: Alex Cc: Alex , =?iso-8859-1?Q?S=F8ren?= Neigaard , questions@freebsd.org Subject: Re: OT: Re: Max RAM supported by Hardware Message-ID: <20020220220028.GA21515@student.uu.se> Mail-Followup-To: Alex , Alex , =?iso-8859-1?Q?S=F8ren?= Neigaard , questions@freebsd.org References: <1556477954.20020220210026@e-box.dk> <14217053982.20020220215646@cybertron.tmfweb.nl> <15518324328.20020220221756@cybertron.tmfweb.nl> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable In-Reply-To: <15518324328.20020220221756@cybertron.tmfweb.nl> User-Agent: Mutt/1.3.27i Sender: owner-freebsd-questions@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Wed, Feb 20, 2002 at 10:17:56PM +0100, Alex wrote: > Hello Alex, >=20 > Wednesday, February 20, 2002, 9:56:46 PM, you wrote: >=20 > A> Hello S=F8ren, >=20 > A> Wednesday, February 20, 2002, 9:00:26 PM, you wrote: >=20 > SN>> Linux can as standard support up to 1GB RAM, if more is present you > SN>> need to compile the kernel with support for the large amount of RAM. > SN>> Linux also supports up to 64GB RAM, although 32bit only allows 4GB (= as > SN>> I understand it, I'm not an expert). >=20 > SN>> What about FreeBSD, is it the same here, or how does it work in the > SN>> worlds best OS? >=20 > SN>> -- > SN>> Med venlig hilsen/Best regards, > SN>> S=F8ren Neigaard mailto:neigaard@e-box.dk > SN>> -- > SN>> "Any sufficiently advanced bug is indistinguishable from a feature." >=20 >=20 > SN>> To Unsubscribe: send mail to majordomo@FreeBSD.org > SN>> with "unsubscribe freebsd-questions" in the body of the message >=20 > A> My anwser if a short off-topic anwser, but you may just like it. > A> Because one first has to look at the underlaying layer we first look > A> at the hardware. >=20 > A> A 32 bit adress structer allows for 2^32 =3D 2 * 1024^3 =3D 2G adressa= ble > A> memory locations. But there is a trick. We divered the adress in BASE > A> and OFFSET. In the case of Linux (base on what you wrote) the base > A> gets multiply by 32 (2^5). Then the offset is added to it. This is > A> posible because the software-code and data is usaly near to each > A> other, so we don't need to send the BASE alot. >=20 > A> Then the software part: Sorry i don't know this. >=20 > I overlooked something. An nother trick is to read more than just 1 > byte, offcorse. It likly that this is being done with the CPU's that > have (a lot) of registries (i.e. place where you store the base and > offset, but also tempory storing place for data). Since a Pentium > doesn't have any 8 (and 16) bits regestries. So your proberbly write > about the 4G. This trick is just a nother factor. Sorry, but you just don't seem to understand how things work. With a 32-bit address space the maximum amount of memory that can be addressed is 2^32 =3D 4Gigabytes. This is also the max that FreeBSD supports on i386. There should be no need to recompile anything. (Although there has been some reports of problems with >2G but I think that has been fixed now.) Modern x86 CPUs (Pentium Pro and later) can address up to 2^36 (=3D64G) bytes of memory. To use the extra memory requires you to play some tricks with the MMU (Memory Management Unit) to map the memory into the 4G address space. Even then you cannot really have a single process use more than 4G. This capability is currently not supported by FreeBSD and to support it would require some fairly serious rewriting of parts of the kernel. On Alpha the max that is supported is 2G. I am not sure why that limitation exists but it does. --=20 Erik Trulsson ertr1013@student.uu.se To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message