From owner-freebsd-amd64@FreeBSD.ORG Sun Feb 27 15:46:05 2005 Return-Path: Delivered-To: freebsd-amd64@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8E07B16A4CE; Sun, 27 Feb 2005 15:46:05 +0000 (GMT) Received: from dglawrence.com (dsl-230-156.ipns.com [209.210.230.156]) by mx1.FreeBSD.org (Postfix) with ESMTP id CF51C43D1F; Sun, 27 Feb 2005 15:46:02 +0000 (GMT) (envelope-from dg@dglawrence.com) Received: from opteron.dglawrence.com (localhost [127.0.0.1]) by dglawrence.com (8.13.3/8.13.1) with ESMTP id j1RFk0TP022991; Sun, 27 Feb 2005 07:46:00 -0800 (PST) (envelope-from dg@dglawrence.com) Received: (from dg@localhost) by opteron.dglawrence.com (8.13.3/8.13.1/Submit) id j1RFk0ih022990; Sun, 27 Feb 2005 07:46:00 -0800 (PST) (envelope-from dg@dglawrence.com) Date: Sun, 27 Feb 2005 07:46:00 -0800 From: "David G. Lawrence" To: "O. Hartmann" Message-ID: <20050227154600.GI3258@opteron.dglawrence.com> References: <4221C943.8080500@uni-mainz.de> <20050227141523.GG3258@opteron.dglawrence.com> <4221E975.8090202@uni-mainz.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4221E975.8090202@uni-mainz.de> cc: freebsd-questions@freebsd.org cc: freebsd-amd64@freebsd.org Subject: Re: Kernel/Userland Mem-Space Tuning (1/3 on IA32) X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 27 Feb 2005 15:46:05 -0000 > >>sure about the exakt syntax but I know someone can change the half by > >>half parity towards 1 to 3 in > >>XP). I'm not sure whether FreeBSD divides kernel/userland address space > >>this way, I know Linux and > >>Windows does and on Windows we changed this (not yet on Linux and not > >>yet on our FreeBSD machines > >>(OS version >5.0, mostly FreeBSD 5.3-R or 5.4-PRERELEASE). > >> > >>Any help is appreciated. > >> > >> > > > > FreeBSD divides the 32bit virtual address space with 1GB for the kernel > >and 3GB for user processes. This can be changed with some kernel compile- > >time constants (primarily KVA_PAGES, however NKPT may also need to be > >increased if the kernel address space is increased). ... > Dear David. > Thank you very much. > I assumed FreeBSD do the same like Linux, but don't obviously. > > I found a lot of tweaking kernel parameters, > KVA_PAGES > VM_KMEM_SIZE_SCALE > VM_KMEM_SIZE_MAX > VM_KMEM_SIZE The last three are not related to the address space division and you should not change those under normal circumstance. > Reading some comments in sys/kern/kern_malloc.c make be a bit confused, > I do not know much about kernel's interna. > > It is nice to hear that FreeBSD do a 1/3 division, I expected a 2/2 > division like Linux does. So no need for anything changing. It's a 1:4 ratio. > Can someone please explain NKPT? I'm simply curious, didn't found a > satisfying answer via google, but a lot of source code with this in ... It's the number of page table pages that are assigned to the kernel address space. Each page maps 4MB, so 256 (the default) provides for 1GB of kernel virtual address space, leaving 3GB for user space. -DG David G. Lawrence President Download Technologies, Inc. - http://www.downloadtech.com - (866) 399 8500 TeraSolutions, Inc. - http://www.terasolutions.com - (888) 346 7175 The FreeBSD Project - http://www.freebsd.org Pave the road of life with opportunities.