2009-09-01 39 views
10

我想知道VirtualBox或VMWare Workstation等虚拟化软件是如何工作的?他们如何创建一个虚拟环境作为一个单独的计算机被操作系统占用?我几乎可以肯定这个问题的答案是非常深刻的,但我对基本理论会很满意。虚拟化软件是如何工作的?

+0

这个问题属于serverfault – Rodrigo 2009-09-01 23:56:33

+2

Rodrigo:我不这么认为,但我不确定它是否属于这里。 – 2009-09-02 00:08:17

回答

0

在最基本的意义上说,虚拟化软件使计算机内的另一台计算机。 .. 有点。 (这里有一个非常非常基本的链接:http://blog.capterra.com/virtualization-software

从更复杂的意义上讲,虚拟化软件(也称为管理程序)抽象了服务器的特征。这允许多个操作系统在单个物理服务器上运行。

0

从最简单的意义上说,虚拟化环境是指本地环境,像PHP,Javascript或Basic这样的解释型语言对于像C,C++或汇编语言这样的编译语言是什么。

执行编译后的二进制代码时,二进制机器代码直接传递给CPU。但是,当解释型语言运行时,语言应用程序会读入代码,然后决定它的含义并执行二进制程序来反映这一点。

因此,像Qemu这样的虚拟化软件在编译运行时称为x86处理器,它将读取旨在用于Mac的二​​进制文件,并且它将解释它接收到的二进制文件,将它从大的转换为小端,然后知道在Mac上的操作码X对应于x86上的操作码Y,并且在MAC上的操作码A没有x86上的等价物,因此需要在x86上调用功能B等等。硬件解释是,有人必须编写一个驱动程序,该驱动程序将运行在x86上的Qemu上,但它将向Qemu的Mac界面提供一个界面,以使Mac应用程序认为他们'重新与Mac硬件通话。