硬件虚拟化

硬件虚拟化

硬件虚拟化也称作完全虚拟化

在计算机科学中,硬件虚拟化(英语:Hardware virtualization)是一种对计算机或操作系统的虚拟。虚拟化对用户隐藏了真实的计算机硬件,表现出另一个抽象计算平台。

简介

在计算机集群中,许多小型服务器正在被一个大型服务器取代以增加硬件资源的利用率(如CPU等)。虽然硬件正在被整合,但是典型的操作系统仍然是独立的。取而代之地,每一个运行在独立的服务器上的操作系统被转移到在虚拟机中。大型的服务器可以“寄宿”许多这样的“客户”虚拟机。这就是物理到虚拟(Physical-to-Virtual, P2V)的转换。

虚拟机比真实的机器可以被更容易从外部被控制和检查,并且可以配置更灵活。这在内核开发与操作系统课程教学中尤为有用。[3]

创建一个新的虚拟机不需要预先购买硬件。同时,一个新的虚拟机可以容易地从一台计算机转移到另一台上。举例来说,一个销售员可以复制一个包含试用版软件的虚拟机到他的笔记本电脑去访问他的客户而不用更换电脑。类似的,虚拟机中的故障不会对宿主机产生损害,所以不会令笔记本上的操作系统死机。

由于可以被容易地迁移,虚拟机可以被用于远距离灾难恢复方案。

平台虚拟化的方案有很多。

虚拟化的原因

在计算机集群中,许多小型服务器正在被一个大型服务器取代以增加硬件资源的利用率(如CPU等)。虽然硬件正在被整合,但是典型的操作系统仍然是独立的。取而代之地,每一个运行在独立的服务器上的操作系统被转移到在虚拟机中。大型的服务器可以“寄宿”许多这样的“客户”虚拟机。这就是物理到虚拟(Physical-to-Virtual, P2V)的转换。

虚拟机比真实的机器可以被更容易从外部被控制和检查,并且可以配置更灵活。这在内核开发与操作系统课程教学中尤为有用。[3]

创建一个新的虚拟机不需要预先购买硬件。同时,一个新的虚拟机可以容易地从一台计算机转移到另一台上。举例来说,一个销售员可以复制一个包含试用版软件的虚拟机到他的笔记本电脑去访问他的客户而不用更换电脑。类似的,虚拟机中的故障不会对宿主机产生损害,所以不会令笔记本上的操作系统死机。

由于可以被容易地迁移,虚拟机可以被用于远距离灾难恢复方案。

完全虚拟化和半虚拟化

完全虚拟化提供底层物理系统的全部抽象化,且创建一个新的虚拟系统,客户机操作系统>可以在里面运行。不需要对客户机操作系统或者应用程序进行修改(客户机操作系统或者应用程序像往常一样运行,意识不到虚拟环境的存在)。半虚拟化需要对运行在虚拟机上的客户机操作系统进行修改(这些客户机操作系统会意识到它们运行在虚拟环境里)并提供相近的性能,但半虚拟化的性能要比完全虚拟化更优越。

全虚拟化

在全虚拟化(full virtualization)中,虚拟机模拟一个足够强大的硬件使客户机操作系统独立运行。这种方案最早在1966年被虚拟机家族的先锋IBM CP-40与CP-67使用。支持完全虚拟化的虚拟机软件包括Parallels Workstation、 Parallels Desktop for Mac、VirtualBox、Virtual Iron、Oracle VM、Microsoft Virtual PC、Virtual Server、Hyper-V、VMware Workstation、VMware Server(原GSX Server)、QEMU、Adeos、Mac-on-Linux、Win4BSD、Win4Lin Pro、以及Egenera vBlade technology等

硬件辅助虚拟化

在硬件辅助虚拟化(hardware-assisted virtualization)中,硬件提供结构支持帮助创建虚拟机监视并允许客户机操作系统独立运行。硬件辅助虚拟化在1972年开始运行,它在IBM System/370上运行,使用了第一个虚拟机操作系统VM/370。在2005年与2006年,Intel和AMD为虚拟化提供了额外的硬件支持。支持硬件辅助虚拟化的有 Linux KVM, VMware Workstation, VMware Fusion, Microsoft Virtual PC, Xen, Parallels Desktop for Mac,VirtualBox和Parallels Workstation。

支持完整的虚拟化技术的硬件平台包括:

x86 (and x86_64)—AMD-V (代号Pacifica), Intel VT-x(代号Vanderpool)

IOMMU 由AMD和Intel共同开发。

Power Architecture (IBM/Power.org)

Virtage (Hitachi)

UltraSPARC T1, T2 及 T2+ (Sun)

部分虚拟化

