设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 手机 数据
当前位置: 首页 > 服务器 > 系统 > 正文

英特尔虚拟化技术:入门介绍

发布时间:2017-01-02 08:54 所属栏目:52 来源:Andrew Binstock
导读:本入门介绍阐述了虚拟化技术带来的众多优势,例如面向信息技术(IT)经理的出色可靠性、安全性和可管理性,以及面向开发商的提高的效率;同时还介绍了英特尔 虚拟化技术如何能够使当今的虚拟化产品得到进一步增强。最后,本文对英特尔虚拟化技术进行了技术说

    【报道】虚拟化作为一种技术,可支持用户提取和划分硬件资源,并在多个操作系统环境中进行分配。在此基础上,它能够支持将一个硬件平台用作多个“虚拟”平台。虚拟化可以通过各种技术来实现,例如模拟、模仿,以及资源的硬件或软件分区等。虚拟化概念已不是新鲜事物,凭借当前强大的可用计算能力,用户已能够在单一系统上实现可行的软件虚拟化。对于用户而言,理想的虚拟化解决方案应能够提供在不同虚拟机之间实现彻底隔离,并为每个虚拟机提供卓越性能,同时确保整个平台的出色可用性、可靠性和安全性。

    虚拟化提供了诸多能力,其中一项是能够在单一硬件平台上同时运行多个操作系统,这很快成为应对当前众多信息管理问题的一项重要解决方案。本入门介绍阐述了虚拟化技术带来的众多优势,例如面向信息技术(IT)经理的出色可靠性、安全性和可管理性,以及面向开发商的提高的效率;同时还介绍了英特尔® 虚拟化技术如何能够使当今的虚拟化产品得到进一步增强。最后,本文对英特尔虚拟化技术进行了技术说明,并提供了有关何时推出该项技术并应用于服务器和工作站的信息。

为何虚拟化非常重要?

    虚拟化具备众多优势,然而IT站点采用该技术的主要原因在于:它有助于更有效地利用资源和更出色地管理系统。下面我们就虚拟化提供的一些解决方案进行探讨:

    整合与降低的总拥有成本(TCO): 目前,许多应用均在未得到充分利用的独立服务器上运行,因为无法将其移植到新平台或整合到单一平台。进行此类移植和整合的主要障碍包括:应用必须在专用系统上运行,以实现可靠性和可支持性;应用所依赖的操作系统未被用于该站点其它领域;以及一些传统原因,例如应用采用过时的操作系统,无法升级到更新的系统上运行。这些因素导致应用不能移植到整合的平台。借助虚拟化,一个硬件平台可以运行不同操作系统的多个例程,其中每个例程均在自己的隔离区(称为“虚拟机”(VM))中运行,由此共享对硬件资源的访问。由于整合降低了系统维护成本,同时数据中心的内部空间和电源使用得到了更有效地管理,从而使总拥有成本(TCO )显著降低。

    可管理性:采用虚拟化技术的服务器可以根据工作负载的要求,接受来自其它系统的虚拟机移植。事实上,当今的工作负载平衡代理程序可以自动执行这一移植。Xen 项目在服务器和客户机上使用工作负载移植,而类似技术也存在于一些商业化产品中,例如 Vmware 的 VMotion*(www.vmware.com* )。

    安全性和故障隔离:虚拟化可以通过隔离不同虚拟机来提供出色的安全性。通过在不同例程中运行各种应用,一个虚拟机不会遭到另一个虚拟机中病毒或恶意软件的破坏。恶意软件造成的任何破坏均会被限制在其所运行的特定会话中。同样,如果应用由于漏洞或错误而挂起,它也只会锁定其自己的会话。之后,该虚拟机可在不影响系统上运行的任何其它虚拟机的情况下重新启动。此外,它还可以提供各种安全方案,例如针对不同用户登录的不同虚拟机等。

    可靠性与可用性:虚拟化解决方案可以在单一物理系统上提供可靠的故障切换方案和系统备份。

    提高的工作效率:升级和更新软件是所有IT经理所执行的常见重要任务之一。如果站点想在与目标设备相同的硬件上测试软件包升级,可以通过在平台上运行新的虚拟机会话来轻松实现。虚拟化可以显著提高开发人员的工作效率,同时提供出色的质量保证(QA)。致力于跨平台项目的开发人员和软件测试人员将会发现,在其开发工作站上的不同目标操作系统中运行多个会话将轻而易举。这使得他们能够自如验证跨平台功能。致力于内核组件工作的开发人员和测试这些组件的 QA 人员,可以通过在隔离虚拟机上执行测试来缩短停机时间和周转时间。如果没有可靠的虚拟化解决方案,则发生故障的内核组件可能导致需要重新安装或重建操作系统。

    随着处理器借助多种内核架构和硬件多线程(如超线程(HT)技术)变得日益强大,虚拟化解决方案将可用于应对未充分利用的独立服务器和传统应用情况。未来的虚拟化解决方案在提供上述优势的同时,还可将专用内核分配到不同的虚拟机。例如,在多核处理器平台中,一个内核可以专用于一个虚拟机,以便在故障切换时进行替换,进而提供出色的可靠性、性能,以及易管理性和众多整合优势。

    此外,以上优势还可以借助英特尔硬件能力得到进一步扩展。诸如英特尔® 主动管理技术(英特尔® AMT)等英特尔® 技术有望进一步提高平台可管理性和可用性,而 LaGrande 技术则有望在加速网络和 I/O 运行的同时带来安全可靠的计算环境和 I/O。虚拟化优势将进一步补充英特尔平台所提供的这些解决方案,从而为最终用户带来更多价值。

    虚拟化提供的一项主要优势就是分离基础硬件。在不久的将来,随着微处理器的复杂性不断提高,虚拟化可以提供一种分离硬件的有效方法。这将有助于平台开发人员和管理者将资源轻松整合并分配到在该平台中运行的多个执行环境。

