Building Mixed Criticality Linux Systems with the Jailhouse Hypervisor
Talkat Embedded Linux Conference + OpenIoT Summit North America 2017 · on Wednesday, 2017-02-22· at 17:20· Atrium Ballroom·
summary
Demonstrates running a PREEMPT_RT Linux flight stack and an untrusted payload on a single Nvidia Jetson TK1 using the Jailhouse hypervisor, with static one-to-one assignment of CPUs and MMIO devices. Built an octocopter platform; port required paravirtualizing clocks/resets and exclusively assigning the DMA controller. Measured interrupt latency: bare metal ~420 ns, under Jailhouse ~1.2 µs average (max 2.8 µs), under full system stress ~1.2–1.4 µs average (max ~7.5 µs). Identifies hardware limits from shared MMIO pages and clock controllers and offers workarounds.
AI-written summary · about
chapters (30)
- 0:00Intro
- 4:28Whats coming next
- 5:37Mixed criticality systems
- 7:11Classical approach
- 9:31Octocopter
- 10:50Critical World
- 11:53Our Approach
- 13:55Assigning Devices
- 15:00Clocks
- 15:56Memory Mapping
- 16:25Clocking
- 18:06Missing DMA
- 18:56Novia
- 21:28Jailhouse latency
- 22:54Jailhouse overhead
- 24:12Page size
- 24:55Overhead
- 26:10Memory Map
- 27:08Clock Reset Controllers
- 27:45Device Drivers
- 28:11Hardware Misbehaviour
- 29:24Conclusion
- 32:00Influence
- 33:47Power Controls
- 35:00Shared Pass
- 35:51Hypervisor Control
- 37:47Hypervisors
- 38:57Critical vs Uncritical
- 39:48Critical Cell Privileges
- 42:59Porting to a different architecture
related talks
40mZero-Overhead Virtualisation: It's a Trap!
38mBuilding Hard Real-Time Linux Systems with Xenomai
13mReliable Recovery in Partitioned Embedded Systems Using IVSHMEM and...
34mPREEMPT_RT isn't Just for Lasers: The Perfect Match
14mFreedom from memory interference
26mTuning Real-Time Linux for ARM SoCs
33mTowards PREEMPT_RT for the Full Task Isolation
26mTuning Real-Time Linux for ARM SoCs
