当前位置: 首页 > news >正文

爱网站长尾关键词挖掘工具学风建设网站版块

爱网站长尾关键词挖掘工具,学风建设网站版块,纺织服装板块上市公司网站建设,制作网站的素材《QEMU/KVM源码解析与应用》 - 王强 概述 虚拟化简介 虚拟化思想 David Wheeler:计算机科学中任何问题都可以通过增加一个中间层来解决。 虚拟化思想存在与计算机科学的各个领域。 主要思想:通过分层将底层的复杂,难用的资源虚拟抽象为简…

《QEMU/KVM源码解析与应用》 - 王强

概述

虚拟化简介

虚拟化思想

David Wheeler:计算机科学中任何问题都可以通过增加一个中间层来解决。

虚拟化思想存在与计算机科学的各个领域。
主要思想:通过分层将底层的复杂,难用的资源虚拟抽象为简单用于的资源,提供给上层使用。
(comment:驱动软件也是对设备的一种虚拟化?进程是对CPU的一种虚拟化?)

机器码,汇编,到C语言,再到高级语言,本质也是一个不断虚拟化的过程,将底层复杂的接口转变为上层容易使用的接口

虚拟机简介

虚拟机,Virtual Machine,VM
机,机器,只要能提供一个执行环境,完成用户指定任务的对象都可以叫做机器。

最简单的虚拟机是进程:
在这里插入图片描述
模拟器是另一种形式的虚拟机。模拟器可以使 为一种硬件指令集(ISA)编译的程序 运行在 另一种硬件指令集 上。
解释:对程序的源ISA指令一条一条进行分析,然后执行相应的ISA指令上的操作,感觉有点像解释器
二进制翻译:源ISA指令翻译为目标ISA上对应功能的指令,再在目标ISA机器上执行
在这里插入图片描述
典型模拟器:QEMU的用户态程序模拟,Bochs

高级语言虚拟机在模拟器的基础上更进一步:将源ISA和目的ISA完全分开
在这里插入图片描述
高级语言虚拟机一般会设计一套虚拟ISA
高级语言虚拟机的程序中没有任何具体物理ISA指令,都是自己定义的虚拟的指令,通常叫做字节码

一个想要运行这种虚拟ISA指令的物理ISA平台都需要实现一个虚拟机,该虚拟机执行虚拟ISA指令到物理ISA指令的转换。
(comment:底层的load确实很重,这就相当于每个平台都要实现一遍类似的指令映射表)
程序员通过高级语言编写程序,必须要考虑它运行的平台。

典型的高级语言虚拟机:JVM,python虚拟机

进程,模拟器,高级语言虚拟机,都只是提供了指令的执行环境
而系统虚拟机提供一个完整的系统环境。
在这里插入图片描述
虚拟机提供的完整系统环境中,能够运行多个用户多个进程。
通过系统虚拟化技术,可以在单个宿主机硬件平台上,运行多个虚拟机,每个虚拟机都有完整的虚拟出的硬件平台(如虚拟的CPU ,内存,虚拟外设等),虚拟机之间相互隔离。

管理全局的物理资源的软件,叫做虚拟机监视器,virtual machine monitor,VMM
VMM通过分时复用的方法,让硬件资源在各个虚拟机之间进行分配
VMM <-----> 硬件资源 <-----> 虚拟机
操作系统 <-------> CPU资源 <------> 进程

典型的虚拟化方案:

  1. VMware Workstation(VMware)
  2. HyperV(微软)
  3. Virtual Box:德国公司开发,甲骨文收购
  4. Xen:早期开源虚拟化方案。

历史

QEMU最开始是法国程序员Fabrice Bellard开发的一个模拟器。QEMU能够完成用户程序模拟和系统虚拟化虚拟

用户程序模拟:QEMU能够将一个平台编译的二进制文件运行在另一个平台,一个arm指令集的二进制文件可以通过QEMU的TCG引擎(Tiny Code Generator)处理处理之后,ARM指令转化为TCG中间代码,然后再转换成目的平台的代码.
系统虚拟化模拟指QEMU能够模拟出一个完整的系统虚拟机,这个虚拟机有自己的CPU,芯片组,虚拟内存以及各种虚拟外部设备。

QEMU能够模拟的平台很多,包括x86, ARM, MIPS, PPC等

虚拟化技术天生适用于云计算。云计算提供了一种按需服务的模式,让用户能够方便的更具自己的需要来使用各种计算,网络,存储资源。比如算力,用户可以指定不同CPU模型和内存规格的虚拟机,按需付费。云计算平台可以同伙系统虚拟化技术很方便地为用户提供所需配置的资源,如果用户删除资源,云计算平台可以直接删除对应虚拟机。

早期QEMU都是软件模拟,性能上不能满足要求。早期云计算平台通常使用Xen作为底层虚拟化平台。Xen是在x86架构上直接完成的虚拟化,这就需要修改虚拟机内部的操作系统,Xen的整个VMM非常复杂

intel和amd在2005年左右开始在CPU层面提供对系统虚拟化的支持,这就是硬件虚拟化。
intel在X86指令集基础上增加了一条VMX扩展指令VT-x,为CPU新增了运行模式,通过新的硬件虚拟化质量,可以方便地构造VMM
x86虚拟机的代码可以原生的运行在物理CPU上

以色列公司Qumranet基于新的虚拟化指令集实现了KVM。它现在是一个内核模块。
KVM导出了一系列接口到用户空间,用户空间可以使用这些接口创建虚拟机。
最早KVM只负责最核心的CPU虚拟化和内存虚拟化部分,使用QEMU作为其用户态组件,负责完成大量外设的模拟,该方案当时被叫做QEMU-KVM

http://www.yayakq.cn/news/481194/

相关文章:

  • 用dw做的网站生成链接吗初识网站开发流程图
  • 中文域名的网站婚纱摄影网页模板
  • 产品营销网站建设wordpress与joomla
  • 教育培训网站制作长沙公共资源交易电子服务平台
  • 深圳 网站建设 公司清水模板
  • 开封府景点网站及移动端建设情况如何查询公司的详细信息
  • wordpress网站建设教程专业做网站路桥
  • 用dw制作网站模板部门网站建设目的
  • 国外做giveaway的网站做临时工看哪个网站
  • 专门做h网页游戏的网站上海网站设计团队
  • 静海区网站建设推广网站建设提成
  • 深圳网站 制作信科便宜阜宁专业做网站的公司
  • ppt效果网站国家信息企业公示网官网登录入口
  • 在ps中做网站首页的尺寸太原自助建站系统
  • 山丹做网站的公司佛山微网站价格
  • 常州网站建设哪儿好薇有哪些免费做网站
  • 旅游网站的建设的意义最新国际新闻10条
  • 网站开发环境和运行环境广告公司名字大全创意
  • 公司网站怎么做才能有官网二字网站如何改首页模块
  • 协同办公oa搜索引擎关键词快速优化
  • 网站备案 名称 不一致吗试析媒体网站品牌建设
  • 做网站图片要求wordpress找回密碼
  • 企业的建站方式详情页设计详细教程
  • 茶叶网站建设策划方案 u001f智慧团建重置密码验证码
  • 网站流量查询平台网站建设哪里培训
  • 韩国flash网站在线平台
  • 网站建设评审表企业宣传类网站建设
  • 手机版网站制作模板app软件开发公司推荐
  • 毕业设计做网站 答辩会问什么问题临沂做百度网站软件公司
  • 唐山网站建设500元网站自然排名