1、理解KVM与Qemu的关系

我们都知道开源虚拟机KVM,并且知道它总是跟Qemu结合出现,那这两者之间有什么关系呢?

首先,Qemu本身并不是KVM的一部分,而是一整套完整的虚拟化解决方案,它是纯软件实现的,包括处理器虚拟化、内存虚拟化以及各种虚拟设备的模拟,但因为是纯软件模拟,所以性能相对比较低。而广义的KVM实际上包含两部分,一部分是基于LINUX内核支持的KVM内核模块,另一部分就是经过简化和修改Qemu。KVM内核模块模拟处理器和内存以支持虚拟机的运行,Qemu主要处理I/O以及为用户提供一个用户空间工具来进行虚拟机的管理。两者相互结合,相辅相成,构成了一个完整的虚拟化平台。

2、KVM运行时的三种模式

在虚拟机运行时,有三种模式,分别是:

  • 客户模式:我们可以简单理解成客户机操作系统运行在的模式,它本身又分为自己的内核模式和用户模式。
  • 用户模式:为用户提供虚拟机管理的用户空间工具以及代表用户执行I/O,Qemu运行在这个模式之下。
  • 内核模式:模拟CPU以及内存,实现客户模式的切换,处理从客户模式的退出。KVM内核模块运行在这个模式下。

三种模式的层次关系我们可以用图简单描述一下:


3、KVM工作原理

KVM的大致工作原理:用户模式的Qemu利用接口libkvm通过ioctl系统调用进入内核模式。KVMDriver为虚拟机创建虚拟CPU和虚拟内存,然后执行VMLAUNCH指令进入客户模式,装载Guest OS并运行。Guest OS运行过程中如果发生中断或者影子缺页等异常,将暂停Guest OS的运行并保存当前上下文退出到内核模式来处理这些异常。内核模式处理这些异常时如果不需要I/O则处理完成后重新进入客户模式,如果需要I/O则进入到用户模式,由Qemu来处理I/O,处理完成后进入内核模式,再进入客户模式。

原文链接:https://blog.csdn.net/mrbuffoon/article/details/53536757

KVM-QEMU基本工作原理分析(二)相关推荐

  1. Qemu-KVM基本工作原理分析

    1.理解KVM与Qemu的关系 我们都知道开源虚拟机KVM,并且知道它总是跟Qemu结合出现,那这两者之间有什么关系呢? 首先,Qemu本身并不是KVM的一部分,而是一整套完整的虚拟化解决方案,它是纯 ...

  2. Hadoop生态圈-Zookeeper的工作原理分析

    Hadoop生态圈-Zookeeper的工作原理分析 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.   无论是是Kafka集群,还是producer和consumer都依赖于Zoo ...

  3. 原理剖析(第 009 篇)ReentrantReadWriteLock工作原理分析

    2019独角兽企业重金招聘Python工程师标准>>> 原理剖析(第 009 篇)ReentrantReadWriteLock工作原理分析 一.大致介绍 1.在前面章节了解了AQS和 ...

  4. 匿名突破网络限制 (Tor工作原理分析)

    转载自:http://blog.163.com/mike_gz/blog/static/247532200672932800/ 网管顾名思义,就是天天管着网络.想尽各种手段限制我们上网的人.在网络中订 ...

  5. 【高通SDM660平台 Android 10.0】(19) --- Camera_focus、Camera_snapshot、volume_up 按键工作原理分析

    [高通SDM660平台 Android 10.0]19 --- Camera_focus.Camera_snapshot.volume_up 按键工作原理分析 一. DTS代码配置 二. Kernel ...

  6. RxJs map operator 工作原理分析

    使用一个例子来研究 map 操作符的工作原理. 推荐阅读本文之前,先浏览这篇文章RxJs fromEvent 工作原理分析以了解相关知识. 源代码: import { Component, OnIni ...

  7. 滑环的基本结构及工作原理分析

    滑环是工业机械部件,基本原理是利用导电机械部件的折动或滚动在接触旋转部件和静止部件之间传递电能或电信号的产业部部件,作为360度旋转方式的一个相当好的解决方法,那么,下面一起了解下滑环的基本结构及工作 ...

  8. 二极管温度补偿电路工作原理分析

    众所周知,PN结导通后有一个约为0.6V(指硅材料PN结)的压降,同时PN结还有一个与温度相关的特性:PN结导通后的压降基本不变,但不是不变,PN结两端的压降随温度升高而略有下降,温度愈高其下降的量愈 ...

  9. 船型开关工作原理分析

    船型开关工作原理分析 由于疫情,这几个月一直无聊的待在家里,就把家里翻出来的旧电热锅简单的修理了一下,关于电热锅的修理博客之后有时间再写吧,这次就总结下在修过程中让我一直很头疼的船型开关的工作原理. ...

最新文章

  1. 使用adb命令控制Android
  2. PHP中文处理工具函数的用法总结
  3. 51 nod 1624 取余最长路 思路:前缀和 + STL(set)二分查找
  4. python-实现动态web服务器
  5. AdventureWorks数据库数据字典研究
  6. JVM(1.8)GC日志解析与分析
  7. 计算机win7不断重启,win7系统无故自动重启的解决办法
  8. 中国天气预报网城市对应代码
  9. 尚硅谷kylin单机版之安装Hadoop3.1.3
  10. 全面提高你的搜索技巧
  11. docker 访问宿主机网络
  12. Python爬虫基础:scrapy 框架—ltem和scrapy.Request
  13. 全局下的isFinite
  14. 摄影测量学空间后方交会
  15. 出生日期转化为岁月天
  16. Keras BatchNormalization层
  17. pandas中的滚动窗口rolling函数和扩展窗口expanding函数
  18. Java算法题:Z字形变换
  19. 2D转换分页按钮的制作流程(12)
  20. porphet论文_时间序列神器之争:Prophet VS LSTM

热门文章

  1. python语言入门n-python语言入门之字符串的一些用法
  2. python的特点和优点-Python的优点和缺点有哪些?Python语言的特点
  3. java和python的比较-Python和Java就业前景对比
  4. python导入py文件-关于python:如何从另一个目录导入.py文件?
  5. 想学python看什么书-我以前从没学过编程,学Python看什么书?
  6. python菜鸟教程n-Python 元组
  7. python写程序求1-3+5-7+...-99+101的值-python基本练习
  8. python单下划线和双下线的区别
  9. UVa11464 - Even Parity(递推法)
  10. 图解kafka - 设计原理解析