《北京航空航天大学计算机学院王雷教授:“Rust-Shyper:基于Rust语言的高可靠、嵌入式Hypervisor”.pdf》由会员分享,可在线阅读,更多相关《北京航空航天大学计算机学院王雷教授:“Rust-Shyper:基于Rust语言的高可靠、嵌入式Hypervisor”.pdf(69页珍藏版)》请在三个皮匠报告上搜索。
1、Rust-Shyper:基于Rust语言的高可靠、嵌入式Hypervisor王雷北京航空航天大学计算机学院目 录C O N T E N T S研究背景与意义ARM&RISC-V平台的Rust-Shyper设计资源隔离策略设备虚拟化设计实时性优化多平台移植面临的问题Rust语言unsafe代码实验评测典型应用研 究 背 景 及 意 义德 才 兼 备 知 行 合 一常见的虚拟化方案Jailhouse HypervisorBao HypervisorEtc.德 才 兼 备 知 行 合 一主要面向的场景专用-通用图形化用户界面、传感器数据采集、人机交互、路径规划等单核-多核硬件处理器包含多个核心从而可
2、以同时运行多个任务简单一致-混合关键性需要同时运行和管理关键任务和非关键任务车载系统图形化传感器人机交互路径规划关键任务飞控导航非关键任务视频采集目标识别车载、智能座舱、无人机等混合关键系统嵌入式虚拟化德 才 兼 备 知 行 合 一要求和挑战要求和挑战 最小化可信计算基,增加系统的可靠性和安全性轻量高性能高实时隔离性效率 嵌入式对实时性能敏感,需要保障上层VM的实时性,并尽量减少VM-Exit 各个VM的硬件资源、故障等的隔离,不能相互影响 最小化系统资源和性能的开销德 才 兼 备 知 行 合 一常见虚拟化方案7 多分区实时操作系统 LynxOSLynxOS、INTEGRITYINTEGRIT
3、Y、VxWorksVxWorks 满足 ARINC 653 ARINC 653 等时间域和空间域隔离设计的软件标准 依赖于特定的RTOSRTOS;多平台移植能力差;闭源且收费昂贵基于服务器的虚拟化技术 Xen、KVM 在桌面、服务器和云计算等领域获得巨大的成功 可信计算基较大,难以通过ARINC 653 等工业安全认证 无法保证关键任务满足必要的实时性约束 使用传统C语言编程实现新型嵌入式虚拟化技术 Xvisor、XtratuM、Jailhouse、ACRN 拥有较小的可信计算基 通过资源固定分配的策略以及实时虚拟化技术保证关键任务的实时性约束 资源利用率较低、未能完全解决实时性虚拟化的问题
4、使用传统C语言编程实现德 才 兼 备 知 行 合 一Why Rust?Rust的优势高安全;高性能;社区生态;很好用的包管理;良好的FFI兼容和支持;内存安全:解决空指针、裸指针等;借用检查、生命周期概念等;线程安全:内置安全并发模型;语言级的多线程同步原言;性能:零成本抽象;泛型与静态分派;确定性内存管理,无GC;其他现代特性:包管理、函数式等系统软件系统软件:操作系统内核(rCore)Hypervisor网络协议栈需求:性能;安全性;A R M&R I S C-V 平 台 系 统 设 计德 才 兼 备 知 行 合 一ARM&RISC-V平台10对虚拟化的支持德 才 兼 备 知 行 合 一常
5、见的虚拟化方案arXiv:2303.11186v2 cs.OS 23 Mar 2023德 才 兼 备 知 行 合 一系统架构设计12 基于Rust语言的Type I虚拟机监控器,具备更好的隔离性和更轻量的代码实现。基于AArch64&RISC-V、能够支持Linux、裸应用等系统软件的运行 灵活、动态创建并配置虚拟机,能够为实时操作系统创建实时虚拟机,保障嵌入式场景的实时需求 具备资源隔离属性,保障不同虚拟机间的隔离性 实现多种模拟设备,提供基本的磁盘、网络、串口等设备的虚拟化实现,提高资源利用率 提供传统虚拟机迁移机制以及本地热更新机制,保障虚拟机监控器正常运行过程中的可靠性Rust-Shy
6、per特点德 才 兼 备 知 行 合 一Rust-Shyper目前支持的平台13Firefly ROC-RK3588S-PCQEMU(for RISCV64)NVIDIA Jetson TX2Raspberry Pi 4 Model B资 源 隔 离 策 略德 才 兼 备 知 行 合 一Rust-Shyper资源隔离策略01空间域隔离:空间域隔离是保证VM访问仅限于分配给自身资源的的重要特性。处理器核心隔离地址空间隔离02时间域隔离:时间域隔离用于确保不同关键性的VM能够获得正确的CPU指令周期分配。中断隔离 I/O设备隔离 网络隔离德 才 兼 备 知 行 合 一Rust-Shyper资源隔离