存在哪些问题?

    在采用英特尔® 架构(IA)的系统上,虚拟化目前是一种纯软件解决方案。Microsoft Virtual Server* 、Virtual PC*、VMware ESX* 和 Workstation* 等产品(称为“虚拟机* ”(VMM*))可处理英特尔架构系统的所有虚拟化问题。由于 VMM 必须创建一种规则,使主机操作系统直接与硬件进行通信,因此它必须采取一些措施。目前虚拟机主要采用以下两种方法:

    半虚拟化:此项技术要求更改操作系统、特别是内核的源代码,以便其能够在指定的 VMM 上运行。此方法类似于大型机方法,其中定制操作系统扩展与硬件配合密切。当然,半虚拟化将不能与商业化操作系统协作。

    二进制译码:VMM 在操作系统二进制代码加载到虚拟机时对其进行更改。这一方法在支持英特尔架构的商业产品中十分常见,唯一的限制是只能安装特定版本的操作系统,而新版本的操作系统均需要测试和验证,并可能要求对 VMM 软件进行升级。
    两款解决方案共同的问题在于软件无法与基础硬件协同工作,因此必须采用一些复杂的方案向软件模拟某些硬件特性,同时让主机操作系统误认为该虚拟机是另一个应用。此外,VMM 还面临着其它技术挑战。

虚拟化软件当前面临的挑战

使用专用于 VMM 的独享存储器

    为了存储系统信息,VMM 必须使用仅供自己访问的专用存储区。英特尔架构的问题在于,如何能够通过客户操作系统无法访问(无论有意还是无意)的方式来分配内存。目前,主要解决方案是由 VMM 中途截取对这些内存区的访问,并模拟初次访问的预期结果。当前的英特尔架构要求执行这一繁琐的流程。然而在采用英特尔® 虚拟化技术的 x86 处理器上,供 VMM 使用的特定内存页只能通过软件(如 VMM)进行访问,处理器赋予了这些软件最高的特权。而这一步使得这些区域无法被访问,最重要的是,所有其它软件也无法访问这些区域。

VMM 中断处理的使用

    需要系统即刻关注的事件——中断,必须由 VMM 进行处理。问题在于,操作系统有能力防止中断的发生。该机制旨在防止某些活动的中断,这些活动必须在不被外部事件中断的情况下完成。VMM 可以管理到客户操作系统的中断流,然而为此,它们必须监视操作系统屏蔽和取消屏蔽(即阻塞和允许)这些中断的企图。目前,一些操作系统过度使用这一特性,致使 VMM 的性能大幅降低。统的中断流,然而为此,它们必须监视操作系统屏蔽和取消屏蔽(即阻塞和允许)这些中断的企图。目前,一些操作系统过度使用这一特性,致使 VMM 的性能大幅降低。

解决方案是什么?

    当前,英特尔架构需要的是对虚拟化的强大硬件支持,以解决纯软件解决方案的种种问题。在即将推出的英特尔架构处理器和芯片组中,英特尔® 虚拟化技术将为 VMM 厂商提供其迫切需要的支持。它支持 VMM 在不依赖于二进制译码或半虚拟的情况下,轻松运行各种商业化操作系统和应用。这将可以大大改进 VMM 的部署,并为客户操作系统和应用提供更出色的可靠性和可管理性。

英特尔® 虚拟化技术如何发挥作用?

    VMM 必须做好两件事:它们必须全面模拟硬件环境,使主机操作系统认为其拥有整个硬件平台,同时它们还必须处理操作系统(如硬件故障)或应用(如软件错误)导致的所有意外情况。两项任务的执行必须高度可靠,且性能消耗较少。

    迄今为止,英特尔架构尚未使 VMM 轻松实现这些目标,因为英特尔® 处理器主要设计用于运行单一操作系统例程。鉴于此,英特尔处理器目前向 VMM 提出了多项重要挑战,而这些均可通过英特尔虚拟化技术得以解决。下面我们来详细了解一下这些情况。

