I will put my understandings related to the topic before i ask my question,
- Linux Kernel mode corresponds to ARM supervisor mode.
- Linux User mode corresponds to ARM User Mode.
- In Kernel Mode (MMU enabled) , Linux uses relative address instead of physical address. ie , physical address = relative address - PAGE_OFFSET + PHYS_OFFSET
- In User Mode (MMU enabled) , Linux uses virtual address instead of physical address. ie , physical address = MMU Translation(Virtual Address) using pte , pmd , pgd
Questions:
Is MMU enabled in supervisor mode(for kernel address).
If it is enabled , then does this means that the same MMU functions in a different way in translating Supervisor mode and User mode.
If MMU functions in a different way in different mode , please give me pointers on how mmu function is various modes.
Thanks in advance.