Multikernel Architecture: Kernel-to-Kernel Isolation and Resource Management
summary
Claims a working multikernel that runs multiple isolated Linux kernel instances on one machine without a hypervisor, using enhanced kexec handover to spawn kernels, device tree overlays to describe and change CPU/memory/PCI partitions, and IPI + shared memory for fast inter-kernel comms; implementation reuses Linux hotplug, XDP/AF_XDP-style queue sharing and jpool memory, includes GitHub code and YouTube demos showing crash isolation and live kernel migration, but needs trusted kernels and better hardware queue/IPI support for full cloud-grade isolation.
AI-written summary · about
chapters (22)
- 0:00Introduction and speaker intro
- 1:05Assumptions about single-kernel systems
- 2:56History of multi-kernel research
- 5:05Micronel multi-kernel design overview
- 7:14Why use Linux kernel instead of custom
- 8:21Reusing Linux kernel infrastructure
- 9:25Design philosophy and reuse
- 10:53Resource management challenges
- 11:13Static vs dynamic resource allocation
- 13:01Device tree for resource management
- 15:50Hot-plug mechanisms for resources
- 17:36IO device isolation solutions
- 19:03Networking and storage isolation
- 22:39Cloud computing use case
- 24:51Comparison with virtual machines
- 25:53Live kernel updates
- 28:43Kernel crash auto-healing
- 30:31Kernel live debugging
- 32:16Security model and trade-offs
- 33:02Hardware support needs
- 35:13Open source and future plans
- 37:25Q&A session begins
related talks
22mLXDs: Towards Isolation of Kernel Subsystems
26mMulti-KVM Abstract
33mUnikernels and Explorations
25mLinux Kernel Dynamic CPU Isolation
16mMaking Kernel Bypass Practical for the Cloud with Junction
43mAddress Space Isolation for Enhanced Safety of the Linux Kernel
15mμEFI: A Microkernel-Style UEFI with Isolation and Transparency
21m(Ab)using Linux as a Trusted Bootloader