特权等级

    所有现代处理器和操作系统均实施了特权等级概念,这一概念定义了具体流程所能执行的行为。英特尔架构提供了称为“环路”(ring)的四个特权等级,编号为 0-3。最高级为 0 级,用于操作系统;最低级为 3 级,用于各种应用。出于种种原因,1 级和 2 级均很少使用。只在运行于环路 0 中的操作系统可以无限制地访问硬件。通过将此环路限定用于单个操作系统,英特尔架构可支持操作系统充分了解硬件状态。

    为了支持 VMM 正常运行,需要让它在环路 0 运行,并向客户操作系统制造其在环路 0 中运行的假象。然而,由于VMM自身在环路 0 中运行,因而所有虚拟机操作系统均不得在这一特权级别运行。事实上,它们目前一般均在环路 1 运行——一种称为“环路特权解除”(ring deprivileging)的技术。这就给 VMM 带来了极大的困难,它必须不断监视虚拟机的活动以中断硬件访问和某些系统呼叫,并自己执行和模拟结果。

    英特尔虚拟化技术通过创建以下两类环路解决了这一问题:用于 VMM 的特许“根”环路(称为“0P 环路”),以及用于操作系统的非特许“非根”环路(称为“0D 环路”)。以这种方式,VMM 可作为基础层,所有操作系统均可在其上运行,同时拥有环路 0 的必要优势。通过这种方法,主机操作系统和应用可以在其预期的环路等级内运行,且察觉不到 VMM 的存在——所有主机操作系统均认为自己拥有整个机器。英特尔虚拟化技术通过创建以下两类环路解决了这一问题:用于 VMM 的特许“根”环路(称为“0P 环路”),以及用于操作系统的非特许“非根”环路(称为“0D 环路”)。以这种方式,VMM 可作为基础层,所有操作系统均可在其上运行,同时拥有环路 0 的必要优势。通过这种方法,主机操作系统和应用可以在其预期的环路等级内运行,且察觉不到 VMM 的存在——所有主机操作系统均认为自己拥有整个机器。

采用英特尔虚拟化技术,我需要做哪些更改?能够获得哪些优势?

    有意思的是,IT 站点无需对其应用进行任何更改即可充分利用英特尔虚拟化技术。事实上,这便是英特尔虚拟化技术的总体目标:无需在虚拟机中进行修改即可运行任何应用。英特尔虚拟化技术主要面向 VMM 厂商中的工程师,他们可以利用相关特性来提供更出色的虚拟化软件。通过采用英特尔虚拟化技术,全新的 VMM 产品将:

    更加稳定:VMM 将不再需要使用半虚拟化或二进制译码。这意味着它们无需采取任何特殊措施即可运行商业化操作系统和应用。

    更加强大:英特尔虚拟化技术可支持 VMM 首次在 IA x86 处理器上运行 64 位客户操作系统。

    更加可靠:借助硬件支持,VMM 现在可以进一步缩小尺寸、降低复杂性并提高效率。从而可以显著提高可靠性和可用性,并减少潜在的软件冲突。

    更加安全:在 VMM 中使用硬件移植可以加强虚拟机的隔离,进一步防止一个虚拟机的破坏影响到同一系统上的其它虚拟机。
    几乎没有技术能够在站点不对其软件做任何更改或升级的情况下提供如此多的优势。为了有效利用英特尔虚拟化技术,请确保在详细说明您的虚拟化解决方案时对此加以说明。

英特尔®虚拟化技术将于何时推出?

    第一代英特尔虚拟化技术已经推出。但是需要注意的是,虚拟化是一项长期的英特尔计划。本文只说明了第一版英特尔虚拟化技术。未来各代虚拟化技术已在设计中,并将提供更多的优势。当前的发布时间安排如下:

    2005 年下半年:英特尔虚拟化技术将发布用于全新英特尔® 奔腾® 4 处理器和英特尔® 安腾® 2 处理器。
2006 年上半年:将发布用于英特尔® 至强® 处理器和英特尔® 迅驰&S482; 移动计算技术。

    如欲了解有关英特尔虚拟化技术的更多信息,请访问:http://www.intel.com/software/enterprise/。

注:本文的作者Andrew Binstock 现任 Pacific Data Works LLC 首席分析师。此前他曾担任普华永道(PricewaterhouseCoopers)公司的高级技术分析师,以及《UNIX Review》和《C Gazette》的前任主编。他是《程序员实践算法》(Practical Algorithms for Programmers)(Addison-Wesley Longman出版)的主要作者,该书目前已是第 12 次印刷,广泛应用于美国 30 多个计算机科学部门。

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读