Harmonizing Performance and Isolation in Microkernels with Efficient Intra-kernel
summary
UnderBridge redesigns microkernels by moving system servers into kernel space while enforcing isolation with Intel PKU/MPK, implementing a fast IPC gate that yields an IPC roundtrip as low as 109 cycles. The team builds ChCore and ports the design to seL4, Google Zircon, and Fiasco.OC, claiming up to 3.0× faster IPC than SkyBridge and up to 13.1× improvement on IPC‑heavy workloads. The design supports up to 16 PKU domains, server migration between user and kernel, and prevents privileged‑instruction escapes via VM exits plus targeted binary rewriting.
AI-written summary · about
chapters (18)
- 0:00Intro
- 0:23Monolithic Kernel and Microkernel
- 1:16Benefits and Usages of Microkernel
- 1:49Expensive Communication Cost • Tradeoff: Performance and Isolation - Inter-process communication (IPC) overhead
- 2:53IPC Overhead is considerable
- 3:57Goal: Both Ends
- 4:09New Hardware Brings Opportunities PKU: Protection Key for Userspace (aka. MPK) - Assign each page one PKEY (i.e., memory domain ID) PTE
- 5:12Efficient Intra-Process Isolation
- 6:00Intra-Process Isolation + Microkernel
- 6:24Design Choice #2
- 9:02UnderBridge: Sinking System Servers
- 9:24Design Choice #3: UnderBridge Build execution domains in the kernel page table
- 12:12IPC Gate
- 13:37Server Migration
- 15:10Privilege Deprivation
- 17:40Other Designs and Implementations
- 17:54Cross-server IPC Round-Trip Latency
- 18:49SQLite Throughput under YCSB-A
related talks
20mLimitations and Opportunities of Modern Hardware Isolation Mechanisms
22mLXDs: Towards Isolation of Kernel Subsystems
50mMPK/PKS Linux Kernel Compartmentalization
15mCore slicing: closing the gap between leaky confidential VMs and bare-metal cloud
22mHodor: Intra-Process Isolation for High-Throughput Data Plane Libraries
22mPrivbox: Faster System Calls Through Sandboxed Privileged Execution
19mRethinking Isolation Mechanisms for Datacenter Multitenancy
19mEPK: Scalable and Efficient Memory Protection Keys
