RISC-V-Based Sandboxing for Secure and Efficient Software Execution
Talkat LinuxCon @ Open Source Summit Japan 2023 · on Tuesday, 2023-12-05· at 12:05· Conference Room 1 (3F Level), Ariake Central Tower Hall + Conference, 3-7-18, Ariake, Koto-ku·
summary
rv32emu is a compact ~10k‑line RV32 simulator that runs RV32IM ACF binaries, reduces memory footprint, and matches or beats Spike for interpreter-only workloads and approaches QEMU when its baseline JIT via clang kicks in. It implements tail-call optimization, block‑chaining, micro‑operation fusion and C‑routine substitution, uses an LFU block cache and memory pool to bound basic‑block growth, runs classic PC games, and plans tiered JIT to close remaining hotspot gaps.
AI-written summary · about
chapters (21)
- 0:00RISC-V simulator project intro
- 1:31Project goals and achievements
- 2:34Designing performance and security
- 5:26Interpreter architecture
- 6:50Tail optimization and blockchaining
- 8:59Micro-operation fusion
- 11:07C library routine substitution
- 13:18Optimizing CPU state updates
- 15:49Memory usage with LFU cache
- 17:35Experimental results comparison
- 18:58Interpreter strategy summary
- 19:40Baseline JIT compiler
- 23:53Integrated JIT architecture
- 25:00JIT compiler performance
- 25:42SIMU project overview
- 26:25Project conclusion and future
- 27:19Q&A security and JIT
- 28:44Q&A cycle emulation accuracy
- 29:49Q&A host system support
- 31:21Q&A future development
- 33:11Q&A C code generation
related talks
13mEarly RISC-V Software Verification with SIM-V
50mForking QEMU to emulate and secure the Tillitis TKey
50mInitializing RISC-V A Guided Tour for ARM Developers
11mRunning Quake on RISC V with Virtual Platforms
21mRISC-V Nested Virtualization
36mExploiting Buffer Overflows on RISC-V
32mDeveloping the RISC-V Hypervisor Extensions in QEMU
01h 01mThe Genius of RISC-V Microprocessors
