文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Xen虚拟机

Xen虚拟机

时间:2006-01-03  来源:麒麟大使

 
完全控制虚拟主机
—服务器系统虚拟化技术(Xen篇)
作者:北京中科红旗软件技术有限公司 旷旭卿 

  周董是一位提供虚拟主机和空间的 ISP,如今想靠服务在市场上分一杯羹确实是很困难的,他在如何吸引客户方面伤透了脑筋。

  有一天,他从在红旗工作的朋友那里得知了来自剑桥大学的虚拟化技术,名叫 Xen,离奇的名字和深邃的概念让他发生了兴趣,经过一番研究终于发现这才是他所需要的。

  下面的两段文字来自他的 blog:

  “传统的 ISP为用户提供的所谓虚拟机主机并不是严格意义上的‘主机’,而仅仅是虚拟空间,用户仅仅有根据 ISP 所提供的服务器来上传相应的应用,永远也没办法在一个不提供php服务的虚拟主机上使用php动态网页。

  而基于Xen的虚拟主机却能轻易做到一点,因为通过虚拟化技术可以在一台物理服务器上运行多个虚拟服务器,每一个虚拟主机与其他主机一起共享物理主机的硬件资源,而每一个客户都可以拥有自己的基于虚拟技术的虚拟主机,客户对自己的虚拟主机有完全的控制权,可以在虚拟主机上运行任意自己希望的服务。”

  虚拟化软件如此众多,为何独挑Xen?

  这需要从Xen的体系结构说起,Xen颠覆了传统Linux宏内核(Monolithic kernel)的实现和类Qemu/Vmware 等用户空间虚拟化技术的概念,使得性能和可靠性能够具备和真实的物理主机同级的水平。

  关于传统用户空间的虚拟化技术可以参考前一篇《在Linux上运行Windows-Qemu篇》,这里需要说明的是Xen的特殊结构,Xen颠覆了以前Linux所有代码都在ring 0级模式下运行,仅仅将Xen的内核调度代码放入ring 0,Xen的代码接近于一个微内核的概念,仅仅提供向内核提供硬件资源的共享和多个内核的调度。

  Xen内核被加载入内存后加载domain 0内核进入内存,domain 0运行于ring 1状态,比起普通优先级高,但不能干涉ring 0中的xen代码,同时domain 0仅仅能够分配部分的系统内存,剩余的空闲内存将用于创建其它虚拟机,这种设计保证了xen中的虚拟机之间被完全隔离,不会因为某一台虚拟机的崩溃导致整台电脑的死机。

  我们用domain 0来对用户提供操作接口。系统启动后其实就已经进入了domain 0的虚拟机状态,但对于用户而言可能完全无法感觉到,因为所有的服务都是照常启动。而对domain 0的操作也如同没有启动虚拟机一样,将直接影响到系统硬件。

  此时用户可以通过xm命令连接xend守护进程,对处于ring 0的xen进行调度,如启动新的虚拟机domain U,domain 0在整个系统中处于控制台的地位,只能启动一个,而domain U能够启动若干个,但他们对系统而言都是平行的,没有主次之分,domain 0也可以崩溃,而不会影响到domain U。

  但对于用户而言,可以在多个domain U中运行的服务,对于domain 0最好不要妄加动作,让它“一心一意”为系统中其他虚拟机提供调度控制功能。

  Xen的这种同时调度多个内核的设计,保证了系统的高速运行,相比之下,传统的虚拟机是启动系统之后,通过lock系统调用锁住内存中的部分空闲空间,作为虚拟机的内存,首先就要将内存管理单元(MMU)从系统中抽象出来,这对系统性能有一定降低,因为对虚拟机的内存操作需要经过操作系统转换后处理。

  同时,传统的虚拟机结构需要对操作系统提供的调用接口抽象成系统硬件,同样是对硬件的操作,Xen中虚拟机可以直接操作硬件,而普通的虚拟机中的操作系统需要先对虚拟硬件进行操作,然后由虚拟机软件转换成物理操作系统的应用软件API,再由物理操作系统转换成对硬件的操作。最重要的虚拟硬件一般都是性能较为低下的,而在昂贵的硬件上,运行虚拟机无疑是对这些硬件的一种浪费。

  篇幅所限,内容就到这里。有任何意见或者建议,欢迎与作者交流。

  E-Mail: [email protected]

  

相关阅读 更多 +
排行榜 更多 +
我是班长去广告版下载

我是班长去广告版下载

模拟经营 下载
什么鸭小游戏安卓版下载

什么鸭小游戏安卓版下载

策略塔防 下载
极光影院官方最新版本2025下载

极光影院官方最新版本2025下载

趣味娱乐 下载