【每周论文】Xen and the Art of Virtualization
来源:互联网 发布:mysql中的日期函数 编辑:程序博客网 时间:2024/05/21 08:55
这篇论文发表自SOSP 2013,出自剑桥大学计算技术实验室。
在当时一台物理机的成本很高,为了提高机器的资源利用率,一台物理机上通常会运行着好多程序,当其中有一个程序导致了机器崩溃会影响到在其上运行的其他程序,所以就有人提出来,将一台物理机通过一些技术将其分割为很多台机器来为不同的应用提供服务,这就是虚拟化技术。
现在已经有了很多虚拟化基础来对物理机的资源进行切分,有一些需要专门的硬件支持,有一些则不能支持现在商用的操作系统,有一些为了保证100%的二进制兼容性而牺牲了性能,其他则有一部分牺牲了安全性等。市面上很少能提供资源隔离或性能的保证,大部分只是尽力而为并冒着拒绝服务的风险。
那将一台物理机的资源进行分割来运行多个操作系统真的有那么难吗?它有一下几个难点:
- 虚拟机之前要保证相互隔离,这个隔离是指一个虚拟机在执行程序时不应该影响到其他的虚拟机的性能。
- 要支持不同类型的操作系统,因为不同的应用适用的操作系统可能不同。
- 由于虚拟化导致的额外性能开销要足够的小。
基于以上的背景,本文提出了Xen,它是一种X86架构下的虚拟机监视器,它允许多个商用操作系统在不牺牲性能和功能的前提下以一种安全并且资源可控的方式来共享硬件资源。Xen的目标是在现代服务器上支持100台虚拟机同时在线。
Xen没有采用全虚拟化(Full Virtualization),而是采用了半虚拟化(Paravirtualization)的方式,这种方式要求对guest OS(运行在Xen上的操作系统)进行一些修改。
以下是几条设计的原则:
- 支持未经修改的应用程序,因此需要对现有的ABI(Application Binary Interface)需要的功能进行虚拟化。
- 支持完全多任务系统。
- 半虚拟化,这有助于获得很高的性能和很强的资源隔离。
- 隐藏资源虚拟化带来的影响。
上图是Xen的结构图。它的核心思想就是,对原有的系统结构加入了一个抽象层。它分为三层,从底层到上层分别是物理层、Xen Hypervisor、操作系统实例层。物理层是计算机的硬件,包括CPU、网卡、物理内存等;Xen Hypervisor层负责为上层的操作系统提供虚拟化的硬件资源,并对硬件资源进行管理和分配;Xen之上就是各个操作系统的实例,最左边的OS很特殊,在启动Xen的时候,最左边的OS则自动被启动,称其为Domain0,其中运行着Xen Control Software,它控制着各个OS的启动、终止和监控。
- 【每周论文】Xen and the Art of Virtualization
- Xen and the Art of Virtualization
- Running Xen: A Hands-On Guide to the Art of Virtualization
- Xen and the Art of Virtualizati-系统所翻译
- Xen and the Art of Virtualizati-系统所翻译
- XEN - Installing and Configuring Fedora Xen Virtualization
- 论文Natural Language Processing: State of The Art, Current Trends and Challenges
- The Art and Science of Level Design
- Software Engineering and the Art of Design
- The Frontiers of Art and Propaganda
- The Art and Science of CSS [ILLUSTRATED]
- The Art and Technology of Whiteout
- The Best Damn Server Virtualization Book Period: Including Vmware, Xen, and Microsoft Virtual Server
- Device Virtualization And Management In Xen
- XEN - Xen Virtualization Essentials
- 行人检测论文笔记:Pedestrian Detection - An Evaluation of the State of the Art
- The Best Damn Server Virtualization Book Period: Including Vmware, Xen, and Microsoft Virtual Server (Paperback) Nov.2007.eBook-
- The Art of Computer Virus Research and Defense
- dfs实现单源点最短路径求解
- Java后台与js前端之间的通信问题
- 选择音视频SDK解决方案的标准技术
- Graphics2渲染图像导出的3种方式
- 机器学习实战(Machine Learning in Action)参考答案以及原始数据
- 【每周论文】Xen and the Art of Virtualization
- linux 链接器 库打桩
- python爬虫备忘(6)
- jquery遍历集合$each()使用方法
- Some Example For C++
- IDEA下载激活配置
- 虚拟地址、线性地址和物理地址的转换
- JAVA 缓存一致性协议
- Spring框架的JDBC模板和事务管理