PhD Defense: Composing and Decomposing OS Abstractions

Talk
James Litton
Time: 
12.11.2020 12:00 to 14:00
Location: 

Remote

Operating systems (OSes) provide a set of abstractions through which hardware resources are accessed. Abstractions that are closer to hardware offer the greatest opportunity for performance, whereas higher-level abstractions may sacrifice performance but are typically more portable and potentially more secure. The abstractions chosen by OS designs impose a set of trade-offs that will not be well-suited for all applications.In this dissertation, we argue the following thesis: Supporting novel hardware such as non-volatile RAM (NVRAM) and new abstractions such as LwCs while maintaining efficiency, usability, and security goals, requires simultaneous access to both high-level OS abstractions and compatible access to their low-level decompositions. We support this thesis by offering two new abstractions, PTx and light-weight-contexts (LwCs), as well as the null-Kernel, a new OS architecture. PTx is a new high-level abstraction for persistence built on top of NVRAM, a new form of persistent byte addressable memory, whereas LwCs are a new OS abstraction that enables fine-grained intra-process isolation, snapshots and reference monitoring. Due to the efficiency requirements of both PTx and LwCs, both abstractions required access to low-level decompositions of higher-level abstractions, while interoperability requirements dictated that both low and high-level abstractions were exposed simultaneously. The null-Kernel is an OS architecture that enabled the simultaneous exposure of multiple abstractions for the same underlying hardware in a safe way, which, if adopted, would accelerate the development and deployment of abstractions such as PTx and LwCs.
Examining Committee:

Chair: Dr. Bobby Bhattacharjee Dean's rep: Dr. Mark A. Shayman Members: Dr. Peter Druschel
Dr. Neil Spring Dr. Dave Levin