CN101443748B - 将机器转换为虚拟机 - Google Patents
将机器转换为虚拟机 Download PDFInfo
- Publication number
- CN101443748B CN101443748B CN2007800169624A CN200780016962A CN101443748B CN 101443748 B CN101443748 B CN 101443748B CN 2007800169624 A CN2007800169624 A CN 2007800169624A CN 200780016962 A CN200780016962 A CN 200780016962A CN 101443748 B CN101443748 B CN 101443748B
- Authority
- CN
- China
- Prior art keywords
- virtual
- machine
- virtual machine
- snapshot
- hard disk
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/16—Protection against loss of memory contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
物理(或先前的虚拟)机器卷可在该物理机器正在运行时被转换为虚拟机主机处的虚拟机。在一实现中,在一个或多个卷正在运行时,可以使用卷阴影复制服务来创建该一个或多个物理机器卷的应用程序(和/或文件系统)一致的快照。快照数据随后被传输到虚拟机主机处所挂载的虚拟硬盘文件(动态的或固定的)。随后,与该虚拟硬盘文件和虚拟机中的操作系统相关联的操作信息(例如,引导记录、系统注册表、驱动程序、设备、配置首选项等)被适当地修改以确保对应的虚拟机在虚拟机主机处是可引导且可运行的。虚拟硬盘文件随后可被卸载,并被用作新的虚拟机。
Description
背景和相关技术
存在多种在计算机化环境中分发不同类型的资源(软件、硬件、或其组合)的方式。例如,从软件的观点来看,企业可以在多个不同的计算机上安装操作系统(或应用程序)的多个副本,并由此在多个系统之中分发一个副本。共享硬件的常规方式包括在网络上建立计算机系统以使得多个不同的计算机系统能够出于各种存储或文件共享需求而访问另一个计算机的驱动器空间。
然而,近来硬件能力(即,现有存储、存储器和处理能力)的发展意味着仅仅提供传统的存储和/或网络通信量管理功能往往未充分利用给定的物理机器。如此,现在从软件和硬件组合的观点来看,分发资源的另外的方法包括在单个物理机器上安装多个虚拟计算机系统。通常,虚拟机可以用在主机存储的指定部分上的特定操作系统的唯一实例,并用所分配的主存储器和处理能力部分来安装。
因为这些和其它特征,虚拟机可以很容易地区别于其它虚拟机,且甚至区别于它们被安装在其上的主服务器。对网络上的其它用户来说,虚拟机仅仅作为诸如网络上的任何其它物理计算机系统等独立可寻址的计算机系统出现。随后可以将虚拟机用于各种目的,如用作网络上的另一服务器(例如,电子邮件或数据库服务器),出于软件或硬件测试目的而用作瘦客户机的主计算机系统等。
除该功能之外,虚拟机还可以提供额外的好处——其能够相当容易且在某些情况下相当迅速地被安装和设置以及移除。例如,特定主计算机系统的管理员可以接收对虚拟机的请求,在该主计算机上手动地分配适当的资源,并随后安装所请求的虚拟机。在不再需要虚拟机时,管理员可以手动地选择关闭或甚至删除在主服务器处的虚拟机的一个或多个命令。由此,一个组织可能期望通过使一个或几个主服务器大略地主存几百个虚拟机来减少其物理机器(服务器,个人计算机等)的数量。可以理解,这种合并可以提供多个优点,尤其是如果该组织可以减少各种资源消耗和机器管理成本,包括电力节约、温度/冷却节约、空间节约和由于减少的物理机器使用而可获得的其它节约。
不幸的是,通过将所选数量的现有物理计算机系统转换为虚拟机来合并物理机器不是件简单的事。具体地,仅仅将物理驱动器的内容复制到主服务器的分区上通常不足以创建可使用的虚拟机。例如,在物理机器正在运行时执行物理机器的驱动器的基本复制可能造成文件状态的不一致性(即,数据不是“应用程序一致的”)。如此,正在访问物理机器上的数据的应用程序在稍后该数据被移动到虚拟机时,可能不能够使用该数据的副本。另外,仅仅将这样一个副本传输到主服务器可能导致系统注册表中的其它不一致性、或与各盘和网络驱动程序的不一致性、操作系统二进制代码的不一致性等。虽然存在一些用于规避这些困难的机制,但用于做到这些的传统机制通常涉及显著的停机时间和资源花费(从人力和软件两种观点来看)。
例如,一种转换物理机器的方法涉及在虚拟机主机处从无到有地创建虚拟机。具体地,管理员可以简单地将物理机器上的所有应用程序安装在新虚拟机中,将文件系统和应用程序数据转移到该虚拟机,并随后从无到有地和/或通过应用程序还原操作在虚拟机上重建任何其它工作负荷。当然,该方法从各种观点来看都是不合需要的,并可造成对组织的资源的浪费,尤其是试图将数百台物理机器转换成虚拟机时。
用于转换物理机器的另一方法涉及使用相当复杂的基础结构组件,如自动化部署服务(“ADS”)和/或预安装可执行环境(“PXE”)等来创建物理机器组件的可传输副本。通常,使用这一类型的基础结构的机制包括关闭物理机器,并用例如PXE来重新引导该物理机器。这允许管理员不用加载固有操作系统而启动物理机器,并且因此在复制过程期间禁止写文件。
在复制物理驱动器内容之后,管理员随后可以将该内容传输到虚拟机主机。对于数十亿字节的数据,仅此即可花费一个或多个小时。在传输该数据后,管理员然后需要对所转移的数据执行多个相当复杂的改变来使所复制的内容可作为虚拟机来引导。至少部分地由于与使正被转换的物理机器离线并使数据可引导相关联的停机时间,在简单地从无到有地将物理机器重建为虚拟机太过困难时,通常使用该方法。
因此,存在可被解决的与将物理机器转换为虚拟机相关联的众多问题。
简要概述
本发明的各实现用被配置为高效地将物理机器转换为虚拟机的系统、方法和计算机程序产品来解决本领域中的一个或多个问题。具体地,本发明的实现允许迅速复制、传输物理机器卷数据并使其如在虚拟机主机(或其它适当的计算机系统)等处可引导,而不必使物理机器离线。在一实现中,例如,可以使用一个或多个应用程序写入器(例如,经由卷阴影复制服务)在一个或多个物理机器卷保持在线的同时创建该一个或多个卷的应用程序(和/或文件系统)一致的快照。随后可以使用高效的传输手段(例如,块级复制)来将这些快照传输到主机服务器处的虚拟硬盘文件。随后可以在虚拟机主机处修改与所传输的快照数据相关联的操作信息(例如,引导数据、系统注册表和二进制代码等)从而使得所传输的快照卷可引导。
例如,根据本发明的一实现的从物理机器的观点来看的将物理机器转换为虚拟机而不招致显著的停机时间的一种示例方法可以涉及标识物理机器的一个或多个卷的一个或多个硬件配置设置。该方法还可以涉及创建对应于该一个或多个物理机器卷的一个或多个一致的快照。另外,该方法可以涉及将该一个或多个快照发送给所挂载的虚拟硬盘文件。此外,该方法可以涉及将该一个或多个一致的快照的引导记录发送到所挂载的虚拟硬盘文件。在这种情况下,引导记录可以形成该一个或多个一致的快照的可在虚拟机主机处修改(或视需要从无到有地创建)的操作信息的一部分。
另外,根据本发明的一实现的从虚拟机的观点来看的将物理机器转换为虚拟机的另一个示例方法可以涉及创建具有文件大小的虚拟硬盘文件。该方法还可以涉及在虚拟机主机处挂载该虚拟硬盘文件。在这种情况下,虚拟硬盘文件可以表现为操作系统可访问的物理盘。另外,该方法可以涉及接收对应于一个或多个物理机器卷的一个或多个一致的快照。此外,该方法可以涉及修改该一个或多个一致的快照的操作信息。如此,可以使该一个或多个一致的快照适合于虚拟机主机处的操作系统,如通过对引导记录、驱动程序、操作系统二进制代码、系统注册表、和/或配置首选项等的改变。还有,该方法可以涉及移除虚拟硬盘文件的挂载。虚拟硬盘文件因此不可以作为物理盘来访问,但可作为虚拟机来引导。
提供本概述以便以简化的形式介绍将在以下详细描述中进一步描述的一些概念。该概述不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
本发明的示例性实现的附加特征和优点将在以下描述中叙述,且其一部分根据本描述将是显而易见的,或可通过对这些示例性实现的实践而获知。各个特征和优点可以通过在所附权利要求中特别指出的手段和组合来实现和获得。这些和其它特征将从以下描述和所附权利要求书中变得更完全显而易见,或者可通过如下所述对这些示例性实现的实践而知。
附图简述
为了描述可获得本发明的上述和其它优点和特征的方式,将通过参考附图中示出的本发明的具体实施例来呈现以上简要描述的本发明的更具体描述。可以理解这些附图仅描述本发明的典型实施例,从而不被认为是对其范围的限制,本发明将通过使用附图用附加特征和细节来描述和说明,附图中:
图1A示出根据本发明的一个实现的概略示意图,其中对一个或多个物理盘卷拍了一个或多个快照,且在虚拟机主机处创建了一个或多个虚拟硬盘文件;
图1B示出图1A的概略示意图,其中使用高效传输机制将物理盘卷的一个或多个快照的数据传输到所创建的虚拟硬盘文件中;
图1C示出根据本发明的一个实现的图1A-1B的概略示意图,其中修改含有所传输的快照数据的虚拟硬盘文件以创建可引导的虚拟机;以及
图2示出从物理机器和虚拟机主机的观点来看的用于将一个或多个机器转换为相应的一个或多个虚拟机的方法的流程图。
详细描述
本发明延及被配置为将物理机器高效地转换为虚拟机的系统、方法、以及计算机程序产品。具体地,本发明的实现允许迅速复制、传输物理机器卷数据并使其如在虚拟机主机(或其它适当的计算机系统)等处可引导,而不必使物理机器离线。在一实现中,例如,可以使用一个或多个应用程序写入器(例如,经由卷阴影复制服务)在一个或多个物理机器卷保持在线的同时创建该一个或多个卷的应用程序(和/或文件系统)一致的快照。随后可以使用高效的传输手段(例如,块级复制)来将这些快照传输到主机服务器处的虚拟硬盘文件。随后可以在虚拟机主机处修改与所传输的快照数据相关联的操作信息(例如,引导数据、系统注册表和二进制代码等)从而使得所传输的快照卷可引导。
因此,本发明的实现可以提供诸如以可以避免物理机器停机的方式进行的相对快速、“一站式”物理到虚拟的机器转换等优点。此外,由于所转换的机器在虚拟机主机处是一致的,所以本发明的各个实现允许可靠的“一站式”物理到虚拟的机器转换。如从以下说明书和权利要求书中更全面地理解的,此类转化可以用任何数目的合适的组件和模块来实现。例如,本发明的各个实现可以包括使用卷阴影复制服务(“VSS”)中组件和机制来创建应用程序(和/或文件系统)一致的快照。这些组件可以创建在快照过程期间运行的一个或多个物理机器卷的一个或多个一致的快照(或时间点映像)。
另外,本发明的各个实现可以包括使用卷盘服务(“VDS”)和/或相关的组件。一般而言,VDS(或相关的组件)包括用于在物理盘上创建和配置卷的平台。此外,本发明的各个实现包括使用“盘映像制作器(disk imager)”和在某些情况下,使用“映像挂载器(image mounter)”。通常,盘映像制作器包括被配置为在给定要复制的起始位置和字节(或字节块)数的情况下创建物理盘或卷的基于块(或字节块)的副本的组件和/或模块。相反,映像挂载器工具包括被配置为例如将虚拟硬盘文件作为输入并在文件系统中挂载该虚拟硬盘文件来将该文件展示为物理盘的一个或多个组件和/或模块。可以使该所展示的物理盘与任何其它物理盘一样可由操作系统来访问,包括在其卷中写入数据的能力。
本发明的各个实现还包括使用虚拟机主机处的虚拟硬盘文件(“VHD”文件),其中该VHD文件包括一个物理盘和由一个或多个虚拟机(“VM”)管理(且内部可访问的)的一个或多个物理盘卷。虽然术语“虚拟机”、“虚拟机主机”和“VHD文件”被用在某些微软环境中,但可以理解,此处对微软组件(和/或WINDOWS SERVER组件)的引用仅是示例性的。具体地,在阅读该说明书和权利要求书之后可以理解,可在各种实现虚拟机或相关的这种实体的操作环境中找到和实现此处所描述的组件、模块和或机制。
现参考图1A,该图示出在其中可以将物理机器105(例如,个人计算机、物理服务器等)转换为主存在虚拟机主机110处的虚拟机的示例性计算机化环境100的概略示意图。在一基本的层面上,将物理机器(例如,105)转换为虚拟机(例如,175,图1C)可以涉及拍一个或多个物理机器卷(例如,115)的快照,在虚拟机主机处创建虚拟机硬盘文件(例如,140),将快照传输到该VHD文件,并随后使VHD文件中的一个或多个所传输的快照卷可作为虚拟机(例如,175)来引导。因此,可以理解,存在可被实现来使转换高效地进行的多种不同的准备和后操作过程。
例如,在至少一实现中,可以通过使用在物理机器105的物理盘上启动一个或多个卷(例如,卷115)的快照操作的转换模块130(即,其可包括机器105和/或主机110处的一个或多个模块)来启动转换过程。一般而言,转换模块130可以包括被配置为创建物理盘卷的一致的阴影副本的任何适当的写入器和请求器。例如,如前所述,可在卷阴影复制服务中提供这种写入器和请求器。因此,例如,转换模块130可以通过向在物理盘的一个或多个卷的每一个(例如,卷115)中的所有应用程序写入器发送信号以开始其数据的快照操作来开始转换过程。例如,如所示的,卷115至少包括卷数据125,以及引导记录120。
在从转换模块130接收到该消息后,卷115上的每一应用程序写入器可以将其存储器内数据转储清除到物理盘,和/或冻结任何文件系统或卷日志。对于没有使用应用程序写入器的应用程序,转换模块130可以指示(例如,默认地,或通过用户或管理员的命令)关闭该应用程序,并且由此确保在快照期间没有进行写入。由此,图1A示出转换模块130随后可以创建卷115上的所有卷数据的单个、时间点快照(即,副本)。例如,图1A示出转换模块130已创建了卷115的快照117(即,“快照卷”),其中在这种情况下,快照117包括卷数据127和引导记录120。
可以理解,在拍快照或执行快照(和复制)操作时可以执行多种优化,以确保数据以高效的方式来复制和传输。例如,转换模块130可以标识正在使用卷115的什么部分(即,包括数据)和什么部分是空闲的。快照操作由此可以被配置为只复制卷或物理盘的所使用的部分,而非整个卷或整个物理盘。另外,快照操作还可以被配置为避开可能在虚拟化环境中不太有用(或根本没用)的特定文件。
例如,具体地,快照操作还可被配置为标识诸如包括在卷差异区域、页文件、坏簇、休眠文件等中的文件。由此可以在创建快照117或执行字节块传输时避开这些文件,并进一步降低需要传输到虚拟机主机110的数据量。可以理解,这些类型的文件和优化易于对其它类型的文件、所使用的或空闲空间计算等而在各种操作环境中变化。
无论如何,并作为解释,主要由于在快照操作期间(和/或之后)时间的改变,所以快照117中的数据127通常不同于卷115上的原始数据125。例如,由于物理机器105在快照操作期间仍在运行,卷数据125可能继续改变,如如果用户继续进行对特定应用程序数据的写入。因此,卷数据127(即,“卷数据127”)表示卷115上的数据125的早期一致的时间点,其在本质上是转换模块130启动快照过程的时间点。
然而,图1A还示出引导记录120在快照117上与其在卷115的运行中数据上相同。即,可以理解,在快照过程期间,由于应用程序通常不能访问引导记录(例如,120),所以引导记录不可能改变。具体地,引导记录通常由操作系统来改变,并通常是在少有(如果不是没有)的基础上改变的。如此,图1A示出在这种情况下引导记录120与其在快照操作之前相同。
在创建快照117之前、期间或不久之后,转换模块130还可以在虚拟机主机110处设置对应于物理机器150物理盘(未示出)的一个或多个虚拟硬盘(“VHD”)文件140。例如,图1A示出转换模块130发送消息150来创建可写入的虚拟硬盘文件140。在一实现中,这还可以包括首先发送消息来创建特定固定大小的VHD文件(例如,140),并随后发送的单独的消息以使得该VHD文件可写。(转换模块130还可以发送消息来创建(可写的或其它)动态大小的VHD文件,其大小随添加数据而增长。)
通常,每一VHD文件都可被配置为对应于计算机系统的单个物理盘,且物理盘中的每一卷都可以同样地以新创建的VHD文件来表示。然而,在某些情况下,VHD文件可以表示单个卷,而非整个物理盘。尽管如此,在其中物理盘具有多个卷(虽然只示出单个卷115)的物理盘示例中,新的VHD还可以包含对应于多个卷的数据。当然,在该点上有一些灵活性。例如,如果物理机器105的用户具有一个跨多个分区的卷(和/或作为镜像的卷等),则该用户可以决定只将一个分区专用于目标虚拟硬盘文件中的快照数据。类似地,用户可以决定只向虚拟硬盘文件传输包括多个卷的物理盘的一个卷。
因此,VHD文件的大小通常至少是与所传输的源(例如,物理盘、特定物理盘卷、物理盘中的数据等)数据可能需要的一样大的大小。如此,可以理解,在将现有虚拟机重复到更大的存储空间时,也可以使用此处的技术。例如,管理员在标识虚拟机的卷存储能力正在减少时,可以创建另外的更大的VHD文件,对虚拟机数据拍快照,并在本质上通过使用已描述的相同的过程将其快照数据传输(例如,复制)到该新的VHD文件来“重新虚拟化”虚拟机。
由此,本发明的各个实现不但包括“物理到虚拟”的机器转换,还包括“虚拟到虚拟”的机器转换。具体地,且在某些情况下,本发明的各个实现还可以更一般地被称为将“机器”转换为“虚拟机”。即,“机器”可被理解为包括“物理”计算机系统(例如,具有相关联的硬件和操作系统的台式计算机)和“虚拟”计算机系统(例如,在虚拟机主机处作为唯一计算机系统安装的计算机系统)。
无论如何,在创建虚拟硬盘文件140之后,转换模块130将文件140作为物理盘来挂载,以便文件140可以通过例如网络通信接收快照117的数据。(可以理解,在此处描述的某些实现中,可能甚至不需要挂载。)因此,图1A还示出转换模块130发送消息155来挂载虚拟硬盘文件140。在附加或替换实现中,消息155可以包括在虚拟机主机110、正被转换的物理机器105、或其中在VHD文件140所挂载的机器和正被转换的物理机器(即,本情况中的105)之间存在网络连接的任何地方的任一个上挂载VHD文件140的指令。
挂载文件140的一部分可以包括将该文件与诸如物理盘的设备ID等一个或多个设备标识符进行关联。例如,可以指示虚拟机主机110来挂载虚拟硬盘文件140以使其可通过如“\\.\device\Harddisk145\(\设备\硬盘145\)”等驱动器路径来标识。具体地,图1B示出VHD140可作为“盘驱动器145”来标识。类似地,转换模块130还可以标识每一快照(例如,117)的设备标识符(和/或例如,挂载点)。最终,转换模块130可以使用所标识的任何快照和任何对应的VHD文件的设备标识符来传输快照内容。
通常,转换模块130可以使用任何数目的数据传输机制来传输快照117内容。例如,在一实现中,转换模块130可以将快照117在逐字节的基础上通过盘驱动器145传输到文件140。然而,在附加或替换实现中,转换模块130可以通过标识和传输“字节块”来将快照117传输到文件140。一般而言,字节块包括各个字节的(任何任意大小)的固定序列。在至少一实现中,传输字节块而非各个字节可以显著地增加可通过网络传输快照117的速度。
例如,通常可能要通过传统网络传输协议花几个小时传输到虚拟机主机110的几十亿字节的数据在某些情况下可用字节块传输机制只在几分钟内就传输完毕。无论如何,图1B示出在这种情况下,转换模块130传输字节(或字节块)“1601”、“1602”等,并通过盘驱动器145将这些字节/字节块直接传输到可写虚拟硬盘文件140。如图1B所示,虚拟硬盘文件140可以具有所有的引导数据120,并在数据传输完成时将包括快照117中所捕获的其它卷数据127。
尽管进行了该数据传输,但虚拟硬盘文件140在虚拟机主机110处可能不一定是可引导的,因为该引导数据和驱动程序在虚拟机主机110的上下文中是不可能有用的其原因之一是,虚拟机环境中(和/或虚拟机主机110中)存在的“虚拟硬件”可能不同于物理机器105的硬件。例如,物理机器105上的诸如内核和硬件抽象层(“HAL”)等组件可以基于例如双处理器系统。另外,虚拟机主机110可以向所主存的虚拟机仿真可能以其它方式不能在正被转换的源机器(例如,物理机器105)找到的不同的网卡驱动程序、处理器架构、物理盘(例如,机器所附带的存储)、物理盘标识符、操作系统驱动程序、和盘驱动程序。在将物理盘卷从虚拟主机转换到虚拟机时,也可能存在这种不同。
结果,所传输的引导数据120可能基于物理机器105处的不一定能应用于虚拟机主机110处的适当的虚拟化环境的操作系统特征。这些和其它原因意味着管理员可能需要取决于特定的操作环境而作出多个不同的修改。因此,转换模块130还可以将虚拟硬盘文件140修改为可在虚拟机主机处引导的。在某些情况下,这可以包括基于快照数据更新要创建的虚拟机的内核和HAL以及其它驱动程序和注册表设置的指令。
因此,例如图1C示出转换模块130还向虚拟机主机110发送请求165和相对应的自变量来修改操作信息。(在某些情况下,这些对虚拟机的操作信息(例如,引导扇区和注册表信息)的修改甚至可以在物理机器处完成(在被传输到VHD文件中之前)。)在一实现中,这可以包括转换模块130检查卷快照117的引导记录,并基于虚拟机的新盘和卷配置用新的引导信息(例如,经修改的引导信息,或从无到有的新引导信息)替换先前所传输的引导数据120。在另一步骤中,转换模块130还可以检查所传输的卷快照117的注册表信息(未示出),并基于虚拟机主机110处存在的新硬件和驱动程序以适于虚拟机110的方式更新所传输的注册表信息。
这种更新还可以包括将诸如内核和HAL驱动程序等系统二进制代码从多处理器改为单处理器硬件配置。另外,这种更新可以包括添加对虚拟机主机110唯一的计算机和驱动器身份信息,添加对虚拟机主机110唯一的任何适当的盘或文件驱动程序,以及改变注册表信息以适应适当的网络驱动程序、存储驱动程序等。这种更新还可以包括用虚拟设备的驱动程序替换物理设备的驱动程序,在虚拟环境中没有对应的虚拟设备的情况下禁用硬件的驱动程序,以及在虚拟环境中没有对应的虚拟设备的情况下禁用依赖于设备的服务和应用程序。
另外,转换模块130还可以创建预期虚拟机(例如,175)的这些和/或其它适当的配置值,以使所得虚拟机(例如,175)用与在原始物理机器105处相同的首选项(例如,存储器、CPU等)来操作。就此,虚拟机主机110的管理员还可以(或另选地)修改所得虚拟机的这些首选项。此外,管理员甚至可以从无到有地构建这一操作信息(即,配置值、首选项等)。在任一情况下,可以理解,多个实体可以进行任何数量的适当的配置改变以确保所得虚拟机是可引导的,并在虚拟机驻地(例如,虚拟机主机110)上正确地操作。
在适当地修改/创建适当的引导记录(即,从120到123)、系统注册表信息、驱动程序信息、和/或其它配置或首选项信息之后,转换模块随后可以移除虚拟硬盘文件140的挂载(即,“卸载”),以使其不可再作为驱动器来访问。例如,图1C示出转换模块130向虚拟机主机110发送指示虚拟机主机110移除虚拟硬盘文件140的挂载的消息170。在移除该挂载后,虚拟硬盘文件140可被用作虚拟机175,其数据在本质上与起动快照操作的点处的卷115的数据相同。
具体地,新虚拟机175所管理的卷中的数据从各适当的方面来看都是一致的(例如,应用程序一致、文件系统一致、和/或崩溃一致等)。结果,物理机器105的先前用户现在将能够引导虚拟机主机110处的虚拟机175,并能够像该用户使用物理机器105一样(或比其更佳地)使用虚拟机(包括访问先前数据)。另外,可以理解VHD文件一般可以是可移植的。例如,最终用户可以在至少一实现中仅仅通过将与虚拟机175相关联的虚拟机文件(例如,VHD文件等)传输到所需位置并执行任何必要的操作信息更新而将虚拟机175传输到任何所需的位置(即,另一虚拟机主机)。
在另一实现中,甚至可以在物理机器105本身处创建一个或多个VHD文件(例如,140),并随后将其发送/传输到适当的虚拟机主机(例如,110)。例如,物理机器105的用户可以在该物理机器处创建VHD文件(例如,140),并将关于物理机器处的感兴趣数据的快照内容传输到该VHD文件。如果需要,这至少是用户可以避免挂载该VHD文件(即,在虚拟机主机110处)的一种方法。在任一情况下,用户随后可以将该VHD文件和对应的快照内容发送/传输到适当的目的地(例如,虚拟机主机110),并改变目的地处对应的操作信息。另选地,用户甚至可以在将VHD文件和快照内容发送到新目的地之前,在源(例如,物理机器105)处改变该VHD文件的操作信息和快照内容。
在某些情况下,并非如此创建VHD“文件”,而是模块(例如,转换模块130)可被配置为从存储器将在物理机器105处创建的快照数据和VHD元数据流化为适于高效传输的部分(例如,字节块)。要被流化的数据还可以根据适当的VHD格式/内容规范以VHD格式来格式化。因此,在被传输到目的地(例如,虚拟机主机110)之后,该流随后作为VHD文件来保存,因为流化的数据是以VHD格式生成的。这是避免挂载VHD文件的另一方法。
因此,图1A-1C示出多个概略示意图和可被用来根据本发明的各个实现来创建物理机器卷数据快照和从该数据创建新虚拟机的组件。除了上述内容之外,本发明的各实现还可以按照包括用于实现特定结果的一个或多个动作的方法的流程图来描述。例如,图2示出从物理机器105和虚拟机主机110的观点来看的、用于将诸如物理机器或虚拟机等机器转换为不同的虚拟机的方法的流程图。以下将参考按照图1A到1C中的机制的组件来描述图2的方法。
例如,图2示出从物理机器105的观点来看的、将物理机器转换为虚拟机主机处的虚拟机而不在一个或多个物理机器卷上招致显著的停机时间的方法可以包括标识物理机器的硬件配置的动作200。动作200包括标识机器的一个或多个卷的一个或多个硬件配置设置。例如,图1A示出可以在启动快照过程之前标识卷115上的硬件(和/或软件)配置设置的转换模块130。这可以包括标识当存在于物理机器105的卷115上时的引导记录120和卷数据125,且还可以包括标识该数据是否被配置为用于多处理器环境、操作系统所支持的文件中的不兼容性、是否存在需要考虑的存储和网络驱动程序等。
另外,图2示出从物理机器105的观点来看的方法可以包括创建一个或多个卷的快照的动作210。动作210包括创建对应于该一个或多个机器卷的一个或多个一致的快照。例如,图1A示出转换模块130创建卷115的快照117,其包括与之前相同的引导记录120以及卷数据127。在至少一实现中,转换模块130可以在卷115上调用可用的涉及写入器的快照过程或仅仅关闭其中这些写入器不可用的应用程序(或其它写入过程)。结果,可以确保快照117中的数据对于快照过程之后的单个时间实例是一致的(例如,应用程序一致)。
图2还示出从物理机器105的观点来看的方法可以包括将该快照发送到所挂载的虚拟盘文件的动作220。动作220包括将该一个或多个一致的快照发送到所挂载的虚拟硬盘文件。例如,转换模块130检索在物理机器105处所拍的每一快照的设备标识符,并进一步检索在虚拟机主机110处所挂载的每一虚拟硬盘文件的任何设备标识符。在检索到适当的设备标识符后,图1B示出转换模块130可以将快照117的卷数据127传输到虚拟硬盘文件140,如使用字节(或字节块)传输/复制机制。
图2还示出从物理机器105的观点来看的方法可以包括将引导记录发送到所挂载的虚拟盘文件的动作250。动作230包括将一个或多个一致的快照的引导记录发送到所挂载的虚拟硬盘文件,以便可以在虚拟机主机处修改一个或多个一致的快照的引导记录。例如,图1B示出转换模块130还将引导数据120发送到虚拟硬盘文件140。图1C还示出转换模块130可以发送将引导记录120修改为记录123的消息165,以使引导记录123对于虚拟机主机110的操作环境是一致的。在一实现中,可以简单地从无到有地创建新虚拟机的新引导记录,而非只是发送和修改。
除上述内容之外,图2示出从虚拟机主机110的观点来看的将机器(即物理机器或先前的虚拟机)转换为虚拟机主机处的虚拟机而不在一个或多个机器卷上招致显著的停机时间的方法可以包括创建虚拟硬盘文件的动作240。动作240包括创建具有文件大小的虚拟硬盘文件。例如,图1A示出虚拟机主机110接收指示虚拟机主机110创建可写的虚拟硬盘文件的消息150,以及使该新的虚拟硬盘文件可写的指令。作为响应,虚拟机主机110创建虚拟硬盘文件140并使其可写。如前所述,在此,虚拟硬盘文件大小可以是静态的或是动态的。例如,虚拟硬盘文件140可被设为100GB以容纳50GB的卷115数据。另选地,转换模块130设置虚拟硬盘文件140随附加的数据传输而动态地增长。
图2还示出从虚拟机主机110的观点来看的方法可以包括挂载虚拟硬盘文件的动作250。动作250包括在虚拟机主机处挂载虚拟硬盘文件,以使虚拟硬盘文件表现为可访问的物理盘。例如,图1A示出虚拟机主机110接收挂载虚拟硬盘文件140的请求155。在一实现中,可以指示虚拟机主机110将文件140和特定的设备标识符进行关联,并随后将该标识符挂载为物理设备。随后可以将虚拟硬盘文件140作为盘设备145来查看和访问。
另外,从虚拟机主机110的观点来看的方法可以包括接收一个或多个快照的动作260。动作260包括接收对应于一个或多个物理机器卷的一个或多个一致的快照的数据。例如,如图1B所示,虚拟机主机110通过使用任何适当的传输机制(即,在任何网络传输协议上逐字节或逐字节块等)接收卷数据127和引导数据120。
此外,图2示出从虚拟机主机110的观点来看的方法可以包括修改引导记录的动作270。动作270包括修改一个或多个一致的快照的操作信息,以使该一个或多个一致的快照适于虚拟机主机处的操作系统。如图1C所示,例如,虚拟机主机110接收修改操作信息的消息165。例如,消息165可以包括标识适当的虚拟机主机110准则和以适当的方式将引导数据120改为引导数据123的一个或多个请求。消息165(或另一消息-未示出)还可以包括改变注册表和/或操作首选项信息的一个或多个请求。
操作特性的这些改变可以包括,例如,任何数量的硬件和操作系统配置(例如,任何数量的处理器、硬件驱动程序、盘驱动程序/标识符和存储驱动程序/标识符、网络驱动程序等)。可能需要考虑这些改变以确保虚拟机的新操作系统对于虚拟环境是兼容的并运行正常。操作特性的改变还可以包括各种注册表操纵,如驱动程序和其它硬件的用法、二进制代码中被替换和/或注册的驱动程序的身份、对内核和/HAL信息的更新等。操作特性的改变还可以包括虚拟机的各种配置首选项,如关于存储器和/或CPU要求的那些首选项。
另外,图2示出从虚拟机主机110的观点来看的方法可以包括移除虚拟硬盘文件挂载的动作280。动作280包括移除硬盘文件挂载,以使虚拟硬盘文件不可再作为物理盘来访问。例如,虚拟机主机110接收请求虚拟机主机110移除虚拟硬盘文件140挂载的消息170。虚拟机主机110随后可以卸载虚拟硬盘文件,以使文件140不再作为本地或通过网络可访问的主机级盘驱动器。结果,虚拟盘文件140可作为包含对单个时间实例一致的数据的虚拟机175来引导,并准备好在虚拟机主机110处操作。具体地,且从最终用户的观点来看,出于所有虚拟的意图和目的,虚拟机175是在快照操作之前的物理机器105的本质上相同的形式(即,相同的数据或其数据子集)。
因此,图1A-1C和图2提供用于将机器(例如,物理机器或先前的虚拟机)转换为虚拟机的多个组件和机制。具体地,这些附图和对应的文本描述如何至少在一方面实现本发明的各个实现而不必重新引导正在被转换的机器,和/或不必重新引导到ADS或PXE环境中。如此,上述组件和机制允许如以传统的盘和网络传输速度相当迅速地创建物理机器。
如本文先前所提到的,可以对于各种各样的优化和各种各样的硬件和操作系统环境而改变或修改本发明的各个实现。例如,可以很容易地将本发明的各个实现应用于任何类型的机器到新的虚拟机的转换。例如,对于先前的虚拟机,用户可能期望为其各卷可能已经溢出的虚拟机创建更多的存储空间。由此,用户可以创建比先前虚拟机的先前的VHD文件大的一个或多个VHD文件,对先前虚拟机数据拍快照,并将虚拟机快照传输到这些较大的VHD文件。此外,除明确描述的那些之外,此处所描述的转换过程可被进一步分为多个独立的步骤。例如,如果用户拥有将卷映像传输到目标机器的方法,则该用户可以简单地调用修补操作来“虚拟化”该映像,或其它,以使该映像在目标机器处可引导。
除上述之外,很容易可以理解,本发明的各个实现还可以被应用于各种盘配置中。例如,其上安装机器卷115的物理盘可以是操作系统中的任何一个或多个基本的或动态的盘,且还可以具有各种分区和/或卷。尽管如此,此处所描述的过程、组件和机制可以如其在先前的机器(例如,物理机器或先前虚拟机)上一样应用于虚拟机中的这些变型。具体地,可以将与物理动态的或基本的盘相关联的特征传输到虚拟机主机,以使新的虚拟机如其之前一样用这些基本或动态的盘特性来运作。因此,可以广泛地应用此处所描述的各个组件、模块和机制以确保从先前机器到该先前机器的新近虚拟化的形式的无缝转换。
本发明的各实施例可以包括含有各种计算机硬件的专用或通用计算机,这将在以下做出进一步讨论。本发明的范围内的各实施例也包括用于承载或其上储存有计算机可执行指令或数据结构的计算机可读介质。这样的计算机可读介质可以是可由通用或专用计算机访问的任何可用介质。
作为示例而非限制,这样的计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁存储设备、或可用于承载或存储计算机可执行指令或数据结构形式的所需程序代码装置且可由通用或专用计算机访问的任何其它介质。当信息通过网络或另一通信连接(硬连线、无线或硬连线或无线的组合)传输或提供给计算机时,该计算机将该连接适当地视为计算机可读介质。因此,任何这样的连接被适当地称为计算机可读介质。以上的组合也应包括在计算机可读介质的范围之内。
计算机可执行指令包括例如,使通用计算机、专用计算机、或专用处理设备执行某一功能或某组功能的指令和数据。尽管用对结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求的示例形式公开的。
本发明可具体化为其它具体形式而不背离其精神或本质特征。所述实施例在所有方面都应被认为仅是说明性而非限制性的。从而,本发明的范围由所附权利要求书而非前述描述指示。落入权利要求书的等效技术方案的含义和范围内的所有改变应被权利要求书的范围涵盖。
Claims (21)
1.一种在包括被配置为一个或多个虚拟机的宿主的虚拟机主机的计算机化环境中的机器处,将所述机器转换为所述虚拟机主机处的虚拟机的方法,其中所述机器包括一个或多个卷,所述方法包括以下动作:
标识所述机器的一个或多个卷的一个或多个硬件配置设置;
创建对应于所述机器的一个或多个卷的一个或多个一致的快照;
将所述一个或多个一致的快照发送到所挂载的虚拟硬盘文件;以及
将所述一个或多个一致的快照的引导记录发送到所挂载的虚拟硬盘文件,以便能够在所述虚拟机主机处修改所述一个或多个一致的快照的所述引导记录,以适合于虚拟机主机处的操作系统。
2.如权利要求1所述的方法,其特征在于,通过将所述一个或多个一致的快照中的至少一个作为一组一个或多个字节块来传输而将所述至少一个快照发送到所述虚拟机主机。
3.如权利要求1所述的方法,其特征在于,所述机器是物理机器,且所述物理机器和所述虚拟机主机是同一计算机系统,以便所述物理机器的一个或多个卷被传输到所述同一计算机系统中的所述物理机器的不同盘设备。
4.如权利要求1所述的方法,其特征在于,所述机器的一个或多个卷包括安装在动态物理盘上的多个机器卷。
5.如权利要求1所述的方法,其特征在于,所述创建所述一个或多个一致的快照的动作还包括以下动作:
标识所述机器的一个或多个卷上的已使用的空间和空闲空间;
标识所述已使用的空间中要在快照或复制操作期间避开的一个或多个文件,所述要避开的一个或多个文件包括差异区域文件、页文件、坏簇、休眠文件中的任何一个或多个;以及
将数据从所述机器的一个或多个卷复制到一个或多个虚拟硬盘文件,以使所复制的数据包括所标识的已使用空间。
6.如权利要求5所述的方法,其特征在于,所标识的已使用空间是不具有所述一个或多个要避开的文件的已使用空间。
7.如权利要求1所述的方法,其特征在于,所述标识一个或多个硬件配置设置的动作还包括以下动作:
标识所述一个或多个卷上针对涉及写入器的快照过程配置的一个或多个应用程序;以及
向每一所标识的应用程序发送开始涉及写入器的快照过程的指令。
8.如权利要求7所述的方法,其特征在于,还包括以下动作:
标识未针对涉及写入器的快照过程配置的一个或多个应用程序;以及
关闭所标识的未针对涉及写入器的过程配置的一个或多个应用程序的每一个。
9.如权利要求1所述的方法,其特征在于,还包括以下动作:
向所述虚拟机主机发送创建所述挂载的虚拟硬盘文件的一个或多个指令;以及
向所述虚拟机主机发送使所述挂载的虚拟硬盘文件可写的指令。
10.如权利要求9所述的方法,其特征在于,所述挂载的虚拟硬盘文件是动态大小的,以使所述虚拟硬盘文件的大小能够随时间改变。
11.如权利要求9所述的方法,其特征在于,还包括以下动作:
发送挂载所述挂载的虚拟硬盘文件的一个或多个指令;以及
标识所挂载的虚拟硬盘文件的设备标识符。
12.如权利要求11所述的方法,其特征在于,还包括标识所述一个或多个一致的快照的一个或多个设备标识符的动作。
13.如权利要求1所述的方法,其特征在于,还包括以下动作:
标识所述虚拟机主机的一个或多个系统值;以及
发送根据所标识的一个或多个系统值来修改所述一个或多个一致的快照的数据的操作信息的指令;
其中所述修改操作信息的指令包括修改以下任何一个或多个的指令:
(i)引导记录;
(ii)系统注册表信息;
(iii)一个或多个驱动程序;
(iv)操作系统二进制代码;
(v)内核二进制代码;或
(vi)所述虚拟机的一个或多个配置首选项。
14.如权利要求13所述的方法,其特征在于,所述修改操作信息的指令包括以下任何一个或多个:
用一个或多个虚拟设备的驱动程序替换一个或多个物理设备的驱动程序的一个或多个指令;
在所述虚拟机中没有对应的虚拟设备的情况下禁用硬件的设备驱动程序的一个或多个指令;或
禁用依赖于在所述虚拟机主机处不存在的一个或多个设备的一个或多个服务的一个或多个指令。
15.如权利要求13所述的方法,其特征在于,还包括向所述虚拟机主机发送一个或多个指令,以卸载所述虚拟硬盘文件以使所述虚拟硬盘文件可作为虚拟机而非物理盘来访问的动作。
16.一种在计算机化环境中的虚拟机主机处,将物理机器转换为所述虚拟机主机处的虚拟机的方法,所述虚拟机主机被配置为包括一个或多个卷的一个或多个虚拟机的宿主,所述方法包括以下动作:
创建具有一个文件的大小的虚拟硬盘文件;
在虚拟机主机处挂载所述虚拟硬盘文件,以使所述虚拟硬盘文件表现为可访问的物理盘;
接收对应于一个或多个物理机器卷的一个或多个一致的快照;
修改所述一个或多个一致的快照中的对应于引导记录和注册表设置的操作消息,以使所述一个或多个一致的快照适于引导所述虚拟机主机处的操作系统;以及
卸载所述虚拟硬盘文件,以使所述虚拟硬盘文件不再可作为物理盘来访问。
17.如权利要求16所述的方法,其特征在于,还包括在所述虚拟硬盘文件中保存所述一个或多个一致的快照的动作。
18.如权利要求16所述的方法,其特征在于,还包括在字节块级上接收所述一个或多个一致的快照的数据的动作。
19.如权利要求16所述的方法,其特征在于,还包括以下动作:
接收使所创建的虚拟硬盘文件可写的指令;以及
向物理计算机系统发送所挂载的虚拟硬盘文件的设备标识符。
20.如权利要求16所述的方法,其特征在于,还包括向所述物理机器报告一个或多个系统值的动作,其中所述一个或多个系统值被用来修改所述一个或多个一致的快照的操作信息。
21.一种在包括被配置为一个或多个虚拟机的宿主的虚拟机主机的计算机化环境中的机器处,将机器转换为虚拟机主机处的虚拟机的系统,其中,所述机器包括一个或多个卷,所述系统包括:
用于标识机器的一个或多个卷的一个或多个硬件配置设置的装置;
用于创建对应于所述机器的一个或多个卷的一个或多个一致的快照的装置;
用于将所述一个或多个一致的快照发送到所挂载的虚拟硬盘文件的装置;以及
用于将所述一个或多个一致的快照的引导记录发送到所挂载的虚拟硬盘文件,以便能够在所述虚拟机主机处修改所述一个或多个一致的快照的所述引导记录以适合于虚拟机主机处的操作系统的装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/430,676 | 2006-05-08 | ||
US11/430,676 US7653794B2 (en) | 2006-05-08 | 2006-05-08 | Converting physical machines to virtual machines |
PCT/US2007/006021 WO2007130209A1 (en) | 2006-05-08 | 2007-03-08 | Converting machines to virtual machines |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110430731.6A Division CN102541658B (zh) | 2006-05-08 | 2007-03-08 | 将机器转换为虚拟机 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101443748A CN101443748A (zh) | 2009-05-27 |
CN101443748B true CN101443748B (zh) | 2012-02-08 |
Family
ID=38662463
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110430731.6A Active CN102541658B (zh) | 2006-05-08 | 2007-03-08 | 将机器转换为虚拟机 |
CN2007800169624A Active CN101443748B (zh) | 2006-05-08 | 2007-03-08 | 将机器转换为虚拟机 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110430731.6A Active CN102541658B (zh) | 2006-05-08 | 2007-03-08 | 将机器转换为虚拟机 |
Country Status (18)
Country | Link |
---|---|
US (1) | US7653794B2 (zh) |
EP (1) | EP2021939B1 (zh) |
JP (2) | JP5026509B2 (zh) |
KR (2) | KR101465928B1 (zh) |
CN (2) | CN102541658B (zh) |
AU (1) | AU2007248886B2 (zh) |
BR (1) | BRPI0711336A8 (zh) |
CA (1) | CA2648761C (zh) |
ES (1) | ES2632512T3 (zh) |
HK (1) | HK1172718A1 (zh) |
IL (2) | IL194679A (zh) |
MX (1) | MX2008014244A (zh) |
MY (1) | MY149997A (zh) |
NO (1) | NO342885B1 (zh) |
RU (2) | RU2446450C2 (zh) |
TW (2) | TWI547875B (zh) |
WO (1) | WO2007130209A1 (zh) |
ZA (1) | ZA200808579B (zh) |
Families Citing this family (146)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7617501B2 (en) | 2004-07-09 | 2009-11-10 | Quest Software, Inc. | Apparatus, system, and method for managing policies on a computer having a foreign operating system |
US8347063B2 (en) * | 2005-08-19 | 2013-01-01 | Intel Corporation | Method and system for device address translation for virtualization |
US7904949B2 (en) | 2005-12-19 | 2011-03-08 | Quest Software, Inc. | Apparatus, systems and methods to provide authentication services to a legacy application |
US8087075B2 (en) * | 2006-02-13 | 2011-12-27 | Quest Software, Inc. | Disconnected credential validation using pre-fetched service tickets |
US8577940B2 (en) * | 2006-03-20 | 2013-11-05 | Parallels IP Holdings GmbH | Managing computer file system using file system trees |
US8321377B2 (en) | 2006-04-17 | 2012-11-27 | Microsoft Corporation | Creating host-level application-consistent backups of virtual machines |
US7617373B2 (en) * | 2006-05-23 | 2009-11-10 | International Business Machines Corporation | Apparatus, system, and method for presenting a storage volume as a virtual volume |
US8429712B2 (en) * | 2006-06-08 | 2013-04-23 | Quest Software, Inc. | Centralized user authentication system apparatus and method |
US8086710B2 (en) | 2006-10-30 | 2011-12-27 | Quest Software, Inc. | Identity migration apparatus and method |
US7689859B2 (en) * | 2006-12-20 | 2010-03-30 | Symantec Operating Corporation | Backup system and method |
US8656386B1 (en) * | 2007-03-13 | 2014-02-18 | Parallels IP Holdings GmbH | Method to share identical files in a common area for virtual machines having the same operating system version and using a copy on write to place a copy of the shared identical file in a private area of the corresponding virtual machine when a virtual machine attempts to modify the shared identical file |
EP2137629A4 (en) * | 2007-03-20 | 2010-12-29 | Sanggyu Lee | MOBILE VIRTUAL MACHINE IMAGE |
US20080235361A1 (en) * | 2007-03-21 | 2008-09-25 | David Crosbie | Management layer method and apparatus for dynamic assignment of users to computer resources |
US8566502B2 (en) * | 2008-05-29 | 2013-10-22 | Vmware, Inc. | Offloading storage operations to storage hardware using a switch |
US8239646B2 (en) | 2007-07-31 | 2012-08-07 | Vmware, Inc. | Online virtual machine disk migration |
US8245217B2 (en) | 2007-10-12 | 2012-08-14 | Microsoft Corporation | Management of software and operating system updates required for the process of creating a virtual machine facsimile of an existing physical or virtual machine |
US8407688B2 (en) * | 2007-11-27 | 2013-03-26 | Managelq, Inc. | Methods and apparatus for storing and transmitting historical configuration data associated with information technology assets |
US7865711B2 (en) * | 2007-12-03 | 2011-01-04 | Microsoft Corporation | Efficient method for operating system deployment |
US8181174B2 (en) * | 2007-12-28 | 2012-05-15 | Accenture Global Services Limited | Virtual machine configuration system |
US20090217296A1 (en) * | 2008-02-26 | 2009-08-27 | Alexander Gebhart | Benefit analysis of implementing virtual machines |
US8560593B2 (en) | 2008-03-27 | 2013-10-15 | Dell Software Inc. | System for provisioning, allocating, and managing virtual and physical desktop computers in a network computing environment |
US8365167B2 (en) * | 2008-04-15 | 2013-01-29 | International Business Machines Corporation | Provisioning storage-optimized virtual machines within a virtual desktop environment |
US8364983B2 (en) * | 2008-05-08 | 2013-01-29 | Microsoft Corporation | Corralling virtual machines with encryption keys |
US8266099B2 (en) * | 2008-05-29 | 2012-09-11 | Vmware, Inc. | Offloading storage operations to storage hardware using a third party server |
US8745336B2 (en) * | 2008-05-29 | 2014-06-03 | Vmware, Inc. | Offloading storage operations to storage hardware |
US20090328030A1 (en) * | 2008-06-27 | 2009-12-31 | Microsoft Corporation | Installing a management agent with a virtual machine |
US20100042719A1 (en) * | 2008-08-12 | 2010-02-18 | Junji Kinoshita | Content access to virtual machine resource |
US8150801B2 (en) * | 2008-08-20 | 2012-04-03 | Microsoft Corporation | Recovery of a computer that includes virtual disks |
US8307177B2 (en) | 2008-09-05 | 2012-11-06 | Commvault Systems, Inc. | Systems and methods for management of virtualization data |
US8572608B2 (en) * | 2008-10-22 | 2013-10-29 | Vmware, Inc. | Methods and systems for converting a related group of physical machines to virtual machines |
CN101408856A (zh) * | 2008-11-21 | 2009-04-15 | 清华大学 | 一种用于容灾备份的系统和方法 |
US9454368B2 (en) | 2009-01-21 | 2016-09-27 | Vmware, Inc. | Data mover permitting data transfer without transferring data between application and operating system |
JP5166307B2 (ja) * | 2009-01-30 | 2013-03-21 | 株式会社立花エレテック | 接続機器利用システムおよびその方法 |
US9134922B2 (en) | 2009-03-12 | 2015-09-15 | Vmware, Inc. | System and method for allocating datastores for virtual machines |
US8255984B1 (en) | 2009-07-01 | 2012-08-28 | Quest Software, Inc. | Single sign-on system for shared resource environments |
US20110010710A1 (en) * | 2009-07-10 | 2011-01-13 | Microsoft Corporation | Image Transfer Between Processing Devices |
US9778946B2 (en) * | 2009-08-07 | 2017-10-03 | Dell Software Inc. | Optimized copy of virtual machine storage files |
US9043454B2 (en) * | 2009-08-26 | 2015-05-26 | Red Hat Israel, Ltd. | Auto suspense of virtual machine on client disconnection |
US8589913B2 (en) * | 2009-10-14 | 2013-11-19 | Vmware, Inc. | Tracking block-level writes |
US8161077B2 (en) * | 2009-10-21 | 2012-04-17 | Delphix Corp. | Datacenter workflow automation scenarios using virtual databases |
US8150808B2 (en) | 2009-10-21 | 2012-04-03 | Delphix Corp. | Virtual database system |
US8856080B2 (en) | 2009-10-30 | 2014-10-07 | Microsoft Corporation | Backup using metadata virtual hard drive and differential virtual hard drive |
US9106591B2 (en) | 2009-12-24 | 2015-08-11 | Delphix Corporation | Adaptive resource management using survival minimum resources for low priority consumers |
US9262306B2 (en) * | 2010-01-27 | 2016-02-16 | Hewlett Packard Enterprise Development Lp | Software application testing |
US8751780B2 (en) | 2010-02-08 | 2014-06-10 | Microsoft Corporation | Fast machine booting through streaming storage |
US8751738B2 (en) | 2010-02-08 | 2014-06-10 | Microsoft Corporation | Background migration of virtual storage |
US8204860B1 (en) * | 2010-02-09 | 2012-06-19 | F5 Networks, Inc. | Methods and systems for snapshot reconstitution |
JP5636695B2 (ja) * | 2010-03-02 | 2014-12-10 | 日本電気株式会社 | フォールトトレラントシステム及び仮想マシン構築方法 |
KR20110106716A (ko) | 2010-03-23 | 2011-09-29 | 삼성전자주식회사 | 프로그램 컴파일러, 설치 장치, 및 설치 방법 |
US8775781B2 (en) | 2010-03-25 | 2014-07-08 | Microsoft Corporation | Intelligent boot device selection and recovery |
CN102214126A (zh) * | 2010-04-02 | 2011-10-12 | 英业达股份有限公司 | 卷影复制服务的供应程序的对象的创建方法 |
US8996667B2 (en) | 2010-04-27 | 2015-03-31 | International Business Machines Corporation | Deploying an operating system |
US9767274B2 (en) * | 2011-11-22 | 2017-09-19 | Bromium, Inc. | Approaches for efficient physical to virtual disk conversion |
US9569446B1 (en) | 2010-06-08 | 2017-02-14 | Dell Software Inc. | Cataloging system for image-based backup |
US8548944B2 (en) | 2010-07-15 | 2013-10-01 | Delphix Corp. | De-duplication based backup of file systems |
US20120054742A1 (en) * | 2010-09-01 | 2012-03-01 | Microsoft Corporation | State Separation Of User Data From Operating System In A Pooled VM Environment |
US8490088B2 (en) * | 2010-09-10 | 2013-07-16 | International Business Machines Corporation | On demand virtual machine image streaming |
US8694745B2 (en) | 2010-09-15 | 2014-04-08 | Symantec Corporation | Physical to virtual disks creation (P2V) method, by harvesting data from critical sectors |
JP2012068790A (ja) | 2010-09-22 | 2012-04-05 | Internatl Business Mach Corp <Ibm> | Osのイメージの選択装置、選択方法、及び選択プログラム |
JP5492731B2 (ja) | 2010-10-06 | 2014-05-14 | 株式会社日立製作所 | 仮想計算機のボリューム割当て方法およびその方法を用いた計算機システム |
US9069620B2 (en) | 2010-10-20 | 2015-06-30 | Microsoft Technology Licensing, Llc | Creating and deploying service-ready virtual hard disks |
US9092149B2 (en) | 2010-11-03 | 2015-07-28 | Microsoft Technology Licensing, Llc | Virtualization and offload reads and writes |
WO2012063311A1 (ja) * | 2010-11-08 | 2012-05-18 | 株式会社日立製作所 | 計算機の制御方法、計算機システム及び記憶媒体 |
GB2499956B (en) | 2010-11-23 | 2018-02-14 | Servicenow Inc | Direct migration of software images with streaming technique |
US8468174B1 (en) | 2010-11-30 | 2013-06-18 | Jedidiah Yueh | Interfacing with a virtual database system |
US8495352B2 (en) | 2010-12-08 | 2013-07-23 | International Business Machines Corporation | System and method for instantiation of distributed applications from disk snapshots |
CN103250163B (zh) | 2010-12-09 | 2016-08-10 | 国际商业机器公司 | 用于加密和解密虚拟盘的计算机可读存储介质 |
CN103250134B (zh) | 2010-12-13 | 2016-09-07 | 国际商业机器公司 | 基于流技术的软件映像更新 |
JP5767565B2 (ja) | 2010-12-14 | 2015-08-19 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | ソフトウェア・イメージの管理方法、コンピュータ・プログラム、およびシステム(共有メモリ・ブロックを用いた複数のソフトウェア・イメージの管理) |
JP5672075B2 (ja) * | 2011-03-03 | 2015-02-18 | 日本電気株式会社 | 計算機システム、仮想環境マイグレーション方法および仮想環境マイグレーションプログラム |
US9146765B2 (en) | 2011-03-11 | 2015-09-29 | Microsoft Technology Licensing, Llc | Virtual disk storage techniques |
US8725782B2 (en) | 2011-04-25 | 2014-05-13 | Microsoft Corporation | Virtual disk storage techniques |
US9519496B2 (en) | 2011-04-26 | 2016-12-13 | Microsoft Technology Licensing, Llc | Detecting and preventing virtual disk storage linkage faults |
US9069467B2 (en) * | 2011-06-01 | 2015-06-30 | Microsoft Technology Licensing, Llc | Isolation of virtual machine I/O in multi-disk hosts |
US20130007726A1 (en) | 2011-06-30 | 2013-01-03 | Indrajit Poddar | Virtual machine disk image installation |
KR101493827B1 (ko) * | 2011-07-04 | 2015-02-17 | 주식회사 케이티 | 물리서버를 가상 서버로 마이그레이션하는 장치 및 그 방법 |
DE102011107169A1 (de) * | 2011-07-13 | 2013-01-17 | Kuka Roboter Gmbh | Steuerung eines Roboter |
US9158561B2 (en) * | 2011-08-18 | 2015-10-13 | Vmware, Inc. | Systems and methods for modifying an operating system for a virtual machine |
US8595460B2 (en) | 2011-08-26 | 2013-11-26 | Vmware, Inc. | Configuring object storage system for input/output operations |
CN102323943A (zh) * | 2011-09-02 | 2012-01-18 | 北京天地云箱科技有限公司 | 基于虚拟机的数据存储方法及系统 |
US20130066838A1 (en) * | 2011-09-12 | 2013-03-14 | Microsoft Corporation | Efficient data recovery |
EP2570920A1 (en) * | 2011-09-16 | 2013-03-20 | France Télécom | System and method for cross-platform application execution and display |
US9461881B2 (en) * | 2011-09-30 | 2016-10-04 | Commvault Systems, Inc. | Migration of existing computing systems to cloud computing sites or virtual machines |
US9009318B2 (en) * | 2011-11-03 | 2015-04-14 | Microsoft Corporation | Offline resource allocation algorithms |
US9817582B2 (en) | 2012-01-09 | 2017-11-14 | Microsoft Technology Licensing, Llc | Offload read and write offload provider |
JP5684170B2 (ja) * | 2012-02-28 | 2015-03-11 | 株式会社東芝 | 情報処理装置、クライアント管理システムおよびクライアント管理方法 |
US9055067B1 (en) | 2012-03-26 | 2015-06-09 | Amazon Technologies, Inc. | Flexible-location reservations and pricing for network-accessible resource capacity |
TWI456944B (zh) * | 2012-05-02 | 2014-10-11 | Quanta Comp Inc | 管理方法及其系統 |
US9952879B2 (en) | 2012-08-30 | 2018-04-24 | Microsoft Technology Licensing, Llc | Application pre-layout in byte-addressable persistent random access memory |
US9740500B2 (en) | 2012-08-30 | 2017-08-22 | Microsoft Technology Licensing, Llc | Layout system for operating systems using BPRAM |
US9778860B2 (en) | 2012-09-12 | 2017-10-03 | Microsoft Technology Licensing, Llc | Re-TRIM of free space within VHDX |
US8788461B2 (en) | 2012-10-04 | 2014-07-22 | Delphix Corp. | Creating validated database snapshots for provisioning virtual databases |
US9071585B2 (en) | 2012-12-12 | 2015-06-30 | Microsoft Technology Licensing, Llc | Copy offload for disparate offload providers |
US9251201B2 (en) | 2012-12-14 | 2016-02-02 | Microsoft Technology Licensing, Llc | Compatibly extending offload token size |
US9740702B2 (en) | 2012-12-21 | 2017-08-22 | Commvault Systems, Inc. | Systems and methods to identify unprotected virtual machines |
US9378035B2 (en) | 2012-12-28 | 2016-06-28 | Commvault Systems, Inc. | Systems and methods for repurposing virtual machines |
US20140196039A1 (en) | 2013-01-08 | 2014-07-10 | Commvault Systems, Inc. | Virtual machine categorization system and method |
US10025674B2 (en) * | 2013-06-07 | 2018-07-17 | Microsoft Technology Licensing, Llc | Framework for running untrusted code |
US9383986B2 (en) | 2013-06-18 | 2016-07-05 | Disney Enterprises, Inc. | Safe low cost web services software deployments |
US9841983B2 (en) * | 2013-06-28 | 2017-12-12 | Vmware, Inc. | Single click host maintenance |
US9262448B2 (en) * | 2013-08-12 | 2016-02-16 | International Business Machines Corporation | Data backup across physical and virtualized storage volumes |
US9639384B2 (en) * | 2013-08-20 | 2017-05-02 | Vmware, Inc. | Method and system for fast provisioning of virtual desktop |
US10359951B1 (en) * | 2013-08-23 | 2019-07-23 | Acronis International Gmbh | Snapshotless backup |
US9594583B2 (en) | 2013-11-12 | 2017-03-14 | Red Hat, Inc. | Lightweight snapshots for virtual disks |
CN104809020B (zh) * | 2013-11-20 | 2018-05-11 | 华为技术有限公司 | 一种生成快照的方法、系统和装置 |
WO2015074200A1 (zh) | 2013-11-20 | 2015-05-28 | 华为技术有限公司 | 一种生成快照的方法、系统和装置 |
CN103761168B (zh) * | 2014-01-26 | 2017-06-13 | 上海爱数信息技术股份有限公司 | 一种基于nfs卷挂载备份虚拟机的方法 |
US20150269029A1 (en) * | 2014-03-20 | 2015-09-24 | Unitrends, Inc. | Immediate Recovery of an Application from File Based Backups |
US9454439B2 (en) | 2014-05-28 | 2016-09-27 | Unitrends, Inc. | Disaster recovery validation |
US9448834B2 (en) | 2014-06-27 | 2016-09-20 | Unitrends, Inc. | Automated testing of physical servers using a virtual machine |
US20160019317A1 (en) | 2014-07-16 | 2016-01-21 | Commvault Systems, Inc. | Volume or virtual machine level backup and generating placeholders for virtual machine files |
US9684567B2 (en) * | 2014-09-04 | 2017-06-20 | International Business Machines Corporation | Hypervisor agnostic interchangeable backup recovery and file level recovery from virtual disks |
CN104298559B (zh) * | 2014-09-30 | 2018-03-02 | 深信服科技股份有限公司 | 物理主机系统虚拟化的方法及装置 |
TWI608420B (zh) * | 2014-10-20 | 2017-12-11 | 緯創資通股份有限公司 | 虛擬機器監控方法及其系統 |
CN104331375B (zh) * | 2014-10-29 | 2018-08-07 | 中国建设银行股份有限公司 | 共享虚拟化资源池环境下的共享虚拟资源管理方法和装置 |
US9983936B2 (en) | 2014-11-20 | 2018-05-29 | Commvault Systems, Inc. | Virtual machine change block tracking |
US9798567B2 (en) | 2014-11-25 | 2017-10-24 | The Research Foundation For The State University Of New York | Multi-hypervisor virtual machines |
US20160162302A1 (en) * | 2014-12-07 | 2016-06-09 | Strato Scale Ltd. | Fast initiation of workloads using memory-resident post-boot snapshots |
WO2016197069A1 (en) | 2015-06-05 | 2016-12-08 | Nutanix, Inc. | Architecture for managing i/o and storage for a virtualization environment using executable containers and virtual machines |
CN105573791A (zh) * | 2015-12-15 | 2016-05-11 | 国云科技股份有限公司 | 一种linux虚拟机实现网卡热插拔的方法 |
CN105740042B (zh) * | 2016-01-15 | 2019-07-02 | 北京京东尚科信息技术有限公司 | 虚拟机内存的管理方法和管理系统 |
US10922116B2 (en) | 2016-02-12 | 2021-02-16 | Hewlett Packard Enterprise Development Lp | Creating operating system volumes |
US10133593B1 (en) * | 2016-03-31 | 2018-11-20 | Amazon Technologies, Inc. | Virtual machine migration |
CN107800730B (zh) * | 2016-08-30 | 2021-01-29 | 阿里巴巴集团控股有限公司 | 一种虚拟磁盘的扩容方法以及装置 |
US10678758B2 (en) | 2016-11-21 | 2020-06-09 | Commvault Systems, Inc. | Cross-platform virtual machine data and memory backup and replication |
US10649679B2 (en) * | 2016-11-23 | 2020-05-12 | Nutanix, Inc. | Containerized application extensions in distributed storage systems |
CN106708603B (zh) * | 2016-12-28 | 2019-04-26 | 平安科技(深圳)有限公司 | 虚拟机快速恢复方法及装置 |
JP6897136B2 (ja) | 2017-02-10 | 2021-06-30 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置及びプログラム |
US10761911B2 (en) | 2017-02-13 | 2020-09-01 | Nutanix, Inc. | Asynchronous application interactions in distributed systems |
US10949308B2 (en) | 2017-03-15 | 2021-03-16 | Commvault Systems, Inc. | Application aware backup of virtual machines |
US20180276085A1 (en) | 2017-03-24 | 2018-09-27 | Commvault Systems, Inc. | Virtual machine recovery point generation |
US10387073B2 (en) | 2017-03-29 | 2019-08-20 | Commvault Systems, Inc. | External dynamic virtual machine synchronization |
US10853195B2 (en) | 2017-03-31 | 2020-12-01 | Commvault Systems, Inc. | Granular restoration of virtual machine application data |
US10754829B2 (en) * | 2017-04-04 | 2020-08-25 | Oracle International Corporation | Virtual configuration systems and methods |
CN107463404A (zh) * | 2017-08-03 | 2017-12-12 | 浪潮(北京)电子信息产业有限公司 | 一种向虚拟机文件系统中增加配置文件的方法和系统 |
US10860242B1 (en) * | 2017-10-06 | 2020-12-08 | EMC IP Holding Company LLC | Method for automatic instant access mount point cleanup |
KR102003721B1 (ko) * | 2018-01-10 | 2019-07-26 | 성균관대학교산학협력단 | Gpu 커널 트랜잭션화 방법 및 컴퓨팅 장치 |
CN110347483B (zh) | 2018-04-08 | 2021-05-11 | 中兴通讯股份有限公司 | 物理机到虚拟机迁移方法、装置及存储介质 |
US11016798B2 (en) | 2018-06-01 | 2021-05-25 | The Research Foundation for the State University | Multi-hypervisor virtual machines that run on multiple co-located hypervisors |
US10887382B2 (en) * | 2018-12-18 | 2021-01-05 | Storage Engine, Inc. | Methods, apparatuses and systems for cloud-based disaster recovery |
US11080082B2 (en) | 2019-08-02 | 2021-08-03 | Red Hat, Inc. | Cross-hypervisor virtual machine conversion |
CN110515697A (zh) * | 2019-08-16 | 2019-11-29 | 济南浪潮数据技术有限公司 | 一种虚拟机迁移方法、装置、存储介质及计算机设备 |
US11656951B2 (en) | 2020-10-28 | 2023-05-23 | Commvault Systems, Inc. | Data loss vulnerability detection |
US11816129B2 (en) | 2021-06-22 | 2023-11-14 | Pure Storage, Inc. | Generating datasets using approximate baselines |
CN113609075A (zh) * | 2021-08-18 | 2021-11-05 | 济南浪潮数据技术有限公司 | 一种创建快照的方法、系统、存储介质及设备 |
US20230305854A1 (en) * | 2022-03-25 | 2023-09-28 | Sap Se | Reducing downtime during operating system patching |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4475156A (en) * | 1982-09-21 | 1984-10-02 | Xerox Corporation | Virtual machine control |
US4975836A (en) * | 1984-12-19 | 1990-12-04 | Hitachi, Ltd. | Virtual computer system |
US4835685A (en) * | 1985-05-06 | 1989-05-30 | Computer X, Inc. | Virtual single machine with message-like hardware interrupts and processor exceptions |
US4787026A (en) * | 1986-01-17 | 1988-11-22 | International Business Machines Corporation | Method to manage coprocessor in a virtual memory virtual machine data processing system |
US5692193A (en) * | 1994-03-31 | 1997-11-25 | Nec Research Institute, Inc. | Software architecture for control of highly parallel computer systems |
US5996026A (en) * | 1995-09-05 | 1999-11-30 | Hitachi, Ltd. | Method and apparatus for connecting i/o channels between sub-channels and devices through virtual machines controlled by a hypervisor using ID and configuration information |
US6052781A (en) | 1997-02-21 | 2000-04-18 | Savvy Frontiers Property Trust | Multiple user computer including anti-concurrent user-class based disjunctive separation of plural hard drive operation |
US6445704B1 (en) * | 1997-05-02 | 2002-09-03 | Cisco Technology, Inc. | Method and apparatus for virtualizing a locally initiated outbound connection from a connection manager |
US6256637B1 (en) * | 1998-05-05 | 2001-07-03 | Gemstone Systems, Inc. | Transactional virtual machine architecture |
US6397242B1 (en) | 1998-05-15 | 2002-05-28 | Vmware, Inc. | Virtualization system including a virtual machine monitor for a computer with a segmented architecture |
US6496847B1 (en) | 1998-05-15 | 2002-12-17 | Vmware, Inc. | System and method for virtualizing computer systems |
KR100846530B1 (ko) * | 2000-07-05 | 2008-07-15 | 언스트 앤 영 엘엘피 | 컴퓨터 서비스를 제공하는 방법 및 장치 |
CN1224914C (zh) * | 2000-08-25 | 2005-10-26 | 四国电力株式会社 | 远程控制服务器、中央服务器以及由它们构筑的系统 |
US6789156B1 (en) | 2001-05-22 | 2004-09-07 | Vmware, Inc. | Content-based, transparent sharing of memory units |
US6880002B2 (en) * | 2001-09-05 | 2005-04-12 | Surgient, Inc. | Virtualized logical server cloud providing non-deterministic allocation of logical attributes of logical servers to physical resources |
US7213065B2 (en) | 2001-11-08 | 2007-05-01 | Racemi, Inc. | System and method for dynamic server allocation and provisioning |
US6938250B2 (en) * | 2002-06-12 | 2005-08-30 | Microsoft Corporation | Image-based software installation |
US20040117532A1 (en) * | 2002-12-11 | 2004-06-17 | Bennett Steven M. | Mechanism for controlling external interrupts in a virtual machine system |
US8209680B1 (en) * | 2003-04-11 | 2012-06-26 | Vmware, Inc. | System and method for disk imaging on diverse computers |
US7448034B2 (en) * | 2003-07-30 | 2008-11-04 | International Business Machines Corporation | Build time determination and installation of drivers on cloned systems |
US7373451B2 (en) * | 2003-12-08 | 2008-05-13 | The Board Of Trustees Of The Leland Stanford Junior University | Cache-based system management architecture with virtual appliances, network repositories, and virtual appliance transceivers |
US7257811B2 (en) * | 2004-05-11 | 2007-08-14 | International Business Machines Corporation | System, method and program to migrate a virtual machine |
US7577959B2 (en) * | 2004-06-24 | 2009-08-18 | International Business Machines Corporation | Providing on-demand capabilities using virtual machines and clustering processes |
CA2486103A1 (en) * | 2004-10-26 | 2006-04-26 | Platespin Ltd. | System and method for autonomic optimization of physical and virtual resource use in a data center |
US7441092B2 (en) * | 2006-04-20 | 2008-10-21 | Microsoft Corporation | Multi-client cluster-based backup and restore |
-
2006
- 2006-05-08 US US11/430,676 patent/US7653794B2/en active Active
-
2007
- 2007-03-08 TW TW102143477A patent/TWI547875B/zh active
- 2007-03-08 WO PCT/US2007/006021 patent/WO2007130209A1/en active Application Filing
- 2007-03-08 RU RU2008144202/08A patent/RU2446450C2/ru active
- 2007-03-08 ES ES07752703.4T patent/ES2632512T3/es active Active
- 2007-03-08 BR BRPI0711336A patent/BRPI0711336A8/pt not_active Application Discontinuation
- 2007-03-08 EP EP07752703.4A patent/EP2021939B1/en active Active
- 2007-03-08 TW TW096108079A patent/TWI428830B/zh not_active IP Right Cessation
- 2007-03-08 JP JP2009509559A patent/JP5026509B2/ja active Active
- 2007-03-08 AU AU2007248886A patent/AU2007248886B2/en active Active
- 2007-03-08 CN CN201110430731.6A patent/CN102541658B/zh active Active
- 2007-03-08 KR KR1020137031209A patent/KR101465928B1/ko active IP Right Grant
- 2007-03-08 MY MYPI20084085A patent/MY149997A/en unknown
- 2007-03-08 CA CA2648761A patent/CA2648761C/en active Active
- 2007-03-08 CN CN2007800169624A patent/CN101443748B/zh active Active
- 2007-05-14 MX MX2008014244A patent/MX2008014244A/es active IP Right Grant
-
2008
- 2008-10-08 ZA ZA2008/08579A patent/ZA200808579B/en unknown
- 2008-10-09 NO NO20084228A patent/NO342885B1/no unknown
- 2008-10-12 IL IL194679A patent/IL194679A/en active IP Right Grant
- 2008-11-07 KR KR1020087027375A patent/KR101376952B1/ko active IP Right Grant
-
2011
- 2011-11-22 RU RU2011147372/08A patent/RU2011147372A/ru not_active Application Discontinuation
-
2012
- 2012-05-21 JP JP2012115974A patent/JP5496254B2/ja active Active
- 2012-11-14 IL IL223026A patent/IL223026A/en active IP Right Grant
- 2012-12-28 HK HK12113541.3A patent/HK1172718A1/zh unknown
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101443748B (zh) | 将机器转换为虚拟机 | |
CN102834822B (zh) | 由虚拟机共享的群集的快速-完整备份 | |
US10162722B2 (en) | Virtual machine aware replication method and system | |
US10353872B2 (en) | Method and apparatus for conversion of virtual machine formats utilizing deduplication metadata | |
US20090282203A1 (en) | Managing storage and migration of backup data | |
JP2011076605A (ja) | 仮想マシン・イメージの実行方法及びシステム | |
CA2645969A1 (en) | Creating host-level application-consistent backups of virtual machines | |
CN101916172B (zh) | 一种基于虚拟磁盘映像逻辑分割的按需软件分发方法 | |
US7610459B2 (en) | Maintain owning application information of data for a data storage system | |
US7613888B2 (en) | Maintain owning application information of data for a data storage system | |
AU2012200600B2 (en) | "Converting machines to virtual machines" |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150507 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20150507 Address after: Washington State Patentee after: Micro soft technique license Co., Ltd Address before: Washington State Patentee before: Microsoft Corp. |