当前位置:首页 > 虚拟化 > 正文

虚拟化 原理


一、虚拟化技术原理是什么?虚拟化技术的实现原理:
虚拟化的概念很早就出现了。简而言之,虚拟化是采用某些程序并使它们与其他程序相似的过程。
将此概念应用到计算机系统中,可以让不同的用户看到不同的个体系统(例如,一台计算机可以同时运行Linux和MicrosoftWindows)。这通常称为完全虚拟化。
虚拟化还可以使用更复杂的格式,其中一台计算机似乎具有多种架构(对于一个用户来说,它是标准x86平台;对于另一个用户来说,它是IBMPowerPC®平台)。这种形式的虚拟化通常称为硬件仿真。
最后,一种更简单的虚拟化类型是操作系统虚拟化,其中一台计算机可以运行多个相同类型的操作系统。这种类型的虚拟化可以将多个服务器与一个操作系统隔离(这意味着它们都必须使用相同类型和版本的操作系统)。
虚拟化技术的工作原理:
虚拟化解决方案的基础是要虚拟化的机器。机器可能直接支持虚拟化,也可能不直接支持;因此需要管理程序层支持。虚拟机管理程序(VMM)可以被视为平台硬件和操作系统的抽象。在某些情况下,这个管理程序是一个操作系统;在这种情况下,它称为主机操作系统。
在虚拟机管理程序之上有一个来宾操作系统,也称为虚拟机(VM)。这些虚拟机是彼此隔离的操作系统,并将底层硬件平台视为自己的。但实际上,是系统管理程序给他们造成了这种错觉。
当前虚拟化解决方案的问题在于并非所有硬件都能很好地支持虚拟化。较旧的x86处理器根据执行范围对特定指令产生不同的结果。这会产生一个问题,因为虚拟机管理程序应该只在更安全的范围内运行。为此,像VMWare这样的虚拟化解决方案会预先扫描要执行的代码,从而用一些陷阱指令替换这些指令,以便管理程序能够正确处理它们。Xen可以支持无需更改的协作虚拟化方法,因为来宾知道它正在被虚拟化并且已经进行了更改。KVM会简单地忽略这个问题,如果您想要虚拟化,就会强制您运行最新的硬件。
二、什么是cpu的虚拟化技术,有什么优势???

CPU虚拟化技术是指将计算机软件环境划分为多个独立的分区,每个分区可以根据需要模拟一台计算机的技术。其技术本质是通过中间层实现计算资源的管理和重新分配,以实现资源利用率的最大化。

CPU虚拟化技术的优点在于,虽然虚拟化可以通过软件来实现,但如果CPU硬件支持的话,执行效率会大大提高,而且还可能支持64位操作系统。

详细信息:

虚拟化技术原理

虚拟机对真实的计算环境进行抽象和模拟,而VMM则每个虚拟机都是分配一组数据结构来管理其状态,包括虚拟处理器的完整寄存器集、物理内存使用情况、虚拟设备状态等。

当VMM调度虚拟机时,它会将其部分状态恢复到主机系统。无需恢复所有状态。例如,主机CR3寄存器存储由VMM确定的页表物理地址,而不是由guestOS确定的值。

主机处理器直接运行GuestOS的机器指令,由于GuestOS运行在低特权级别,当访问主机系统的特权状态时(例如写入GDT寄存器),可能会出现权限不足的情况。原因是主机是国产的。处理器会产生异常,自动将运行权归还给VMM。另外,外部中断的发生也会触发VMM。

参考来源:中关村在线-T博士讲你不懂的CPU专业术语