VirtuOS: An operating system with kernel virtualization

Ruslan Nikolaev, Godmar Back

Research output: Chapter in Book/Report/Conference proceedingConference contribution

40 Scopus citations

Abstract

Most operating systems provide protection and isolation to user processes, but not to critical system components such as device drivers or other system code. Consequently, failures in these components often lead to system failures. VirtuOS is an operating system that exploits a new method of decomposition to protect against such failures. VirtuOS exploits virtualization to isolate and protect vertical slices of existing OS kernels in separate service domains. Each service domain represents a partition of an existing kernel, which implements a subset of that kernel's functionality. Unlike competing solutions that merely isolate device drivers, or cannot protect from malicious and vulnerable code, VirtuOS provides full protection of isolated system components. VirtuOS's user library dispatches system calls directly to service domains using an exceptionless system call model, avoiding the cost of a system call trap in many cases. We have implemented a prototype based on the Linux kernel and Xen hypervisor. We demonstrate the viability of our approach by creating and evaluating a network and a storage service domain. Our prototype can survive the failure of individual service domains while outperforming alternative approaches such as isolated driver domains and even exceeding the performance of native Linux for some multithreaded workloads. Thus, VirtuOS may provide a suitable basis for kernel decomposition while retaining compatibility with existing applications and good performance.

Original languageEnglish (US)
Title of host publicationSOSP 2013 - Proceedings of the 24th ACM Symposium on Operating Systems Principles
Pages116-132
Number of pages17
DOIs
StatePublished - 2013
Event24th ACM Symposium on Operating Systems Principles, SOSP 2013 - Farmington, PA, United States
Duration: Nov 3 2013Nov 6 2013

Publication series

NameSOSP 2013 - Proceedings of the 24th ACM Symposium on Operating Systems Principles

Other

Other24th ACM Symposium on Operating Systems Principles, SOSP 2013
Country/TerritoryUnited States
CityFarmington, PA
Period11/3/1311/6/13

All Science Journal Classification (ASJC) codes

  • Software

Cite this