Hasty Briefsbeta

双语

Show HN: Tiny VM sandbox in C with apps in Rust, C and Zig

2 months ago
  • #virtual-machine
  • #RISC-V
  • #embedded
  • uvm32是一个为微控制器设计的极简主义、无依赖的虚拟机沙箱环境
  • 专为资源受限设备设计,在STM32L0上仅需不到4KB闪存/1KB RAM空间
  • 作为RISC-V模拟器运行,提供管理接口和高效代码执行工具
  • 典型应用场景包括:替代嵌入式脚本引擎、隔离不可信代码、跨平台开发
  • 特性包含非阻塞设计、无标准输入输出假设、精简执行模型和安全的外部函数接口
  • 以安全性优先于速度,确保虚拟机代码不会导致宿主系统崩溃
  • 不用于硬件模拟,而是实现自定义脚本式逻辑
  • 追求小体积、易集成性,并能抵御异常虚拟机代码的影响
  • 不追求极致效率或零摩擦的外部函数接口
  • 提供C、Rust、Zig和汇编语言的示例应用
  • 包含host-mini、host-parallel和host-arduino等多种虚拟机宿主实现
  • 仅需C编译器即可移植,支持Docker快速搭建环境
  • 采用MIT许可证,适用于学术研究、商业产品和嵌入式设备开发