From owner-freebsd-questions@FreeBSD.ORG Thu Apr 9 16:19:46 2015 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 13D2B739 for ; Thu, 9 Apr 2015 16:19:46 +0000 (UTC) Received: from mail-ig0-x235.google.com (mail-ig0-x235.google.com [IPv6:2607:f8b0:4001:c05::235]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D1D4CFE8 for ; Thu, 9 Apr 2015 16:19:45 +0000 (UTC) Received: by igblo3 with SMTP id lo3so69040819igb.0 for ; Thu, 09 Apr 2015 09:19:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=O/8TbZ4w5kSeKvoTD4jligOxVnShXwy6tBOHc4CaenY=; b=xLOdU4Z1+bRpqgsKF10QhVi0qpDHIQz43GmkONSDXDI0+Vvssuu16YxuMyKx6UnVM4 JnKlaVaQ1fijQ0TOHTnAbF38cpQwDOqFuBHT9Ysf0cKn2GnAAUsW2c1FxjS+nQ2wyUKL uLiKuqPB0gHz79MHj2zbBnzq0Oi/brUEzt15Ca42SuyNJumaqBhyQLLhDWqiqEGR7Nwd CKPfBCjZejTWlCxlJVq4JSc50gT4S3zuu6g304y1zewUYicvcL8gGbVC5ynrCOlylYSr l6j87GPiGxJCLHwLn/o6l2A2tCvLmqyIW1twTc0sKCkMMUi4bh7p0S2UhyCQq9nZrcRu QFfQ== MIME-Version: 1.0 X-Received: by 10.107.39.72 with SMTP id n69mr47374624ion.8.1428596385146; Thu, 09 Apr 2015 09:19:45 -0700 (PDT) Sender: adrian.chadd@gmail.com Received: by 10.36.17.194 with HTTP; Thu, 9 Apr 2015 09:19:43 -0700 (PDT) In-Reply-To: <55269509.1080103@asim.lip6.fr> References: <5526408F.1090005@asim.lip6.fr> <20150409114941.692910293a8120de4dafd400@yahoo.es> <20150409114906.6dd4379c@archlinux> <55264DC5.9070606@asim.lip6.fr> <55267A63.4040503@qeng-ho.org> <55269509.1080103@asim.lip6.fr> Date: Thu, 9 Apr 2015 09:19:43 -0700 X-Google-Sender-Auth: huEJm2RvlvIDsuTD8ZuG0nBwJV0 Message-ID: Subject: Re: How FreeBSD manage more than 4GB on 32 bits architecture From: Adrian Chadd To: =?UTF-8?Q?Pierre=2DYves_P=C3=A9neau?= Content-Type: text/plain; charset=UTF-8 Cc: FreeBSD Questions X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 09 Apr 2015 16:19:46 -0000 Hi! This sounds... very exciting. I'd start by taking a look at how PAE works - you may be able to reuse all those pieces and just implement more than the 4 bits of physical address space. The interesting bits of PAE aren't just the extension of the physical addresses, but all the management of mapping things into virtual address space as required. I haven't looked at the MIPS side of things though. IIRC, on MIPS32 we only implement up to what the direct map KSEG supports, so a little PAE ish work would be required there to make things work right. So, I'd start by looking at how PAE on i386 works. I think there's a little bit of KVA exhaustion going on in -HEAD with i386 PAE that can be fixed with a little bit of attention. The rest of the basic PAE stuff should still work fine. Then if you need it for MIPS, you'll need to sketch out how you expect PAE to work on MIPS, and then make up a project for that. :) -adrian