|
|
| Author |
Topic  |
|
|
JoeBorn
Neuros Audio Team
Administrator
    
801 Posts |
Posted - 07/15/2005 : 8:44:03 PM
|
This was from an email conversation that I found interesting.
The 442 has a processor with an ARM7 without an MMU, and below is some discussion of the significance of that.
Bob: "However, to have a nice, friendly, stable system you need an MMU and enough MHz cranking under the hood."
Greg: "The only thing the MMU buys you is the ability to use the data cache and escape from memory fragmentation. However, if you use an ARM with an MMU but don't use the MMU -- i.e., use uClinux -- it will outperform Linux (see http://opensrc.sec.samsung.com/ and more specifically http://opensrc.sec.samsung.com/document/uc-linux-04_sait.pdf).
some ARM9 customers are using uClinux for its improved performance WITHOUT the MMU. Not using the MMU improves raw OS performance because you do not have to flush the caches on context switches."
jborn (at) neurosaudio.com |
Your quick response to this post: (0 total votes) I agree (0%) I disagree (0%)
|
|
|
spudmonkey
Just Posting

9 Posts |
Posted - 07/18/2005 : 1:12:02 PM
|
quote: Originally posted by JoeBorn Greg: "The only thing the MMU buys you is the ability to use the data cache and escape from memory fragmentation.
Well, we should also allow that an MMU also buys you security and protection from rogue programs. Security is usually not too important in handheld devices with no network. But protection from other programs gives better system reliability and avoids some very difficult-to-debug problems.
In the context of the above comment, we were discussing only performance issues.
quote:
However, if you use an ARM with an MMU but don't use the MMU -- i.e., use uClinux -- it will outperform Linux (see http://opensrc.sec.samsung.com/ and more specifically http://opensrc.sec.samsung.com/document/uc-linux-04_sait.pdf).
some ARM9 customers are using uClinux for its improved performance WITHOUT the MMU. Not using the MMU improves raw OS performance because you do not have to flush the caches on context switches."
This should have a caveat as well: Because you have a single address space with uClinux, you don't have to flush the caches on process context switches. This is true and it makes the uClinux context switching time an order of magnitude faster than the Linux context switching time.
But let's not forget the good performance benefits of the MMU: It can eliminate many forms of memory fragementation. In a streaming system, the page cache will be used a lot and will tend to fragment memory. uClinux will periodically try to recover memory and this can cause small hiccups in performance. With the MMU, Linux gives the possibility of eliminating hiccups to out-of-memory-due-to-fragementation problems.
Hmmm... with 2.6, uClinux and Linux have been merged. They are not separate things any more -- they are both just Linux now. So, to be accurate, perhaps we should say "Linux with a flat address space" instead of "uClinux?"
Greg |
Your quick response to this post: (0 total votes) I agree (0%) I disagree (0%) |
 |
|
| |
Topic  |
|
|
|
| Neuros Forums |
|
 |
|
|
|