Memory management

Espen Skoglund esk at ira.uka.de
Wed Jun 29 16:54:46 CEST 2005


[Julian Stecklina]
> Hello,
> let's say in my rootserver I need a contiguous block of memory 1 MB
> in size. I would request this memory from Sigma0 via
> L4_Sigma0_GetAny and get a single Flexpage of this size.  In order
> to implement a fine-grained write-barrier on parts of this memory
> block, I need to make individual pages of this block read-only.  As
> I understand it, the privileged system call MemoryControl provides
> this functionality, but:

> a) it is privileged, but all my servers would need this
>    functionality.  How is this efficiently accomplished?

> b) MemoryControl seems to operate on whole fpages only. How do I
>    split a flexpage?

You don't need MemoryControl() to make things read-only.  Just map it
on with read-only permissions or revoke the write permission using
Unmap() with appropriate parameters.

	eSk





More information about the l4-hackers mailing list