On Wed, 14 Jul 1999, Neil A. Carson wrote:
> [EMAIL PROTECTED] wrote:
>
> > This sounds like it would be possible. Another idea a colleague at work
> > suggested was to make everyone share the same virtual address mappings,
> > i.e. you don't have to flush the cache on a context switch. There would
> > be one set of virtual mappings that everyone gets mapped to.
>
> I don't get you; how does this differ from what we have at the moment?
> Everything gets mapped to one address...
>
Oops! I guess I meant pretty much the same thing as you said
previously. I'm new at this stuff, and still getting my feet wet.
Basically, I was refering to have all processes mapped into the same
address space, but using the MMU for protection and such. All of the
process's have the same physical<->virtual address mappings, they just
differ on which mappings are real.
I had another thought: When you go to fill a line in the cache
(32bytes), it's always filled a line at a time. I haven't looked at the
Linux cache flushing code yet, but does it read all 32 bytes for each
cache line fill? Would it be possible to speed up the cache flushing by
reading just one word, which would fill a cache line, and then skipping
ahead 32 bytes and reading another word, thus filling another cache line?
Instead of having 8 reads per cache line fill, you would now only have
1. Just a thought.
--
Kyle Mestery | StorageTek's Storage Networking Group
[EMAIL PROTECTED] | http://www.freebsd.org/
[EMAIL PROTECTED] | http://www.netwinder.org/
Protect your right to privacy: www.freecrypto.org
unsubscribe: body of `unsubscribe linux-arm' to [EMAIL PROTECTED]