safeL4: Rethinking Safe-Language-Based Single Address Space Microkernels

arXiv:2610.35999 · cs.OS, cs.CR, cs.PL · Submitted 2026-10-26 · Read on arXiv

cs.OS, cs.CR, cs.PL

Submitted: 2026-10-26

Updated: 2026-10-26

Comments: ASPLOS'27

DOI: 10.1145/3845814.3850085

License: http://creativecommons.org/licenses/by/4.0/

The gist: Microkernels provide good features such as high security, safety, and flexibility, but their reliance on hardware-based isolation leads to heavy performance overhead, limiting their widespread

Abstract

Microkernels provide good features such as high security, safety, and flexibility, but their reliance on hardware-based isolation leads to heavy performance overhead, limiting their widespread adoption. Although constructing single-address-space microkernels based on safe language-based isolation is a promising approach to addressing the performance issue, this approach still faces challenges in maintaining the principle of minimality and enforcing capability-based, fine-grained access control over system resources. We propose safeL4, an approach to constructing microkernels based on safe languages. It guarantees minimality through low-level abstractions for unsafe operations, and implements a capability system based on the safe language's object capabilities to achieve fine-grained access control over all operations on system resources. We implement a prototype system in Rust, and our evaluation results show that the primitives provided by safeL4 are, on average, 1.9 times faster than those of seL4.

Related papers