博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
虚拟化技术(1)——介绍
阅读量:5981 次
发布时间:2019-06-20

本文共 1952 字,大约阅读时间需要 6 分钟。

什么是虚拟化

虚拟化是指计算机元件在虚拟的基础上而不是真实的基础上运行。虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程。CPU的虚拟化技术可以单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。

几种虚拟化软件介绍

  • RedHat KVM

虚拟化方式:完全虚拟化

架构:寄居架构(linux内核);祼金属架构RHEV-H

特点:祼金属架构RHEV-H或在关键的硬盘和网卡上支持半虚拟化VirtIO,达到最佳性能。

I/O协议栈:KVM重用了整个Linux I/O协议栈,所以KVM的用户就自然就获得了最新的驱动和I/O协议栈的改进。

架构图:

  • VmWare ESX

虚拟化方式:完全虚拟化

架构:裸金属架构

I/O协议栈:VMware选择性能,但是把I/O协议栈放到了hypervisor里面。不幸的是,VMware kernel是专有的,那就意味着VMware不得不开发和维护整个协议栈,会导致开发速度会减慢,你的硬件可能要等一段时间才会得到VMware的支持。

架构图:

  • Citrix XenServer

虚拟化方式:半虚拟化(linux安装linux);全虚拟化(linux安装windows),硬件辅助虚拟化

架构:裸金属架构

I/O协议栈:Xen选择了可维护这条道路,它将所有的I/O操作放到了Linux guest里面,也就是所谓的domain-0里面。重用Linux来做I/O, Xen的维护者就不用重写整个I/O协议栈了。但不幸的是,这样就牺牲了性能:每一个中断都必需经过Xen的调度,才能切换到domain 0, 并且所有的东西都不得不经过一个附加层的映射。

架构图:

  • Microsoft Hyper-V

虚拟化方式:半虚拟化

架构:裸金属架构Hyper-V Server;寄居架构 Windows 2008

特点:父分区(宿主机操作系统)的位置挪到了子分区(虚拟机操作系统)的旁边,宿主机操作系统和虚拟机操作系统是平级的,没有谁依附谁之上的关系。

I/O协议栈:虚拟机看到的所有设备不再都是虚拟出来的,有部分的硬件资源是真实的物理设备。

架构图:

什么是硬件虚拟化

  • 虚拟化:从简单入手

虚拟化是一个广义的术语,是一个为了简化管理,优化资源的解决方案。如同现在空旷、通透的写字楼,整个 楼层几乎看不到墙壁,用户可以用同样的成本构建出更加自主适用的办公空间,进而节省成本,发挥空间最大利用率。这种把有限的固定的资源根据不同需求进行重 新规划以达到最大利用率的思路,在IT领域就叫做虚拟化技术。

  • 硬件虚拟化:虚拟化技术的革命

CPU的虚拟化技术是一种硬件方案,支持虚拟技术的CPU带有经特别优化过的指令集来控制虚拟过程,通过这些指令集,虚拟机可以很容易提高性能,相比纯软件的虚拟化技术会在很大程度上提高性能。

  • 纯软件的虚拟化技术

在纯软件虚拟化解决方案中,虚拟机中的操作系统其实是真是操作系统下的一个应用程序,因此,虚拟操作系统上的应用程序到实际操作系统就要比通常应用程序多经过一个通信层。

虚拟化技术分类

  • 平台虚拟化(Platform Virtualization)

针对计算机和操作系统的虚拟化。

  • 资源虚拟化(Resource Virtualization)

针对特定的系统资源的虚拟化,比如内存、存储、网络资源等。

  • 应用程序虚拟化(Application Virtualization)

包括仿真、模拟、等。

我们通常所说的虚拟化主要是指平台虚拟化技术,通过使用控制程序(Control Program,也被称 为 Virtual Machine Monitor 或 Hypervisor),隐藏特定计算平台的实际物理特性,为用户提供抽象的、统一的、模拟的 计算环境(称为虚拟机)。虚拟机中运行的操作系统被称为客户机操作系统(Guest OS),运行虚拟机监控器的操作系统被称为主机操作系统 (Host OS),当然某些虚拟机监控器可以脱离操作系统直接运行在硬件之上(如 VMWARE 的 ESX 产品)。运行虚拟机的真实系统我们称之为 主机系统。

虚拟化的未来

可以想象一下,未来的虚拟化发展将会是多元化的,包括服务器、存储、网络等更多的元素,用户将无法分辨哪些是虚,哪些是实。虚拟化将改变现在的传统IT架 构,而且将互联网中的所有资源全部连在一起,形成一个大的计算中心,而我们却不用关心所有这一切,而只需关心提供给自己的服务是否正常。虽然虚拟化技术前 景看好,但是,这一过程还有很长的路要走,因为还没有哪种技术是不存在潜在缺陷甚至陷阱的。但是相信,虚拟化技术将会成为未来的主要发展方向。

转载地址:http://nelox.baihongyu.com/

你可能感兴趣的文章
引用与指针的区别
查看>>
pygtk笔记--2.1:布局容器,VBox、Hbox、Alignment
查看>>
dtree.js树的使用
查看>>
Springboot2.1.3 + redis 实现 cache序列化乱码问题
查看>>
线程什么时候需要同步,什么时候不需要同步?
查看>>
Struts2 自定义拦截器(方法拦截器)
查看>>
Linux服务器的那些性能参数指标
查看>>
BZOJ 2302: [HAOI2011]Problem c [DP 组合计数]
查看>>
c++ 11开始语言本身和标准库支持并发编程
查看>>
.NET Core 之 MSBuild 介绍
查看>>
iOS:即时通讯之<了解篇 SocKet>
查看>>
@EnableTransactionManagement注解理解
查看>>
《JavaScript高级程序设计》读书笔记(十):本地对象Date
查看>>
linux中fork()函数详解
查看>>
从1G到5G,46年屏幕变迁下,富士康、苹果、三星、华为的浴火重生路 ...
查看>>
##II 第四单元##管理系统中的简单分区和文件系统
查看>>
用flash测试你的ircd
查看>>
白话红黑树系列之二——红黑树的构建
查看>>
客户的一张表中出现重复数据,而该列由唯一键约束,重复值如何产生的呢?...
查看>>
MySQL5.6中新增特性、不推荐使用的功能以及废弃的功能
查看>>