在部分虚拟化(partial virtualization)中(包括地址空间虚拟化),虚拟机模拟数个(但不是全部)底层硬件环境,特别是地址空间。这样的环境支持资源共享和线程独立,但是不允许独立的客户机操作系统。虽然这并不被视为一般意义上的虚拟机,但这在历史上是非常重要的一页。这项技术曾被用于CTSS(试验性的IBM M44/44X),以及争议性的系统比如MVS及Commodore 64(两个都是“task switch”程序)。

平行虚拟化

在平行虚拟化(paravirtualization)中,虚拟机不需要模拟硬件,而是提供一个特殊的API只能被特制的客户机操作系统使用。

操作系统层虚拟化

在操作系统层虚拟化(OS-level virtualization)中,独立主机被虚拟化在操作系统层中,这使得多个独立且安全虚拟化的服务器运行在一台计算机上。客户操作系统环境与宿主服务器分享同一个操作系统,例如,相同的系统内核被用来创建客户机环境。程序运行在被视为独立系统的客户机环境中。这种方式由FreeBSD jails首创;类似的例子包括Solaris Containers, OpenVZ, Linux-VServer, AIX Workload Partitions, Parallels Virtuozzo Containers, 以及 iCore Virtual Accounts。

常见的虚拟机

名称作者主CPU目标CPU主系统目标系统许可

Xen

英国剑桥大学,Intel,AMD

x86,x86-64

x86,x86-64

NetBSD,Linux,Solaris

Linux,Solaris,Windows XP & 2003 Server(需要3.0版和Vanderpool或Pacifica),九号项目,FreeBSD

GPL

VMware Workstation 6.0

VMware

x86,x86-64

x86,x86-64

Windows,Linux

DOS,Windows,Linux,FreeBSD,Netware,Solaris,Darwin,虚拟设备

私有

VMware Server

VMware

x86,x86-64

x86,x86-64

Windows,Linux

DOS,Windows,Linux,FreeBSD,Netware,Solaris,虚拟设备

私有(免费)

VMware Player2.0

VMware

x86,x86-64

x86,x86-64

Windows,Linux

DOS,Windows,Linux,FreeBSD,Netware,Solaris,Darwin,虚拟设备

私有(免费)

VMware Fusion

VMware

x86,Intel VT-x

x86,x86-64

Mac OS X(Intel)

Windows,Linux,Netware,Solaris

私有

VMware ESXi Server

VMware

x86,x86-64

x86,x86-64

无:裸机安装(嵌入式)

Windows,Red Hat,SuSE,Ubuntu,Netware,Solaris,FreeBSD

私有

VMware ESX Server

VMware

x86, x86-64

x86, x86-64

无:裸机安装

Windows,Red Hat,SuSE,Ubuntu,Netware,Solaris,FreeBSD

私有

Virtuozzo

SWsoft

x86,IA-64,x86-64

x86,IA-64,x86-64

Linux & Windows

各种Linux发行版;Windows

私有

Virtual Server2005 R2

Microsoft

Intel x86,x86-64

Intel x86

Windows 2003,XP

Windows NT,2000,2003,Linux(Red Hat and SUSE)

私有(免费)

Virtual PC 2007

Microsoft

x86,x86-64

x86

Windows Vista(商业版,企业版,旗舰版),XP Pro,XP Tablet PC版

DOS,Windows,OS/2,Linux(Suse,Xubuntu),OpenSolaris(Belenix)

私有(从2006年7月起免费)

Virtual IronVirtual Iron 3.1

Virtual Iron软件公司(已被Oracle收购May 13, 2009)

x86 VT-x,x86-64 AMD-V

x86,x86-64

无:裸机执行

Windows,Red Hat,SuSE

完整的产品是私有的[3];几个组成部分是GPL v2[4]

User Mode Linux

Jeff Dike(其他开发者帮助)

x86,x86-64,PowerPC

x86,x86-64,PowerPC

Linux

Linux

GPL v2

Sun xVM Server

太阳计算机系统公司

x86-64,SPARC

x86-64,SPARC

无:裸机执行

Windows XP & 2003 Server(仅x86-64),Linux,Solaris

GPL v3

SimNow

AMD

x86-64

x86-64

Linux(64位),Windows(64位)

Linux,Windows(32位和64位)

AMD公司专有

QEMU(qvm86模块)

Paul Brook

x86

x86

Linux,NetBSD,Windows

经常变化

GPL

QEMU(kqemu模块)

Fabrice Bellard

Intel x86,x86-64

Intel x86,x86-64

Linux,FreeBSD,OpenBSD,Solaris,Windows

经常变化[2]

GPL/LGPL

QEMU

Fabrice Bellard(其他开发者帮助)

x86,x86-64,IA-64,PowerPC,Alpha,SPARC 32 and 64,ARM,S/390,M68k

