`
kungstriving
  • 浏览: 131810 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
阅读更多

 

Xen是一个虚拟机监视器(Virtual machine monitor),针对X86系列计算机设计,它能够支持多个客户计算机的同时运行,并且能够达到较好的一个性能水平和资源隔离。Xen是一个开放源代码软件,在GNU General Public License 下发布。

基本功能:

Xen通过对LinuxNetBSDSolaris内核进行一些简单修改,来提高系统虚拟化后的性能,经过修改后的内核就是Linux With Xen的一个操作系统,可以直接作为一个操作系统来使用,也就是说Xen是直接运行于硬件之上的一个操作系统(Xen技术中所称的domain 0dom0)),其他的被虚拟化的操作系统(domainU)运行于硬件之上的第二层(第一层是Xen-Linux,第二层就是客户操作系统)。

可以被虚拟化的操作系统包括UNIX-like系列(经过修改可以作为客户操作系统),对于Microsoft Windows操作系统可以不经修改运行于Xen V3.0以上的版本,但是需要CPU支持IntelVT技术或者AMDV技术

技术特点:

       半虚拟化(Paravirtualization)或叫做超虚拟化技术,该技术需要客户操作系统做一些修改。这种技术意味着客户操作系统被修改之后,使用特殊的系统调用ABI,而不是调用原有的接口。通过这种超虚拟化技术,Xen能够达到高性能。

       在硬件支持的情况下,允许不经修改的客户操作系统运行。IntelVT技术和AMDV技术。

可控性:

功能特点:

虚拟机的性能更接近真实硬件环境)

在真实物理环境的平台和虚拟平台间自由切换)

在每个客户虚拟机支持到 32个虚拟CPU,通过 VCPU热插拔)

支持PAE指令集的x86/32, x86/64平台

通过Intel 虚拟支持VT的支持来用虚拟原始操作系统(未经修改的)支持(包括Microsoft Windows

优秀的硬件支持.支持几乎所有的Linux设备驱动

应用范围:

服务器整合:在虚拟机范围内,在一台物理主机上安装多个服务器, 用于演示及故障隔绝;

无硬件依赖:允许应用程序和操作系统对新硬件的移值测试;

多操作系统配置:以开发和测试为目的,同时运行多个操作系统;

内核开发:在虚拟机的沙盒中,做内核的测试和调试,无需为了测试而单独架设一台独立的机器;

集群运算:和单独的管理每个物理主机相比较,VM级管理更加灵活,在负载均衡方面,更易于控制,和隔离;

为客户操作系统提供硬件技术支持:可以开发新的操作系统, 以得益于现存操作系统的广泛硬件支持,比如Linux

局限:

是否开源:

      

备注:

       http://jailtime.org/这个网站上提供了很多Linux操作系统的压缩包,可以直接下载用于Xen的虚拟操作,这些压缩包中已经添加了内核和一些基本的软件包。

       Linux发行版Ubuntu8.10Server版中,最新加入了关于虚拟化技术,可以通过VM-Builder来很迅速的建立一个虚拟环境。

       如果使用IntelVT技术的CPUXen可以虚拟不经任何修改的操作系统,例如Windows


 

 

Xen VMM是一个剑桥大学的开源项目,它可以创建多个虚拟机。这些虚拟的客户操作系统是一个修改过的Linux kernel2.4或者2.6,或者是一个修改过的NetBSDFreeBSD。运行于其上的应用程序保持原样,不需要改变就可用。Sun公司同样也正在开始基于Xen的项目--Solaris-on-Xen port.

全虚拟化是通过一些硬件模拟器,这其中的一个最为流行的开源项目就是Bochs IA-32 Emulator另一个就是qemu.而对于硬件模拟器的一个明显的劣势就是它们的性能。

Xen项目(半虚拟化)所依赖的思想并不是新的。它可以达到较高的性能。但是通过处理器的支持,Xen可以不对操作系统进行修改就虚拟化。例如:intelVT技术以及AMDPacifica处理器。

20058月,XenSource一个开发基于Xen的虚拟化解决方案的商业公司,对外宣布,利用IntelVT技术已经可以对windows进行虚拟化。

在这个领域中,Vmware是一个商业公司开发ESX Server,但是它并没有基于Xen项目进行开发。Vmware2005年的8月宣称它将开放它的ESX Server的源代码,VMware Community Source

一个Vmware明显的有点就是它并不需要对于客户操作系统进行修改。VMWare的解决方案大概会比Xen慢一些,因为它使用影子页表,然而Xen使用的是直接和影子页表。

Xen同样对Intel的新技术IA-64留有开发接口,对于其他类型处理器的支持正在开发过程中。

 

 

1.       Xen采用由IBM VM/370发起的“whole machine”虚拟化技术,但是做了一定的修改,Xen并没有完全的将底层机器进行虚拟化,而只是将客户计算机进行部分的修改来与Xen的核心管理部件进行交互,因为将一个操作系统移植到一个新的硬件平台只需要修改的是依赖于硬件的代码,其用户级的API是不需要变化的。

除过导出虚拟化的CPU,内存,网络以及块设备,Xen还向外暴露一组控制接口,这些接口控制这些虚拟化过的资源是如何在不同的运行操作系统直接分配的。这组控制接口严格限制在特定的domain下,既dom0也就是Xen本身。

2.       虚拟架构:

在一个Xen/x86系统中,只有hypervisor超级管理程序运行在最高特权级(ring 0)。它能够操作物理内存,负责对各个客户操作系统分配内存。

在一个32位的x86系统中,客户操作系统使用ring 1,ring 2 或者ring 3。这些分配严格限制了客户操作系统可能访问到Xen的地址空间。期望的是大多数的客户操作系统都能够运行在ring1下,而将其应用程序运行在ring 3下。

64位的操作系统下,不可能将超级管理程序与不可信的运行在ring1ring2下的客户代码相隔离。所以客户操作只能被严格限制运行在ring3下。而客户操作系统的核心是通过上下文转换来与用户应用程序隔离的。

  • 大小: 22.4 KB
分享到:
评论

相关推荐

    Professional Xen Virtualization

    **第2章:Xen介绍** 这一章节主要介绍了Xen的基本概念、发展历程以及它在虚拟化领域的地位。通过本章的学习,读者可以了解到Xen是如何实现虚拟化的,以及它与其他虚拟化技术的区别。 **Xen虚拟化的工作原理:** -...

    Xen manual

    Xen 手册是一份详尽的技术文档,主要介绍了 Xen 虚拟化平台的相关信息和技术细节。Xen 是一个开源项目,它为多种操作系统提供了一个高性能、高可靠性的虚拟化环境。下面将根据手册中的内容对 Xen 的基本概念、许可...

    xen虚拟化实战

    本书首先介绍了虚拟化的基本概念和Xen的历史背景,让读者对虚拟化技术有全面的理解。接着,它详细阐述了Xen的架构,包括 Xen Hypervisor、Domain 0(特权虚拟机)和非特权虚拟机(Domain U),以及它们之间的交互...

    Xen3.0虚拟机入门

    #### 常见的虚拟机软件介绍 **1. 老牌VMWare** - VMWare是最早出现的商业虚拟机软件之一,提供了强大的虚拟化解决方案,广泛应用于企业和数据中心。 - 特点包括高度的稳定性和丰富的管理功能,支持多种操作系统。...

    xen虚拟化技术的介绍

    ### Xen虚拟化技术详解 #### Xen概述 Xen是一款强大的虚拟化引擎,支持多种操作系统,如Linux、Solaris/x64、BSD等。作为一个开源项目,Xen已经被移植到多种CPU架构上,包括X86、X86_64、Itanium、ARM等。Xen被...

    Memory CoW in Xen

    Memory CoW in Xen xen memory cow 介绍

    虚拟机xen权威资料集合

    2. **Xen虚拟化技术**:"Xen Virtualization A Practical Handbook"和"Prentice[1].Hall.The.Definitive.Guide.to.the.Xen.Hypervisor.Nov.2007.pdf"详细介绍了Xen虚拟化的实现技术,包括内存管理、I/O虚拟化、网络...

    Xen虚拟化技术

    《Xen虚拟化技术》主要讲述了:目前,无论是学术界还是工业界,..., (4)Xen前沿工作:对Xen全虚拟化技术的原理进行介绍,通过硬件虚拟化技术实现对Xen全虚拟化的支持,并以Intel VT技术为重点介绍硬件虚拟化的知识。

    精通Xen虚拟技术 Wrox.Professional.Xen.Virtualization

    - **命令参考**:详细介绍`xm`命令及其选项的使用方法。 - **配置文件参考**:解释Xen虚拟机配置文件中的各项参数含义及设置方法。 通过本书的学习,读者不仅可以掌握Xen虚拟化技术的基本原理和操作流程,还能深入...

    基于centos操作系统的xen安装文档

    本文将围绕Xen的基本概念、安装步骤、配置过程以及基本的使用方法进行详细介绍。 ### Xen简介 Xen是一款开源的虚拟机监控程序(hypervisor),能够使多台操作系统在同一台物理服务器上运行,每台操作系统被称为一...

    xen xm命令手册

    该手册详细介绍了xm命令的使用方法,包括创建、暂停、关闭域,列出当前域,启用或锁定虚拟CPU,以及附加或分离虚拟块设备等功能。 首先,我们需要了解Xen是一个开源的虚拟机监视器,它支持x86、x86-64、IA64以及...

    xen文档的分析

    - **第一节 页表模式**:这部分介绍了Xen支持的不同类型的页表模式。 - **第二节 dom0页表的构建**:这部分描述了如何构建dom0的页表。 - **第三节 domU页表的构建**:这部分讨论了如何为非dom0的域构建页表。 - **...

    xen相关的资料

    该文档主要介绍了使用SUSE Linux Enterprise Server 11 SP3进行Xen虚拟化的设置与管理。 ##### 1.1 基本组件 Xen虚拟化平台包括以下基本组件: - **Xen Hypervisor**:这是Xen的核心部分,负责在物理服务器上创建...

    xen虚拟化技术

    xen虚拟化技术 介绍的是Xen架构的相关知识,把Xen及相关的虚拟化技术详细的介绍一下。

    xen虚拟机调用usb设备

    本文将详细介绍如何在Xen虚拟机中实现USB设备的Pass-through(透传),并提供具体的步骤和注意事项。 #### 二、基础知识 在深入了解具体操作之前,我们首先需要了解一些基础知识: 1. **Xen虚拟化平台**:Xen是一...

    虚拟机管理工具Xen简介与使用

    **Xen虚拟化技术概述** Xen是一款强大的开源虚拟化平台,主要用于创建和管理虚拟机。作为虚拟化领域的先驱之一,Xen以其...Xen的文档详细介绍了如何安装、配置和管理Xen环境,对于深入理解和使用这一技术至关重要。

    Xen hypervisor for auto

    #### 背景介绍 现代汽车已经不仅仅是交通工具那么简单,它们成为了连接驾驶者与数字世界的重要接口。随着车联网技术的发展,汽车不仅需要具备高速的数据处理能力,还需要确保系统的稳定性和安全性。因此,如何利用...

    Xen的相关学习资料 —— Hypervisor.pdf

    本文将根据提供的文件内容,详细介绍Xen Hypervisor的基本概念、架构以及关键组件。 #### 一、Xen Hypervisor 基本介绍 **Xen Hypervisor**是一种运行在物理硬件上的软件层,能够允许多个操作系统(称为客户机或域...

Global site tag (gtag.js) - Google Analytics