Subject: Re: NetBSD on non-MMU systems???
To: Gavan Fantom <gavan@coolfactor.org>
From: Jason R Thorpe <thorpej@wasabisystems.com>
List: netbsd-advocacy
Date: 01/08/2002 09:46:36
On Tue, Jan 08, 2002 at 03:22:52PM +0000, Gavan Fantom wrote:

 > Given that UVM and UBC are relatively new things to NetBSD, one has to ask
 > why UVM and UBC aren't already separated out.

UVM is fairly-well compartmentalized.  You just have the problem of
implementing a new malloc, etc.  The pool allocator should already
deal pretty well with no virtual memory.

Then you need to implement a new fork/exec primitive (spawn(2)?), since
in an MMU-less world, that operation pretty much wants to be atomic (and
fork(2) has to be equated to vfork(2)).

UBC is pretty heavily tied to UVM.  It does have its fingers in the file
systems, but it's pretty easy to see where, and it should be pretty easy
to put back conditional "use vfs_bio interface only".  In fact, since
vfs_bio is still used with filesystem metadata, the code is still pretty
much there.  You just won't have i/o clustering (even the old clustering
code required an MMU).

-- 
        -- Jason R. Thorpe <thorpej@wasabisystems.com>