大家之所以希望虚拟化帮助提升IT基础设施的效率,那么打破“每台服务器一种应用”的模式,根据工作负载或维护安排迁移虚拟机就是它最有吸引力的地方,它将一台计算机分成多个独立的虚拟机,能够同时支持多种不同的操作系统和应用。
如果在一个硬件系统上运行多个虚拟机,那么如何保证从最底层的CPU到最上层的应用之间,物理机与虚拟机之间的高速高效的数据交换,以及虚拟机之间的高隔离度就成了重要课题。通过研究VMware和Xen这样在Windows和Linux操作系统上的典型虚拟机产品,可以知道相较传统的进程迁移,虚拟机迁移的具有很大优势但同时带来不少挑战,例如在内存迁移、网络连接保持、用户数据迁移和虚拟机本身的效率等问题上还有提升空间。而这就需要有从底层硬件、固件到软件的同步提升,巴塞罗那就从CPU底层提供了良好的硬件支持。
例如DEV(Device Exclusion Vector)技术可以在内存中创建保护域,通过拒绝未经授权的内存访问请求,使得设备在未经授权的情况下,不得访问内存页面。实现了在硬件中嵌入安全性,从而提高虚拟机效率。
此外,为了提升虚拟机与物理机之间的数据传送及翻译转换,巴塞罗那中使用了带标签的 TLB(Translation Look-aside Buffer,地址转换后备缓冲器,它是 CPU 中的一个表,用于存储最近使用的从虚拟到物理内存翻译记录),使得在多个虚拟机同时运行时,在内存地址中切换时可以令Hypervisor知道TLB与虚拟机之间的一一对应关系,从而提高虚拟机性能。
巴塞罗那将更进一步提供硬件层的快速虚拟化索引技术(RVI),极大地提升了内存访问的性能,使虚拟化性能有75%的提升。被翻译出来的地址还被保存在巴塞罗那的大容量TLB中以进一步提高多个虚拟机之间切换的性能。
网友评论