Re: Another New Hardware Thought
- From: mdj <mdj.mdj@xxxxxxxxx>
- Date: 4 May 2007 22:24:20 -0700
On May 4, 6:33 am, "Jeff Blakeney" <jeff.blake...@xxxxxxxxxxxxxxxxxxxxx
zvw-this> wrote:
In the case of an Apple IIgs MMU, having hardware memory protection to
keep tasks from walking on each other and to inform the developer or
user of what is happening would be fantastic.
I agree that in theory, it'd be nice. I'm not generally dissing the
concept of an MMU, just pointing out its overhead would outweigh any
advantage it gave.
The example you provide is the only tangible benefit adding an MMU
would provide, but consider the cost/complexity equation. Every
Toolbox/OS call would have to be thunked through a proxy interface
which adds data copy, interrupt, and context switching overhead. The
memory manager would become complex enough to be half an OS in its own
right. In order for a context switch to not chew up too many cycles or
consume a lot of memory, your page size would have to be something in
the order 128kb. On a machine with 4mb of RAM, that's only 64 possible
pages, how quick would this run out? You'd have to do swapping not
because you'd run out of physical RAM, but because the page size was
too granular, "wasting" RAM.
Then you have the realtime cost of swapping itself, which on an Apple
II would be quite high since you're only really going to get 100kb/s I/
O speed on a really good day. If you had other 'real work' for the CPU
to do and the ability to do asynchronous I/O you could amortize this
cost, but unfortunately we don't have the latter, and in many use
cases wouldn't have the former either.
In the end, all the above (and some things I've not thought of) would
be added performance overhead just to get memory protection. In short,
it's not worth it.
You could probably engineer a simple page-guard mechanism that would
give the mentioned functionality, something similar to what the 80286
could do - a processor much closer to being a contemporary of the
65816. There's a reason why virtualised memory didn't become commonly
used until the 32-bit 50Mhz+ era - you need this much 'grunt' to push
the overheads involved into 'noise'.
Matt
.
- References:
- Re: Another New Hardware Thought
- From: mdj
- Re: Another New Hardware Thought
- From: Jeff Blakeney
- Re: Another New Hardware Thought
- Prev by Date: Re: Another New Hardware Thought
- Next by Date: Re: Apple IIe Card for Mac LC II
- Previous by thread: Re: Another New Hardware Thought
- Next by thread: Re: Another New Hardware Thought
- Index(es):
Relevant Pages
|