HSPT:跨ISA系统虚拟机的嵌入式影子页表的实际实现和有效管理
跨ISA(指令集体系结构)系统级虚拟该机具有重大的研究和实用价值。 例如,几个最近宣布的虚拟智能适用于在x86上运行智能手机应用程序的iOS手机基于PC的PC部署在跨ISA系统级别的虚拟机上机器。 此外,对于移动设备应用程序的开发, 通过更多地模拟Android / ARM环境强大的x86-64平台,应用程序开发和调试变得更加方便和高效。 然而, 虚拟化层通常会产生高性能开销。 关键开销来自内存虚拟化访客虚拟地址(GVA)必须经过多级地址转换成为主机物理地址(HPA)。 嵌入式影子页表(ESPT)方法已建议有效减少此地址转换成本。 ESPT直接将GVA映射到HPA,从而避免了冗长的访客虚拟到访客物理,访客物理到主机虚拟主机和虚拟主机来托管物理地址转换。 但是,原始的ESPT工作有一些缺点。 例如,其实现依赖于可加载的内核模块(LKM)来管理影子页表。 使用由于以下原因,LKM对于系统虚拟机而言不太理想可移植性,安全性和可维护性问题。 我们的工作提出了一种不同但更实际的实施方案解决缺点。 而不是依靠使用LKM, 我们的方法采用共享内存映射方案仅使用“ mmap”维护影子页面表(SPT) 系统调用。 此外,这项工作研究了以下方面的支持: SPT用于更详细的多处理。 装置三不同的SPT组织,并评估其实力和上标准和实际Android应用程序的弱点模拟Android / ARM的系统虚拟机x86-64系统上的平台。
用户评论