谈谈虚拟化技术深度解密(上)

谈谈虚拟化技术深度解密(上)

作者:佚名 2017-11-29 14:42:28

云计算

虚拟化 全虚拟化(Full Virtualization)也称为原始虚拟化技术,该模型使用虚拟机协调Guest操作系统和原始硬件,VMM在Guest操作系统和裸硬件之间用于工作协调,一些受保护指令必须由Hypervisor(虚拟机管理程序)来捕获处理。 全虚拟化的运行速度要快于硬件模拟,但是性能方面不如裸机,因为Hypervisor需要占用一些资源。

 发展历史

早在计算机还是庞然大物的上世纪60年代,虚拟化技术已经开始悄悄发展了。

  • 1964年 IBM M44/44X被认为是世界上***个支持虚拟化的系统,其技术方式是:像分时系统一样,在每个时间片,一个IBM 7044大型机独占所有硬件资源来运行,并且提出了分页的概念,由于其依赖硬件来实现虚拟化,史称硬件虚拟化。
  • 1974年,论文Formal requirements for virtualizable third generation architectures提出了虚拟化系统结构的三个基本条件[1]。
  • 1972年著名的天才法国程序员Fabrice Bellard出生。
  • 1979年的 Unix 第7版引入了 chroot 机制,chroot 就是让一个进程把指定的目录作为根目录,它的所有文件系统操作都只能在这个指定目录里进行。
  • 1990年 Xen hypervisor 的Xenoserver初始代码工程由 Keir Fraser 和 Ian Pratt 创建。
  • 1998年,很著名的 X86 模拟器 Bochs 出现了,其正式版本的推出时间为1998年11月。
  • 1999年,Vmware 公司率先推出针对 X86 平台的商用虚拟机 Vmaware workstation。
  • 2001年,目前***的采用动态二进制翻译技术的虚拟化软件 Qemu(Quick EMUlator) 发布***个版本,其作者是Fabrice Bellard。
  • 2003年,剑桥大学发布了*** Public 的 Xen 版本,通过半虚拟化技术实现了对包括 x86-64 平台多个平台的虚拟化支持。
  • 同年,Intel 公布了将在 x86 平台的 CPU 上支持虚拟化技术 VT。
  • 2007年1月,Sun 公司发布了开源虚拟化 VirtualBox 。
  • 2007年2月,Linux Kernel 主线版本2.6.20合入了由以色列公司 Qumranet开发的 KVM(Kernel-based Virtual Machine ),支持KVM的前提是 CPU 必须要支持硬件虚拟化。
  • 2008年***季度,微软连同 Windows Server 2008 同时发布了虚拟化产品 Hyper-V。
  • 2008年6月, Linux Container  发布了0.1.0版本,其可以提供轻量级的虚拟化,用来隔离进程和资源。
  • 2008年9月4,Red Hat 收购了色列公司 Qumranet,并着手开始用 KVM 替换在 Red Hat 中的使用的 Xen [Xen开始在主流Linux 发行厂商中衰落]。
  • 2010年10月21日,NASA 发布了可以提供基础设施即服(IaaS)服务的云平台 OpenStack ,并提供了***个版本。
  • 2011年1月11日,Ubuntu的创始人 Mark shuttleworth 宣布,Ubuntu 将采用 Openstack 作为基础的云平台,在之前的版本 Ubuntu 采用的是 Eucalyptus。
  • 2013年3月15,在加利福尼亚州圣克拉拉召开的 Python 开发者大会上,DotCloud 的创始人兼***执行官 Solomon Hvkes 在一场仅五分钟的微型演讲中,***提出了 Docker 这一概念,并于会后将源码进行了开源,托管在了Github上。
  • 2014年6月,Docker发布了***个正式版本1.0,彼时,Docker的下载量已经超过 275万次 ,1年之内 Redhat 和 AWS 就宣布为 Docker 提供官方支持。
  • 2015年国外国内涌现各种从事云的公司,并提供了各种云服务,诸如Laas,Paas,Saas等。

从上述时间线,我们的发现,各种如春笋般的新技术的出现,必将有旧技术的没落,技术的革新比我们想象的要快太多。

基础概念

什么是虚拟化?

这里简单归纳一下我的理解:

1. 虚拟化是资源的一种逻辑表示,并不会受限于物理资源。

2. 运行的环境不在真实的硬件上,而是硬件之上的虚拟内存中的一段,或者说是虚拟的环境中。

3. 虚拟化为数据、计算能力、存储资源等提供了一个逻辑视图,而不是物理视图。

4. 虚拟化的发展,大幅降低了IT硬件成本,减少了资源的浪费,并且提升了系统的稳定性和安全性。

全虚拟化

全虚拟化(Full Virtualization)也称为原始虚拟化技术,该模型使用虚拟机协调Guest操作系统和原始硬件,VMM在Guest操作系统和裸硬件之间用于工作协调,一些受保护指令必须由Hypervisor(虚拟机管理程序)来捕获处理。 全虚拟化的运行速度要快于硬件模拟,但是性能方面不如裸机,因为Hypervisor需要占用一些资源。

半虚拟化

半虚拟化(Para Virtualization)是另一种类似于全虚拟化的技术,它使用Hypervisor分享存取底层的硬件,但是它的Guest操作系统集成了虚拟化方面的代码。该方法无需重新编译或引起陷阱,因为操作系统自身能够与虚拟进程进行很好的协作。 半虚拟化需要Guest操作系统做一些修改,使Guest操作系统意识到自己是处于虚拟化环境的,但是半虚拟化提供了与原操作系统相近的性能。

虚拟化技术的关键特性

同质 – Equivalence

即VM的运行环境和物理机的环境在本质上是相同的,表现上允许有一些差异。如CPU的桥片必须一致,CPU core的个数以及内存可以不同,不必使用同类型的网络适配器驱动等等。

高效 – Efficiency

即VM的性能必须接近物理机。因此,常见的虚拟系统模拟器(Boches,simics等)就不能成为VM。为达此目的,软件在虚拟系统上运行时,大多数指令要直接运行在硬件上执行,只有少量指令需要VMM的模拟或翻译处理。

资源受控 – Resource control

即VMM(Virtual Machine Monitor)对物理机的所有资源有绝对的控制力。虚拟机不允许直接执行敏感指令。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/228186.html<

(0)
运维的头像运维
上一篇2025-04-18 04:41
下一篇 2025-04-18 04:43

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注