云计算基础知识:CPU虚拟化
虚拟化技术的分类主要有服务器虚拟化、存储虚拟化、网络虚拟化、应用虚拟化。
服务器虚拟化技术按照虚拟对象来分,可分为:CPU虚拟化、内存虚拟化、I/O虚拟化;按照虚拟化程度可分为:全虚拟化、半虚拟化、硬件辅助虚拟化。
将不同的虚拟化对象和程度组合,可得出9种不同的服务器虚拟化技术。
首先详细介绍下服务器虚拟化之CPU虚拟化,后续讲解中再详细介绍内存虚拟化及I/O虚拟化。
CPU虚拟化
CPU全虚拟化技术
主要采用优先级压缩技术(Ring Compression)和二进制代码翻译技术(BinaryTranslation)。优先级压缩技术让VMM和Guest运行在不同的特权级下。对x86架构而言,即VMM运行在最高特权级别Ring 0下,Guest OS运行在Ring 1下,用户应用运行在Ring 3下。因此,Guest OS的核心指令无法直接下达到计算机系统硬件执行,而是需要经过VMM的捕获和模拟执行(部分难以虚拟化的指令需要通过Binary Translation技术进行转换)。
CPU半虚拟化技术
主要采用Hypercall技术。Guest OS的部分代码被改变,从而使Guest OS会将和特权指令相关的操作都转换为发给VMM的Hypercall(超级调用),由VMM继续进行处理。而Hypercall支持的批处理和异步这两种优化方式,使得通过Hypercall能得到近似于物理机的速度。
CPU硬件辅助虚拟化技术
目前主要有Intel的VT-x和AMD的AMD-V这两种技术。其核心思想都是通过引入新的指令和运行模式,使VMM和Guest OS分别运行在不同模式(ROOT模式和非ROOT模式)下,且Guest OS运行在Ring 0下。通常情况下,Guest OS的核心指令可以直接下达到计算机系统硬件执行,而不需要经过VMM。当Guest OS执行到特殊指令的时候,系统会切换到VMM,让VMM来处理特殊指令。
CPU的虚拟化技术可以单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。
GuestOS负责第2级调度,即线程或进程在VCPU上的调度(将核心线程映射到相应的虚拟CPU上)。 大连渤海医院电话是多少 yyk.39.net/hospital/f9a8f_registers.html
VMM(Virtual Machine Monitor)负责第1级调度,即VCPU在物理处理单元上的调度。
两级调度的调度策略和机制不存在依赖关系。VMM负责物理处理器资源在各个虚拟机之间的分配与调度,本质上即把各个虚拟机中的VCPU按照一定的策略和机制调度在物理处理单元上可以采用任意的策略来分配物理资源,满足虚拟机的不同需求。
转载于:https://blog.51cto.com/14198725/2349624
云计算基础知识:CPU虚拟化相关推荐
- 云计算基础知识培训讲义
云计算基础知识讲义 (声明:版权保留,请勿转载) 在第4届云计算大会即将召开之际,根据以前内部培训的讲稿,耗时3天,重新制作了一篇PPT,涵盖云计算概述.体系架构.关键技术.行业动态等内容,其中原稿中 ...
- 应用服务器cpu类型,服务器基础知识+CPU分类详细+电源标准讲解
<服务器基础知识+CPU分类详细+电源标准讲解>由会员分享,可在线阅读,更多相关<服务器基础知识+CPU分类详细+电源标准讲解(17页珍藏版)>请在人人文库网上搜索. 1.服务 ...
- 【云计算一】云计算基础知识
目录 为什么要用云计算? 云计算怎么应对这些挑战? 云计算是什么? 云计算的应用 云计算的模式 云计算的价值 我们都知道,一般一种新技术的出现,总是由于目前面临的挑战,无法使用现有技术无法解决,聪明的 ...
- 云计算基础知识:何为混合云?
前言 混合云(Hybrid Cloud)作为云计算的一种形态,它将私有云和公有云协同工作,从而提高用户跨云的资源利用率.混合云帮助用户管理跨云.跨地域的IT基础设施,是包含了公有云和私有云中各类资源和 ...
- 云计算基础知识(一)
**文章目录: 云计算的概念 云计算的特点 云的分类 云计算影响产业 一.云计算的概念 云计算是一种基于互联网的计算新方式,通过互联网上异构.自治的服务为个人和企业用户提供按需即取的计算.广义上说,云 ...
- AWS 云产品和云计算基础知识详解
1. Amazon Web Services 云产品和云计算 1.1 Amazon EC2 简介 Amazon EC2,也被称为AmazonElastic Compute Cloud,用于在Amazo ...
- [汇编] 002基础知识-CPU和寄存器
CPU是什么 当然这里的内存不仅仅指电脑上的内存,例如:我的金士顿8G内存,七彩虹1G独显,在这里来说,显卡也是有内存的(寄存器) CPU如何控制其它部件的? 问题:CPU是如何和电脑主机中其它芯片有 ...
- linux基础知识——CPU相关知识
1.CPU处理程序过程 \qquad在存储介质中,从下至上是进程的时间加载的先后顺序,也是存储空间大小的顺序. 2.MMU(内存管理单元) \qquadMMU是位于CPU内部的一个物理器件.在程序运行 ...
- OpenStack 云计算基础知识
OpenStack Docs: Current http://docs.openstack.org/ OpenStack云计算快速入门教程 - OpenStack及其构成简介_服务器应用_Linux公 ...
最新文章
- Quixel megascans模型材质贴图合集包
- 数据结构-图-遍历-搜索
- Spring MVC modelandview
- Office 2010 Multi-language Pack download
- file的getPath getAbsolutePath和getCanonicalPath的不同
- 实现输入一个字符串,分别将大写字母、小写字母、数字、其他字符存到列表里面并且输出列表
- ThreadLocal以及增强
- 视觉工程师面试指南_选择正确视觉效果的终极指南
- 剑指offer之partition算法
- Django-Model操作数据库(增删改查、连表结构)
- apt-get install的默认安装路径是什么
- 基于低代码平台的OA系统,更灵活高效!
- Hololens2仿真器 模拟手势输入
- 十大Web压力测试工具
- 12、ABPZero系列教程之拼多多卖家工具 拼团提醒功能登录拼多多实现
- 无法对多重选择区域执行此操作
- Unity___状态栏相关
- 自定义异常:运行时期和编译时期的区别
- 什么是网络营销?网络营销简介
- ireport报表制作, 通过节点、产品类型来判断,当该节点审核通过之后,报表相对应的审核意见及签名 显示相对应的内容...
热门文章
- rust油桶用什么打_草莓用什么膨大素好?草莓膨大剂什么时间打?草莓用什么肥料膨大...
- mysql 数据库事务处理_Mysql事务处理问题 - mysql数据库栏目 - 自学php
- android sdk eclipse没导入,Android—新的eclipse导入SDK出错解决办法
- 制作五彩纸屑转场动效_何时以及如何将五彩纸屑添加到产品UI
- 【热点】React18正式版发布,未来发展趋势是?
- 跟着官方文档能学懂React Hooks就怪了
- 动图演示23个鲜为人知的VSCode快捷键
- Agilent RF fundamentals (4)- Impedance match and distortions
- iPhone 软件:xlate free 编码的好帮手!
- Haproxy+多台MySQL从服务器(Slave) 实现负载均衡