2012 · 191 citations · 30 references
ComputingComputer ScienceComputer SystemsOperating SystemsSystems ProgrammingVirtualizationApplication SandboxingKernel DesignKernel ProgrammingOperating System SecurityOperating System VirtualizationSystem CallsKernel VirtualizationPage TablesPrivilege SeparationRuntime SandboxingSafe Access ControlSafe Access DesignSandboxing ArchitectureVirtualization Support
Dune is a system that provides applications with direct but safe access to hardware features such as ring protection, page tables, and tagged TLBs, while preserving the existing OS interfaces for processes. Dune uses the virtualization hardware in modern processors to provide a process, rather than a machine abstraction. It consists of a small kernel module that initializes virtualization hardware and mediates interactions with the kernel, and a user-level library that helps applications manage privileged hardware features. We present the implementation of Dune for 64bit x86 Linux. We use Dune to implement three userlevel applications that can benefit from access to privileged hardware: a sandbox for untrusted code, a privilege separation facility, and a garbage collector. The use of Dune greatly simplifies the implementation of these applications and provides significant performance advantages. 1
30
kvm : the Linux Virtual Machine Monitor
Avi Kivity · 2007 · 1.3K citations
Dawson Engler, M. Frans Kaashoek, James W. O’Toole · 1995 · 1.1K citations
Extensibility safety and performance in the SPIN operating system
Brian N. Bershad, Stefan Savage, Przemysław Pardyak et al. · 1995 · 955 citations
Intel virtualization technology
Richard Uhlig, Gil Neiger, David L. Rodgers et al. · Computer · 2005 · 719 citations
Native Client: A Sandbox for Portable, Untrusted x86 Native Code
Bennet Yee, David Sehr, Gregory Dardyk et al. · 2009 · 553 citations