用coLinux进行虚拟化,用 coLinux 进行虚拟化
【 tulaoshi.com - Linux 】
目前,用 VmWare、Xen 和 Kernel-based Virtual Machine(KVM)进行虚拟化非常热门。但是,您是否知道也可以让 Linux? 与 Microsoft? Windows? 进行协作?本文讨论 Cooperative Linux(coLinux),首先简单介绍虚拟化,然后讨论 coLinux 采用的方式。您还会了解如何在 Windows 上设置并运行 coLinux。在考虑 GNU/Linux 和 Microsoft Windows 时,协作可能是最后考虑的问题,但这正是 coLinux 内核的专长。对此没有信心吗?那就跳到 “coLinux 的优点” 一节。
coLinux 是 Linux 操作系统的一个端口,它在 Microsoft 操作系统中作为一个进程执行。两种操作系统通过将中央处理单元(CPU)的控制权转让给彼此而协作,如图 1 所示。
通过使用内核驱动程序,还可以共享网络接口等物理资源。后面会深入讨论这个问题。首先,我们来看看虚拟化的含义。
虚拟化
虚拟化领域虚拟化(Virtualization)是一个被滥用的词汇。在本文的上下文中,我指的是对平台进行虚拟化。对平台(或硬件)进行虚拟化意味着,硬件从物理平台抽象成一个逻辑平台集合,操作系统可以在这个逻辑平台集合上运行。按照最简单的意义,这意味着可以在同一硬件平台上运行(相同或不同类型的)多个操作系统。
提供虚拟化的系统元素常常被称为虚拟机监视器或管理器(hypervisor)。每个操作系统都使用自己的虚拟机,虚拟机与管理器协作,从而决定对物理硬件的访问(见图 2)。
与操作系统相似,可用的虚拟化方法多种多样。关于虚拟化的更多信息,请参见 参考资料 一节。
coLinux
coLinux 是标准 Linux 内核的一个端口。换句话说,coLinux 就是一个 Linux 内核,它经过修改,以与另一个操作系统协作运行。主机操作系统(Windows 或 Linux)控制操作系统的物理资源,而访客(guest)操作系统(coLinux)获得硬件的虚拟抽象。主机操作系统必须提供以特权级别(ring 0)执行驱动程序的方法,并提供分配内存的方法(见图 3)。
图 3. coLinux 作为主机操作系统的一个进程执行
coLinux 的根文件系统是主机操作系统中的一个常规文件。对于 Windows,它只是一个常规文件;但是对于 coLinux,它是一个可读可写的 ext3 文件系统。
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/linux/)[1] [2] [3] [4]
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/linux/)来源:http://www.tulaoshi.com/n/20160129/1501897.html
看过《用coLinux进行虚拟化》的人还看了以下文章 更多>>