[mkc2008] Threads and Address Spaces - Kernel-Memory Synchronisation
Udo A. Steinberg
us15 at os.inf.tu-dresden.de
Sat Apr 4 02:50:24 CEST 2009
On Fri, 03 Apr 2009 21:35:46 +0200 Jan Bierbaum (JB) wrote:
JB> Udo A. Steinberg meinte am 03.04.2009 09:10:
JB> > JB> On slide 39 it is stated that for the shared kernel memory region
JB> > JB> there is one master page directory that is updated and lazily
JB> > JB> copied to all AS on demand.
JB> > JB>
JB> > JB> While this works for right promotions what about
JB> > JB> demotion/deletion, e.g. deallocation of kernel pages? Does Fiasco
JB> > JB> never free pages it once allocated?
JB> > Fiasco uses one page directory for each address space and then shares
JB> > the page tables for the kernel part of the address space between all
JB> > page directories. So removing a page from a page table immediately
JB> > removes it from all address spaces.
JB> OK. One level up then: How about removing super pages or complete page
The regions of kernel memory that are allocated on demand use 4K pages only.
Empty page tables are not deallocated, but there can be at most 256 of them
in the kernel memory region.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 197 bytes
Desc: not available
More information about the mkc2008