CIS Homeline

 

CIS Home divider Penn Engineering divider PENN   spacer
 

 
 Emmett Witchel: Mondriaan Memory Protection 

 

Modern computer systems implement memory protection as part of virtual address translation, limiting it to the granularity of whole pages, which have grown to be 4KB or more. System developers tolerate this antique form of memory protection because previous attempts at fine-grained memory protection, for example capabilities or segmentation, have proven ungainly to program and difficult to engineer for high performance. Efficient fine-grained memory protection would remove the need for the cumbersome workarounds that appear regularly in research conferences, and would enable a new class of robust extensible software systems.

This talk presents a new solution for fine-grained memory protection called Mondriaan Memory Protection (MMP). MMP supports multiple protection domains sharing the same address space. Each domain has its own permissions table which supports (32-bit) word-level protection for arbitrary runs of words at any word boundary. Space overheads are reduced with a compressed permissions table structure, and run-time overheads are reduced by using two-levels of hardware permissions caching. Even under heavy use, space overhead is less than 9% and memory reference overhead is less than 8%. MMP works with linear addresses and so is compatible with existing instruction sets and operating systems.

The talk will cover the obvious and non-obvious data structures that are required for MMP's good performance. The talk will also discuss extensions to MMP, and present preliminary data on using MMP to enforce module boundaries in the Linux kernel.


Thursday, March 20, 2003
Moore School Bldg. - Room #216
3:00 - 4:30 p.m.

 

 

 

 


 
 
CIS Home divider Penn Engineering divider PENN   spacer