轩辕之风资料

本文主要介绍轩辕之风资料 方法和在新技术下所面对的“挑战”,方便大家深入理解轩辕之风资料 过程。本文也将分享轩辕之风资料 所遇到的问题和应对策略,怎么解决怎么做的问题。
通过深入本文可以理解代码原理,进行代码文档的下载,也可以查看相应 Demo 部署效果。

云计算时代,计算资源如同小马哥当年所言,已经成为了互联网上的水和电。

轩辕之风

虚拟主机、web服务器、数据库、对象存储等等各种服务我们都可以通过各种各样的云平台来完成。

而在云计算欣欣向荣的背后,有一个重要的功臣,那就是虚拟化技术。可以毫不客气的说,没有了虚拟化技术,云计算无从谈起。

说起虚拟化你会想到什么?从我们常用的虚拟机三件套VMware、VirtualPC、VirutalBox到如今大火的KVM和容器技术Docker?

轩辕之风

这些技术是什么关系,背后的技术原理是怎样的,又有什么样的区别,各自应用的场景又是什么样的?

看完这篇文章,相信大家都能回答上面问题。

历史背景

什么是虚拟化技术?

维基百科中的解释是这样的:

虚拟化(技术)是一种资源管理技术,是将计算机的各种实体资源(CPU、内存、磁盘空间、网络适配器等),予以抽象、转换后呈现出来并可供分割、组合为一个或多个电脑配置环境。

对于一台计算机,我们可以简单的划分为三层:从下到上依次是物理硬件层,操作系统层、应用程序层

轩辕之风

1974年,两位计算机科学家Gerald Popek 和 Robert Goldberg发表了一篇重要的论文 《虚拟化第三代体系结构的正式要求》,在这篇论文中提出了虚拟化的三个基本条件:

  • 等价性:程序在本地计算机执行和在虚拟机中执行应该表现出一样的结果(不包括执行时间的差异)
  • 安全性:虚拟机彼此隔离,与宿主计算机隔离
  • 性能:绝大多数情况下虚拟机中的代码指令应该直接在物理CPU中执行,少部分特殊指令可由VMM参与。

那如何实现对计算机底层的物理资源的虚拟化分割呢?在计算机技术的发展历史上,出现了两种著名的方案,分别是I型虚拟化和II型虚拟化

轩辕之风

轩辕之风

图中的VMM意为Virtual Machine Monitor,虚拟机监控程序,或者用另一个更专业的名词:HyperVisor

从图中可以清楚的看到两种虚拟化方案的区别:

Type I: 直接凌驾于硬件之上,构建出多个隔离的操作系统环境

Type II: 依赖于宿主操作系统,在其上构建出多个隔离的操作系统环境

我们熟知的VMware事实上有两个产品线,一个是VMware ESXi,直接安装在裸金属之上,不需要额外的操作系统,属于第一类虚拟化。另一个是我们普通用户更加熟知的VMware WorkStation,属于第二类虚拟化。

如何实现上述的虚拟化方案呢?

一个典型的做法是——陷阱 & 模拟技术

什么意思?简单来说就是正常情况下直接把虚拟机中的代码指令放到物理的CPU上去执行,一旦执行到一些敏感指令,就触发异常,控制流程交给VMM,由VMM来进行对应的处理,以此来营造出一个虚拟的计算机环境。

不过这一经典的虚拟化方案在Intel x86架构上却遇到了问题。

全虚拟化:VMware 二进制翻译技术

不同于8086时代16位实地址工作模式,x86架构进入32位时代后,引入了保护模式、虚拟内存等一系列新的技术。同时为了安全性隔离了应用程序代码和操作系统代码,其实现方式依赖于x86处理器的工作状态。

这就是众所周知的x86处理器的Ring0-Ring3四个“环”。

轩辕之风

操作系统内核代码运行在最高权限的Ring0状态,应用程序工作于最外围权限最低的Ring3状态,剩下的Ring1和Ring2主流的操作系统都基本上没有使用。

这里所说的权限,有两个层面的约束:

  • 能访问的内存空间
  • 能执行的特权指令


轩辕之风资料部分资料来自网络,侵权毕设源码联系删除

区块链毕设网(www.qklbishe.com)全网最靠谱的原创区块链毕设代做网站
部分资料来自网络,侵权联系删除!
资源收费仅为搬运整理打赏费用,用户自愿支付 !
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台 » 轩辕之风资料

提供最优质的资源集合

立即查看 了解详情