Re: MMU vs no-MMU

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Sat, Apr 5, 2008 at 9:21 AM, Mulyadi Santosa <mulyadi.santosa@xxxxxxxxx> wrote:
Hi

On Fri, Apr 4, 2008 at 12:41 PM, Peter Teoh <htmldeveloper@xxxxxxxxx> wrote:
> Just learned that ARM9 processor can have MMU and no-MMU mode.   Is
>  that correct?   So what are the consequences of having no-MMU - what
>  are the implications in the "processes" architecture?

I know nothing about ARM arch but perhaps I can share my thoughts
about MMU vs no MMU. Put it simply, you can't depend on paging in no
MMU environment....so, let's assume in x86 env, you just left with
segmentation for "creating memory boundary between processes".

technically u are right, x86 only offer seg + paging.   but under the arch directory - for all the arch that offer CONFIG_MMU option, there is no x86 (ie, no-MMU is not an option for x86), am I right?  (never heard of this before, just making deduction).

and as for the technical reason for this???   Please share....

but for other arch like arm, frv, sh, m32r - CONFIG_MMU is offered, and therefore possibly no-MMU is possible by removing this.

 
For task switching, I think it's just a matter between primarily
reloading paging registers vs just segmen registers. Also, with flat
memory, it would be harder to tackle non contigous allocation or
dealing with fragmentation because you can't present the process with
virtually contigous memory area.

I am open for criticism here....

regards,

Mulyadi.

As for problems encountered:   I remembered this site has a good summary page some time back:   www.uclinux.org (its mission is the following):  

The Linux/Microcontroller project is a port of Linux to systems without a Memory Management Unit (MMU).

But now I cannot find it now.   So that's why I asked the question here.

For two recent thread talking about this:

http://www.gossamer-threads.com/lists/linux/kernel/900584

http://fixunix.com/embedded/340109-embedded-linux-without-mmu.html

A lot of the answer to our discussion here seemed to be found here:

http://www.internals.com/articles/protmode/protmode.htm

Take a look.....for example, still unanswered question like:

what are key results of x86 removed of its paging disabled?   does it worked in protected mode?   and what is the max range of memory it can accessed?   task switching will be disabled if paging disabled - right?   so is it possible to implement swap mechanism? (swapping requires page fault - and paging and page fault does not have any relationship, right?)

BUT - all the above are questions just for sake of knowledge per se, and in Linux Kernel at least, it does not exists for x86 - so far.   So it almost have no practical purposes knowing the answer :-), or may be I am wrong?


--
Regards,
Peter Teoh

[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux