Subject: Re: NetBSD without MMU ?
To: None <tech-embed@netbsd.org, netbsd-ports@netbsd.org, tech-ports@netbsd.org>
From: Justin Wojdacki <justin.wojdacki@analog.com>
List: tech-ports
Date: 04/12/2002 11:24:43
"Greg A. Woods" wrote:
>
> In the end I must agree that just using a modern CPU with full hardware
> paging MMU support (i.e. something NetBSD can easily run on or be ported
> to today) seems like it would always be a good engineering decision
> regardless of whether it increased the per-unit costs of some device
> with an embedded processor by some fraction.
>
As dumb as it may sound, there are cases where a couple of cents (US)
per chip can make a difference in whether or not a sale is made (note
that I'm talking about volumes in the 1e6's of chips). Also, MMU's can
make task switches (and even basic operation) less predictable, as the
time to perform an operation can vary by a larger margin now. That can
be bad in a system where you need lots of performance, but can't
afford large delays (large is a relative term here). So companies may
want processors such as the MMU-less MIPS variants, or at very least
be able to avoid using the MMU if their cpu already has one.
Of course, then their customers come around demanding *BSD or Linux
running on hardware that doesn't support those operating systems. ;)
uCLinux "solves" the problem by not implementing fork() but instead
forcing you to use vfork()/(exec() or _exit()) pairs to emulate
fork().
--
-------------------------------------------------
Justin Wojdacki
justin.wojdacki@analog.com (408) 350-5032
Communications Processors Group -- Analog Devices