Page 59 - 《软件学报》2025年第9期
P. 59

软件学报 ISSN 1000-9825, CODEN RUXUEW                                        E-mail: jos@iscas.ac.cn
                 2025,36(9):3970−3984 [doi: 10.13328/j.cnki.jos.007359] [CSTR: 32375.14.jos.007359]  http://www.jos.org.cn
                 ©中国科学院软件研究所版权所有.                                                          Tel: +86-10-62562563



                                                             *
                 RISC-V    架构下的懒惰影子页表模型

                 李传东  1,2,3 ,    衣    然  1,2 ,    罗英伟  1,2,3 ,    汪小林  1,2,3 ,    王振林  4


                 1
                  (北京大学 计算机学院, 北京 100871)
                 2
                  (多媒体信息处理全国重点实验室        (北京大学), 北京 100871)
                 3
                  (中关村实验室, 北京 100094)
                 4
                  (Michigan Technological University, Houghton 49931-1295, USA)
                 通信作者: 罗英伟, E-mail: lyw@pku.edu.cn
                 摘 要: 内存虚拟化作为虚拟化技术的核心组成部分, 直接影响虚拟机的整体性能. 目前, 主流的内存虚拟化方法
                 在两维地址翻译开销与页表同步开销之间面临权衡. 传统的影子页表模型通过一套由软件维护的页表, 实现了与
                 原生  (native) 环境相当的地址翻译性能. 然而, 由于影子页表的同步依赖于基于写保护的机制, 频繁的虚拟机退出
                 (VM-exit) 会严重影响系统性能. 相对而言, 嵌套页表模型依靠硬件辅助虚拟化, 允许虚拟机的客户页表直接加载到
                 内存管理单元中, 从而避免了页表同步的开销. 然而, 这种方法的两维页表遍历却显著降低了地址翻译效率. 基于
                 RISC-V  架构下的特权级模型和虚拟化硬件特性, 提出了一种懒惰影子页表模型                      LSP (lazy shadow paging), 在保留
                 影子页表的地址翻译高效性的同时降低了页表同步开销. 懒惰影子页表模型深入分析了客户机对页表页的访问模
                 式, 将页表同步与转址旁路缓存          (translation lookaside buffer, TLB) 刷新操作绑定以降低虚拟机退出的数量. 然后,
                 利用  RISC-V  架构中对  TLB  的细粒度刷新且可拦截的特性, 无效化需同步的影子页表项, 将页表同步的软件开销
                 推迟到了首次访问该页面的时刻. 此外, 懒惰影子页表模型利用                   RISC-V  架构中全新的特权级模型, 设计了         TLB  拦
                 截的快速路径, 进一步减少了虚拟机退出带来的软件开销. 实验结果表明, 在基础                       RISC-V  架构下, 懒惰影子页表相
                 对于传统影子页表在微基准测试中降低了最多                 50%  的虚拟机退出数量. 在支持       RISC-V  的虚拟化扩展架构下, 懒
                 惰影子页表对     SPEC2006  基准测试中的典型应用相较于传统影子页表降低了最多                  25%  的虚拟机退出数量, 相较于
                 嵌套页表每次     TLB  缺失降低了   12  次访存.
                 关键词: RISC-V; 虚拟化扩展; 内存虚拟化; 影子页表; 嵌套页表
                 中图法分类号: TP316

                 中文引用格式: 李传东, 衣然, 罗英伟, 汪小林, 王振林. RISC-V架构下的懒惰影子页表模型. 软件学报, 2025, 36(9): 3970–3984. http://
                 www.jos.org.cn/1000-9825/7359.htm
                 英文引用格式: Li CD, Yi R, Luo YW, Wang XL, Wang ZL. Lazy Shadow Paging Under the RISC-V Architecture. Ruan Jian Xue
                 Bao/Journal of Software, 2025, 36(9): 3970–3984 (in Chinese). http://www.jos.org.cn/1000-9825/7359.htm

                 Lazy Shadow Paging Under the RISC-V Architecture

                                     1,2
                 LI Chuan-Dong 1,2,3 , YI Ran , LUO Ying-Wei 1,2,3 , WANG Xiao-Lin 1,2,3 , WANG Zhen-Lin 4
                 1
                 (School of Computer Science, Peking University, Beijing 100871, China)
                 2
                 (National Key Laboratory for Multimedia Information Processing (Peking University), Beijing 100871, China)
                 3
                 (Zhongguancun Laboratory, Beijing 100094, China)


                 *    基金项目: 国家重点研发计划  (2022YFB4500701); 国家自然科学基金  (62032008, 62032001, 62372011)
                  本文由“RISC-V  系统软件及软硬协同技术”专题特约编辑武延军研究员、谢涛教授、侯锐研究员、张科正高级工程师、宋威副研究
                  员、邢明杰高级工程师推荐.
                  收稿时间: 2024-08-25; 修改时间: 2024-10-15; 采用时间: 2024-11-26; jos 在线出版时间: 2024-12-10
                  CNKI 网络首发时间: 2025-06-11
   54   55   56   57   58   59   60   61   62   63   64