简述KVM架构和Xen架构
暑假最后一篇更新,因为,,,明天我就回学校了。
以下均为个人理解,如果有不对的地方还望各位dalao不吝赐教。
虚拟化
虚拟化是通过Hypervisor程序实现的,Hypervisor的作用是将硬件虚拟化提供给多个操作系统使用,是虚拟化技术的核心。
虚拟化分为两种:1型虚拟化
和2型虚拟化
。
1型虚拟化
是将Hypervisor直接安装在物理机上,然后虚拟机直接运行在Hypervisor上,Xen
就是属于1型虚拟化
。2型虚拟化
是先在硬件上安装操作系统,然后将Hypervisor作为系统的一个程序运行在系统上从而实现对虚拟机的管理,KVM
就是属于2型虚拟化
。
KVM架构
先来看一下KVM
,KVM是基于Linux
内核实现的,KVM
的内核模块叫做kvm.ko
,实现对Linux
的CPU和内存虚拟化,是Linux
的一个进程,负责VCPU
和内存
的分配,而其他设备的虚拟就交给了qemu
。
qemu
运行在用户空间,KVM
运行在内核,两者通过/dev/kvm
进行交互。
KVM
仅支持全局虚拟化。
Xen架构
再来看一下Xen
,Xen
支持全虚拟化和半虚拟化,(全虚拟化
就是运行在虚拟环境的虚拟机无法感知到自己是运行在虚拟环境之上,只会觉得自己是运行在硬件之上,半虚拟化
是运行在虚拟环境的虚拟机可以感知到自己不是直接运行在硬件环境之上)这一点不同于KVM
的仅支持全局虚拟化。Xen
是直接运行在硬件上的,也就是上面提到的1型虚拟化
,直接对硬件进行虚拟化,然后在硬件之上直接跑虚拟机,在Xen
架构中的虚拟机分为两种:Domain0
和DoaminU
.Domain0
又叫做特权虚拟机
,具有直接访问硬件和管理其他操作系统的权限,而DoaminU
就是普通的虚拟机,DoaminU
不能直接访问硬件,所有的操作都是通过驱动发送到特权虚拟机Domain0
,由Domain0
去和硬件交互再返回给普通用户,所以,Xen
架构的虚拟化需要先运行Domain0
。
Xen
架构也是对CPU
和内存
进行虚拟化,提供给虚拟机用,其余硬件访问是通过特权虚拟机
直接与硬件进行交互再返回的。
默认Domain0
VCPU和内存的大小是这样计算的:
Domain0的VCPU = 物理设备线程数 % 10
然后向上取最小的一个偶数,就是Domain0
的VCPU数。
Domain0的内存:如果物理设备的内存小于96G,那么就默认为8G,如果物理机的内存大于96G,那么Domain0的内存 = 物理机内存 *0.05 + 8G
。
简述KVM架构和Xen架构的更多相关文章
- python网络编程01 /C/S架构|B/S架构、网络通信原理、五层协议、七层协议简述、端口映射技术
python网络编程01 /C/S架构|B/S架构.网络通信原理.五层协议.七层协议简述.端口映射技术 目录 python网络编程01 /C/S架构|B/S架构.网络通信原理.五层协议.七层协议简述. ...
- 大数据处理中的Lambda架构和Kappa架构
首先我们来看一个典型的互联网大数据平台的架构,如下图所示: 在这张架构图中,大数据平台里面向用户的在线业务处理组件用褐色标示出来,这部分是属于互联网在线应用的部分,其他蓝色的部分属于大数据相关组件,使 ...
- DDD CQRS架构和传统架构的优缺点比较
明天就是大年三十了,今天在家有空,想集中整理一下CQRS架构的特点以及相比传统架构的优缺点分析.先提前祝大家猴年新春快乐.万事如意.身体健康! 最近几年,在DDD的领域,我们经常会看到CQRS架构的概 ...
- Atittit.研发公司的组织架构与部门架构总结
Atittit.研发公司的组织架构与部门架构总结 1. archi组织架构与 部门规划2 1.1. 最高五大组织机构2 1.2. 宗教事务部2 1.3. 制度与重大会议委员会2 1.4. 纠纷处理部: ...
- 常看常遇见之一——BS架构VS CS架构
常看常遇见之一——BS架构VS CS架构 1.BS架构 即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构.在这种结构下,用户 ...
- iOS应用架构谈:架构设计的方法论
缘由 之前安居客iOS app的第二版架构大部分内容是我做的,期间有总结了一些经验.在将近一年之后,前同事zzz在微信朋友圈上发了一个问题:假如问你一个iOS or Android app的架构,你会 ...
- 高吞吐高并发Java NIO服务的架构(NIO架构及应用之一)
高吞吐高并发Java NIO服务的架构(NIO架构及应用之一) http://maoyidao.iteye.com/blog/1149015 Java NIO成功的应用在了各种分布式.即时通信和中 ...
- 【转】USB协议架构及驱动架构
1. USB协议 1.1 USB主机系统 在USB主机系统中,通过根集线器与外部USB从机设备相连的处理芯片,称为USB主机控制器.USB主机控制器包含硬件.软件和固件一部分. 1.2 USB设备系统 ...
- ARM架构和X86架构对比
转载地址 我们就ARM架构的系统与X86架构系统的特性进行一个系统分析,方便用户在选择系统时进行理性.合理的比价分析. 一.性能: X86结构的电脑无论如何都比ARM结构的系统在性能方面要快得多.强得 ...
随机推荐
- Perl和操作系统交互(二):fork
fork + exec fork是低层次的系统调用,通过复制父进程来创建子进程. fork的行为 fork用来拷贝当前进程,生成一个基本完全一样的子进程. my $pid=fork(); 如果fork ...
- EXCEL文件导入时报_未在本地计算机上注册Microsoft.ACE.OLEDB.12.0提供程序
解决办法: 解决访问Excel数据源时出现 未在本地计算机上注册Microsoft.ACE.OLEDB.12.0提供程序1.确保安装了Microsoft.ACE.OLEDB.12.0驱动 http:/ ...
- [转]Docker学习之四:使用docker安装mysql
本文转自:https://blog.csdn.net/qq_19348391/article/details/82998391 Docker学习之一:注册Docker Hub账号 Docker学习之二 ...
- 第一册:lesson seventy five。
原文: Uncomfortable Shoes. Do you have any shoes like this? What size? Size five. What color? Black. I ...
- constructor C++ example
The constructor for this class could be defined, as usual, as: Rectangle::Rectangle (int x, int y) ...
- 内省(Introspector)
/** * 内省:通过反射来操作javabean * 内省类 --> Bean信息 --> 属性描述符 --> 属性的get/set对应的Method --> 进行反射 * c ...
- canvas-6shadow.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- HDU 1847 Good Luck in CET-4 Everybody!(找规律版巴什博奕)
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission( ...
- LockSupport的源码实现原理以及应用
一.为什么使用LockSupport类 如果只是LockSupport在使用起来比Object的wait/notify简单, 那还真没必要专门讲解下LockSupport.最主要的是灵活性. 上边的例 ...
- Android为TV端助力 Canvas 和 Paint用法
自定义view里面的onDraw方法,在这里我们可以绘制各种图形,onDraw里面有两个API我们需要了解清楚他们的用法:Canvas 和 Paint. Canvas翻译成中文就是画布的意思,Canv ...