x86,x86-64,ARM,SPARC 32 and 64,PowerPC,MIPS

Windows,Linux,Mac OS X,Solaris,FreeBSD,OpenBSD,BeOS

经常变化[1]

GPL/LGPL

Proxmox VE

Proxmox

x86-64

无:裸机安装

Windows,Linux

免费、付费 都有

PearPC

Sebastian Biallas

x86,x86-64,PowerPC

PowerPC

Windows,Linux,Mac OS X,NetBSD

Mac OS X,Darwin,Linux

GPL

Parallels Workstation

Parallels公司

x86,Intel VT-x

x86

Windows,Linux

Windows,Linux,FreeBSD,OS/2,eComStation,MS-DOS,Solaris

私有

Oracle VM

甲骨文公司

Intel x86,x86-64,Intel VT-x

Intel x86,x86-64,Intel VT-x

无(裸机安装)

Microsoft Windows,Oracle Enterprise Linux,Red Hat Enterprise Linux

免费,商业

Oracle VirtualBox

甲骨文公司

x86,x86-64,VT-x,AMD-V

x86,(x86-64仅在VirtualBox 2及x86-64主机上)

Windows,Linux,Mac OS X(Intel),Solaris, FreeBSD

DOS,Windows,Linux,OS/2,FreeBSD,Solaris

GPL v2;完整版本中的额外特性是专有的(免费供个人与教育机构使用和评价)

OpenVZ

社区项目,SWsoft支持

Intel x86,x86-64,IA-64,PowerPC64,SPARC/64

Intel x86,x86-64,IA-64,PowerPC64,SPARC/64

Linux

各种Linux发行版

GPL

Logical Domains

太阳计算机系统公司

UltraSPARC T1,UltraSPARC T2

兼容

Solaris

Solaris,Linux,FreeBSD

?

KVM

Red Hat

Intel/AMD处理器与x86虚拟化

x86/x86-64

Linux

Linux,Windows

GPL v2

Hyper-V

微软

x86-64+硬件辅助虚拟(AMD-V或Intel VT)

x86-64,x86

Windows Server 2008, Windows Server 2012, Windows 8

Windows 2000,Windows 2003,Windows 2008,Windows XP,Windows Vista,Linux

私有(免费)

Hercules

Roger Bowler

任何

z(IBM大型计算机)

Linux,Mac OS X,Solaris,Windows

OS/360,OS/390,z/OS,z/Linux

QPL

DOSEMU

社区项目

x86,x86-64

x86

Linux

DOS

GPL v2

DOSBox

Peter Veenstra和Sjoerd与社区帮助

任何

x86

Linux,Windows,Mac OS Classic,Mac OS X,BeOS,FreeBSD,OpenBSD,Solaris,QNX,IRIX,MorphOS,AmigaOS

DOS

GPL

CHARON

Stromasys

x86,x86-64

DEC PDP11,Alpha, VAX, SUN SPARC,HP3000

Windows,Linux, Solaris

Solaris/SunOS,Tru64,OpenVMS,Ultrix

私有

Bochs

Kevin Lawton

任何

x86,x86-64

Windows,Windows Mobile,Linux,IRIX,AIX,FreeBSD,OpenBSD,BeOS,Mac OS X,Android

DOS,Windows,xBSD,Linux

LGPL

名称作者主CPU目标CPU主系统目标系统许可

相关推荐

基础稳、韧性强、潜力大 多维数据梳理2024年中国自然资源“家底”
怀孕为什么不能摘果子
365bet365打不开

怀孕为什么不能摘果子

📅 02-03 👁️ 4294
阴阳师手游第一大区是哪个
365bet365打不开

阴阳师手游第一大区是哪个

📅 08-05 👁️ 7218
星巴克 雕光 漫咖啡:三足鼎立or一方独霸
365BET娱乐场下载

星巴克 雕光 漫咖啡:三足鼎立or一方独霸

📅 06-28 👁️ 7566
Icon回应和裁判冲突:当时就有点急了
365BET娱乐场下载

Icon回应和裁判冲突:当时就有点急了

📅 01-11 👁️ 1944
卡塔尔世界杯落幕:阿根廷夺冠!梅西圆梦!
365平台是做什么的

卡塔尔世界杯落幕:阿根廷夺冠!梅西圆梦!

📅 08-21 👁️ 5622
秦朝长城建设及其意义
365BET娱乐场下载

秦朝长城建设及其意义

📅 10-12 👁️ 9918
平板电脑突然黑屏怎么解决 平板电脑黑屏自检方法
365BET娱乐场下载

平板电脑突然黑屏怎么解决 平板电脑黑屏自检方法

📅 11-03 👁️ 6595
obb和apk打包是什么意思?
365平台是做什么的

obb和apk打包是什么意思?

📅 07-25 👁️ 9796