memory layout

Adam Lackorzynski adam at
Sat Nov 8 00:04:24 CET 2014


On Thu Nov 06, 2014 at 19:15:26 +0100, Tobias Woelfel wrote:
> I am still working on the port for openrisc and have now some questions
> concerning the memory layout. (kern/xxx/mem_layout-xxx.cpp)
> What parts are necessary, and what do they mean? For example in the arm
> architecture there is Map_x, Caps_x, Kernel_x, Pmem_x...
> Are there any restrictions on how big/small one area has to be?

All those are required that are used, if they're not there the compiler
will complain. Some are for generic code and some are for the specific
Map_base is where the first 4M are mapped (including kernel code), only
used in the architecture code.
Pmem_* then describes the area where physical memory can be mapped to.
Cap_start/end is where the cap space is, take the same size.
> What is the phys_to_pmem function supposed to do? (what does pmem stand
> for?)

Converts a physical address to the virtual one used in the kernel, and
it's probably phys-mem.

Adam                 adam at

More information about the l4-hackers mailing list