硬件虚拟化

✍ dations ◷ 2025-06-09 16:45:30 #虚拟化软件,虚拟机器

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

虚拟化这个概念,在1960年为了描述虚拟机(实验性的IBM M44/44X系统)被第一次提出。对虚拟机的架设和管理被称为平台虚拟化,现在也被称为服务器虚拟化。

平台虚拟化表现为在一个给定硬件平台的宿主机上创造一个模拟的计算机环境(虚拟机)提供给客户机。客户机软件对于用户应用程序没有限制;许多宿主机允许运行真实的操作系统。客户机就好像直接运行在计算机硬件上,伴随着几个明显的警告。虚拟机对硬件资源(如网络、显示器、键盘、硬盘)的访问被统一管理在一个比处理器和系统内存更有限制性的层次上。客户软件经常被限制访问计算机周边设备,或者被限制在较低的设备性能上,这取决于宿主机硬件访问策略设定。

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

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

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

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

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

在全虚拟化(full virtualization)中,虚拟机模拟一个足够强大的硬件使客户机操作系统独立运行。这种方案最早在1966年被虚拟机家族的先锋IBM CP-40与CP-67使用。支持完全虚拟化的虚拟机软件包括Parallels Workstation、 Parallels Desktop for Mac、VirtualBox、Virtual Iron、Oracle VM、Microsoft Virtual PC、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与x86_64:AMD-V (代号Pacifica), Intel VT-x(代号Vanderpool),以及后来的SLAT(Second Level Address Translation,Intel称为EPT)

IOMMU:由AMD和Intel共同开发,Intel称为VT-d。

Power Architecture (IBM/Power.org)

Virtage (Hitachi)

UltraSPARC T1, T2 及 T2+ (Sun)

在部分虚拟化(partial virtualization)中(包括地址空间虚拟化),虚拟机模拟数个(但不是全部)底层硬件环境,特别是地址空间。这样的环境支持资源共享和线程独立,但是不允许独立的客户机操作系统。虽然这并不被视为一般意义上的虚拟机,但这在历史上是非常重要的一页。

在平行虚拟化(paravirtualization)中,虚拟机不需要模拟硬件,而是提供只能被特制的客户机操作系统(或特制的驱动程序)使用的API。KVM、VMware、Hyper-V都支持平行虚拟化,如KVM的VirtIO。

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


相关

  • 地球观测地球观测卫星,是指专门对地球的环境与资源进行遥感观测的非军事用途卫星,其用途包括包括环境监测、气象监测、地图制作等。气象卫星的主要作用是观察和监视地球的气象和气候,城
  • 瘴气致病论瘴气,亦称瘴毒、瘴疠,中文中瘴气为中医名词,疾病地理学之概念,是指中国南方山林间湿热环境下因某种原因(如动植物腐败等)而产生的一种能致病的有毒气体。由瘴气引起的疾病被称为瘴
  • 张人骏《张人骏家书日记》张人骏(1846年2月24日-1927年2月8日),字千里,取“人中骏马,驰骋千里”之意,号安圃,晚号湛存居士,直隶遵化丰润县(今河北省唐山市丰润区)大齐坨村人,中国清朝末年政治
  • 加拿大国家公园列表加拿大国家公园是依据加拿大国家公园法案设立保护区,由加拿大政府拥有。国家公园保留地是已经按照国家公园标准设立但尚未正式认定的国家公园,属于国家公园系统的一部分。加拿
  • 2.5D2.5D是一个在不同学科有不同意思的名词。以下为几个常见的解释:在数学里,根据豪斯多夫维(Hausdorff dimension)的定义,空间的维度不一定是整数,而可以是实数。2.5D是电脑游戏对于
  • 模拟城市 (2013年游戏)《模拟城市》(英语:SimCity),是于2013年发行的城市建造电脑游戏,一般玩家为方便区分称之为模拟城市5。由艺电的子公司Maxis开发。这是艺电第6个,也是第5个由Maxis制作的《模拟城市
  • 埃德加·科德埃德加·弗兰克·科德(英语:Edgar Frank Codd, 1923年8月23日-2003年4月18日) ,小名泰德·科德(Ted Codd),生于英国英格兰多塞特郡的波特兰,计算机科学家。他为关系型数据库理论做出了
  • 奥山惠美子奥山惠美子(日语:奥山 恵美子,1951年6月23日-)是一位日本政治人物。她于2009年至2017年担任仙台市市长。1951年6月23日奥山惠美子出生于日本秋田市。她的父亲是一名公职人员,在惠
  • 奥图尔乔治·贝瑞·奥图尔(George Barry O'Toole)(1886年-1944年),生于美国俄亥俄州,是一名天主教本笃会神父,天主教激进派联盟(Catholic Radical Alliance)创始者,天主教辅仁大学首任校长。
  • 尼祖·温特本尼祖·温特本(英语:Nigel Winterburn,1963年12月11日-),是一名前英格兰足球运动员,司职左后卫,职业生涯1981年至2003年。他主要效力阿森纳,最经典的是在90年代组成的黄金四人防线,其他