当前位置:首页 > 虚拟化 > 正文

简述虚拟化的发展历史


一、求虚拟技术的发展历史20世纪60年代以来,美国计算机学术界开始萌芽虚拟技术。1959年,ChristopherStrachey发表了一篇名为《大型快速计算机中的时间共享》(TimesharinginLargeFastComputers)的学术报告,其中提出了虚拟化的基本概念。这篇文章也被认为是虚拟化技术的基础。最早的讨论。
虚拟化技术在x86服务器上的快速普及引发了虚拟化技术的热潮,但虚拟化技术最初只应用于大型机。大型机上的虚拟分区技术可以追溯到20世纪60年代和70年代。早在20世纪60年代,IBM就发明了操作系统虚拟机技术,允许用户在一台主机上运行多个操作系统,让用户尽可能充分地利用昂贵的主机资源。
第一台使用虚拟化技术的计算机是IBM7044计算机。继IBM之后,它还在20世纪60年代开发了System/360主机型号Model67。Model67主机通过虚拟机监视器(VirtualMachineMonitor)虚拟化所有硬件接口。1965年,IBM的“M44/44X”计算机项目定义了虚拟内存管理机制。用户程序可以在虚拟内存中运行。对于用户来说,这些虚拟内存就像“虚拟机”一样,为多台计算机服务。为用户的程序提供了独立的计算环境。
IBM提出的虚拟机技术导致了一批新产品的出现,如:IBM360/40、IBM360/67、VM/370等。这些机器当时都具有虚拟机功能。一种称为VMM(虚拟机监视器)的技术生成许多可以在物理硬件上运行独立操作系统软件的虚拟机实例。
由于虚拟化技术在商业应用中的优势,RISC服务器和小型机成为虚拟化技术的第二代受益者。1999年,IBM在AS/400上提出了“逻辑分区(LPAR)”技术和新的高可用性集群解决方案。在POWER虚拟机管理程序上运行的AS/400LPAR允许单个服务器作为12个独立服务器工作。2002年,IBM更进一步,其AIX5Lv5.2还首次包含了IBM实现的动态逻辑分区(DLPAR)。DLPAR允许将系统资源(包括处理器、内存和其他组件)分配到独立的分区,而无需重新启动系统。这种在不中断运营的情况下分配资源的能力不仅使系统管理变得更加容易,而且还有助于通过更好地利用资源来降低总拥有成本。
不过,虽然HP和Sun也效仿IBM在自己的RISC服务器上提供虚拟化技术,但真正使用大型机和小型机的用户仍然寥寥无几,而且各种产品和技术都没有相互兼容,而虚拟化技术仍然很少受到公众的关注。现在,虚拟化技术的发展让x86架构受益匪浅。
此前,虚拟化技术在x86架构上进展缓慢的主要原因是x86架构本身不适合虚拟化。不过这个障碍已经被Intel和AMD修改了,x86处理器的指令集已经解决了。;另一个原因是x86处理器的性能不足。由于x86处理器性能的快速提升,这个原因也得到了解决。由于x86架构的广泛普及,x86架构上的虚拟化技术也比以前受到了更大的关注。
随着虚拟化技术在x86平台上的实现,虚拟化应用的广阔前景第一次向人们展示,因为x86平台可以提供廉价、高性能、高可靠的服务器。更重要的是,一些用户已经开始配置虚拟化生产环境,他们需要新的管理工具才能随着虚拟化技术的发展获得更大的收益。
然而,与已经存在多年的UNIX服务器和大型机上的虚拟化技术相比,x86服务器上的虚拟化仍处于早期阶段——根据英特尔的蓝图,在处理器中集成硬件辅助虚拟化指令只是IA平台的第一步,第二步必须实现I/O的虚拟化,直到最终实现整个IA平台的虚拟化。也就是说,目前的x86平台只能实现处理器层面的虚拟化,I/O等方面的虚拟化还需要进一步发展。不仅如此,x86架构上的虚拟化技术还不能完美实现虚拟分区之间的动态迁移,这在UNIX平台和大型机上已经不再是问题。目前x86架构上虚拟化技术的最高规划是支持8路SMP系统,可以实现单个CPU资源的配置。
2006年以来,处理器层面的AMD、Intel到操作系统层面的微软,从第三方软件厂商的大量涌现到服务器系统厂商的高调,我们已经看到,一个趋于服务器完全虚拟化的产业生态系统正在逐步形成。这也使得虚拟化成为近一两年受到广泛关注的热门话题。总体而言,随着计算机新技术的快速发展,虚拟化的前景与一年前相比几乎完全改变,新的虚拟化平台的前景非常乐观。


二、计算机虚拟化技术的四种虚拟化技术

虚拟化技术(Virtualization)和分区技术(Partition)紧密结合。
自20世纪60年代Unix诞生以来,虚拟化技术和分区技术就开始发展,并经历了“硬件分区”的转变”->“虚拟机”->“准虚拟机”->“虚拟操作系统”的发展历史。第一个分区技术源于人们提高大型机使用率的需要。例如,在金融、科学等领域,大型Unix服务器一般价值数千万甚至上亿元。但现实中,多个部门无法很好地共享算力,往往会导致有需要的部门。IT无法获得计算能力。不需要大量计算能力的部门消耗了太多的资源。这时就出现了分区技术,可以将一台大型服务器划分为若干个分区,分别提供给生产部门、测试部门、研发部门等部门。为了提高虚拟机技术(VirtualMachineMonitor)的性能,一种新的半虚拟化技术(Para-Virtualizion)诞生了。这种虚拟化技术以Xen为代表,其特点是修改操作系统内核,增加XenHypervisor层。它允许安装在同一硬件设备上的多个系统同时启动,并且资源分配由XenHypervisor完成。在这个虚拟环境中,仍然需要模拟硬件设备、安装客户操作系统、修改操作系统内核。与传统的VirtualMachineMonitor相比,Xen的性能略有提升,但并不是非常显着。为了进一步提高性能,Intel和AMD分别开发了VT和Pacifica虚拟术,为处理器添加虚拟指令。得益于CPU支持的硬件虚拟化技术,无需修改操作系统内核,而是由CPU特有的指令集执行相应的转换操作。——与单个物理资源单元相比,虚拟资源可以以更小的单元进行分配。与物理资源相比,虚拟资源在崩溃后可以更快地恢复,因为它们不存在硬件或操作系统问题。