﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-Kino's Blog-随笔分类-平台架构</title><link>http://www.blogjava.net/kinoviti/category/5122.html</link><description /><language>zh-cn</language><lastBuildDate>Fri, 20 Apr 2007 20:48:09 GMT</lastBuildDate><pubDate>Fri, 20 Apr 2007 20:48:09 GMT</pubDate><ttl>60</ttl><item><title>Xen 基础一 虚拟化技术比较篇</title><link>http://www.blogjava.net/kinoviti/archive/2007/04/19/112071.html</link><dc:creator>-=Kinohl=-</dc:creator><author>-=Kinohl=-</author><pubDate>Thu, 19 Apr 2007 15:06:00 GMT</pubDate><guid>http://www.blogjava.net/kinoviti/archive/2007/04/19/112071.html</guid><wfw:comment>http://www.blogjava.net/kinoviti/comments/112071.html</wfw:comment><comments>http://www.blogjava.net/kinoviti/archive/2007/04/19/112071.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kinoviti/comments/commentRss/112071.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kinoviti/services/trackbacks/112071.html</trackback:ping><description><![CDATA[ 上一篇既然已经说了，现在除了 Xen 还有 VMWare等公司也在做虚拟化，而且VMWare在这个领域简直就是老大哥，那么作为由剑桥大学推出的小黑马 Xen为什么有那么大本事在很短时间内不但吸引了软件界也吸引了硬件界呢。
原因是，Xen真的是很快，性能很好。
对于VMWare等虚拟化软件，其实他是在 虚拟操作系统 与母体操作系统(Host机器)之间采用软件实现一整套硬件的emulator，当虚拟OS运行时，动态的针对虚拟OS的内核指令进行解析和处理，维护所有虚拟硬件的当前状态，同时防止虚拟OS的指令对于真实硬件的任何状态变更。这样的一整套处理一般会占用系统全体性能的30%到50%左右。这就是所谓的微内核虚拟化技术。
而对于Xen所采用的虚拟技术叫做paravirtualization。它在系统管理层（就是OS与硬件之间那一层）中封装了一层API。虚拟OS的CPU调度，内存访问，硬件中断等等都是通过这一层API来完成。在系统管理层中，对MMU,DMA的操作作了优化，所以相比较VMware的实现方式来说，性能上有了提高。不利的点是必须要在guestOS的内核中进行修改，将所有访问硬件的API替换为使用XEN的接口API。但是相比起性能的提高来说，还是值得的。

但是 但是  但是，Xen也有它的死穴：   加载在Xen上的虚拟机需要修改其内核。
对于VMWare我们可以拿普通的 os盘直接安装，不会有太多不爽的地方(FC6下的驱动比较不爽)。可是这些盘在Xen上就别想用了，对于没有VT-x技术的普通pc机器，我们必须下载支持xen的，经过修改的os，现今为止这种os还只限于linux阵营，毕竟么，windows的内核你咋改呢。呵呵。xen在intel和amd的大力支持下，相应的提出了vt-x架构的intel CPU和AMD的Pacifica，这两种机器都支持硬件级别的xen,那么，如果您有幸得到这2种机器，恭喜你，你可以直接使用我们普通的os盘，不用再为启动domainn0而大伤脑筋了。<img src ="http://www.blogjava.net/kinoviti/aggbug/112071.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kinoviti/" target="_blank">-=Kinohl=-</a> 2007-04-19 23:06 <a href="http://www.blogjava.net/kinoviti/archive/2007/04/19/112071.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>