Date of Award

Spring 1-1-2013

Document Type


Degree Name

Master of Science (MS)


Computer Science

First Advisor

Richard Han

Second Advisor

Eric Keller

Third Advisor

Shivakant Mishra


With almost ubiquitous reliance of our society on the cloud and datacenter today, the industry is continuously striving to push the envelope in making on-line services more autonomously scalable ie "Elastic" (Being able to expand and contract across several physical resources in a dynamic manner). Attempts to achieve this goal have been fragmented by being architected on a per-application basis. Elastic, scalable frameworks like Map-Reduce provide a good instance of such fragmentation. There are huge classes of problems that do not fit into this framework, and therefore derive none of the benefits of elastic scalability! We thus see a lot of time and effort spent in re-engineering this elasticity wheel. The massively parallel hardware architectures imminent upon us will have to satisfy the stringent performance demands of tomorrows datacenter applications. Further more, the evolution of traditional operating systems (OS) has been incrementally layered on top of design assumptions that are outdated today. This has led them to becoming highly optimized, complex projects that are unable to readily incorporate the emerging requirement of elasticity. We therefore contend that elasticity should be a first order design concern of operating systems. In this thesis, we primarily attempt to motivate the requirements and opportunities to make OS-es better suited for future datacenters by building elasticity into them as a system service available to generic applications. We question the design of a key OS abstraction, the Process, more specifically the Page Table. We reason through a possible change to this data structure along with its implications on cloud based applications. We present some encouraging results of our preliminary experiments and conclude by highlighting future research paths we'd like to pursue and their associated challenges. This work was part of a collaborative research effort which appeared under the title "Towards Elastic Operating Systems" in the USENIX XIV Workshop on Hot Topics in Operating Systems (HotOS), May 13-15, 2013.