US20110078681A1 - Method and system for running virtual machine image - Google Patents

Method and system for running virtual machine image Download PDF

Info

Publication number
US20110078681A1
US20110078681A1 US12/893,091 US89309110A US2011078681A1 US 20110078681 A1 US20110078681 A1 US 20110078681A1 US 89309110 A US89309110 A US 89309110A US 2011078681 A1 US2011078681 A1 US 2011078681A1
Authority
US
United States
Prior art keywords
file
virtual machine
image
machine image
request
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.)
Abandoned
Application number
US12/893,091
Inventor
Ying Li
Jie Qiu
Jie Yang
Xiao Zhong
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of US20110078681A1 publication Critical patent/US20110078681A1/en
Assigned to INTERNATIONAL BUSINESS MACHINES CORPORATION reassignment INTERNATIONAL BUSINESS MACHINES CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: YANG, JIE, QIU, JIE, LI, YING, ZHONG, XIAO
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming virtual machine instances

Definitions

  • the present invention relates to cloud computing.
  • the present invention relates to method and system for running a virtual machine image in cloud computing.
  • Cloud computing enables thousands of end users to effectively utilize computing capabilities of IT that are connected together through network without worrying about the utilized computing technology, access manner and so on.
  • computing capabilities of IT are provided by way of service.
  • Virtualization technology is a technology widely used in cloud computing.
  • a virtual machine is usually used to provide service for users.
  • Running a virtual machine in a cloud computing environment requires running a virtual machine image file, and the virtual machine image file usually includes an operating system, installed application program and available disk space.
  • a smaller virtual machine image file is 4-5 GB.
  • a larger virtual machine image file may be several hundreds of GB, for example, image file of TPM is approximately 100 GB.
  • an image file (including an operating system, installed application program and available disk space) of the entire virtual machine generally needs to be copied from a storage server to a host machine, and the virtual machine is then started from the virtual machine image file. After the virtual machine is started, the application program is run on the virtual machine. If data in the virtual machine image file is changed the application program is running, the changed virtual machine image file needs to be saved back to the storage server after the virtual machine is stopped.
  • a server cluster will run many hosts (i.e. servers in cloud), and each host may run many virtual machines.
  • hosts i.e. servers in cloud
  • virtual machines the image file of the entire virtual machine needs to be copied from a storage server to a host. Since a relatively small virtual machine image file is generally around 4-5 GB, the copying of virtual machine image file will consume a great amount of network bandwidth. Meanwhile, the entire changed virtual machine image file also needs to be saved back to the storage server after the virtual machine is stopped, and as such, the process of storing will also consume a great amount of network bandwidth.
  • a computer-implemented method for running a virtual machine image in a host machine.
  • the method includes: receiving a virtual machine image provisioning request; sending to a storage server a request to copy a virtual machine image related to the virtual machine image provisioning request; receiving a portion of the virtual machine image; starting a virtual machine in the host machine by running the received portion of the virtual machine image; intercepting a file operation request of a program running in the virtual machine; and acquiring a file related to the file operation request.
  • another computer-implemented method for running a virtual machine image in a host machine.
  • the method includes: receiving a request sent by the host machine to copy a virtual machine image related to a virtual machine image provisioning request; sending a portion of the virtual machine image to the host machine; receiving a request sent by the host machine to copy a file related to a file operation request; and sending the file related to the file operation request to the host machine.
  • a computer-implemented system for running a virtual machine image in a host machine.
  • the system includes: an image loader and an application loader.
  • the image loader (i) receives a virtual machine image provisioning request; (ii) sends to a storage server, a request to copy a virtual machine image related to the virtual machine image provisioning request; (iii) receives a portion of the virtual machine image; and (iv) starts a virtual machine in the host machine by running the received portion of the virtual machine image.
  • the application loader (i) intercepts a file operation request of a program running in the virtual machine; and (ii) acquires a file related to the file operation request.
  • another computer-implemented system for running a virtual machine image in a host machine.
  • the system includes: an image visitor for (i) receiving a request sent by the host machine to copy a virtual machine image related to a virtual machine image provisioning request; (ii) sending a portion of the virtual machine image to the host machine; (iii) receiving a request sent by the host machine to copy a file related to a file operation request; and sending the file related to the file operation request to the host machine.
  • FIG. 1 shows a system 100 for running a virtual machine image in a host machine according to an embodiment of the present invention
  • FIG. 2 shows a flow diagram 200 of a method for running a virtual machine image in a host machine according to an embodiment of the present invention
  • FIG. 3 shows a flow diagram 300 of a method for a running virtual machine image in a host machine according to another embodiment of the present invention.
  • the system 100 for running a virtual machine image includes an image visitor 102 , an image loader 104 , an application loader 106 and an image synchronizer 108 .
  • the system 100 for running virtual machine image includes two subsystems, in which the image visitor 102 located in a storage server constitutes a server subsystem, and the image loader 104 , application loader 106 and image synchronizer 108 located in the host and in the virtual machine running in the host constitute a host subsystem.
  • the image visitor 102 constituting the server subsystem is located in the storage server, and includes an image converter, an image indexer and an image file visitor.
  • the image converter is used to convert an original virtual machine image into a portion of the virtual machine image.
  • the portion of the virtual machine image includes at least an operating system kernel, partition information and file index information.
  • the image indexer is used to generate file index information which is used to locate file in a virtual machine image.
  • the image converter first acquires the operating system kernel and partition information by analyzing the virtual machine image, then generates a portion of virtual machine image in conjunction with file index information generated by the image indexer.
  • the processes of acquiring the operating system kernel and partition information, creating file index information and generating a portion of the virtual machine image can be implemented by any means in the art, and will not be described for brevity.
  • the above processes of the image converter and image indexer can be implemented offline, and can also be implemented dynamically.
  • the portion of the virtual machine image is prepared offline in advance.
  • the image converter can also embed application loading code into the portion of the virtual machine image, so as to communicate with the application loader 106 located in a virtual machine running in the host.
  • the image file visitor is used to receive a file reading request issued from the application loader 106 located in a virtual machine running in a host, read a file in the virtual machine image and return it to the application loader 106 as a response.
  • the image file visitor is also used to receive an updated file sent by the image synchronizer 108 located in a host and update the virtual machine image in a storage server.
  • the image loader 104 located in a host is used to load (i.e. copy from storage server) the portion of the virtual machine image generated by the image converter. After the portion of the virtual machine image is loaded, the image loader 104 instantiates the portion of the virtual machine image based on partition information and file index information in the portion of the virtual machine image, and the process of instantiating is similar to that performed by a hypervisor, which will not be described for brevity.
  • the application loader 106 located in a virtual machine running in a host includes a file hook and a local image visitor.
  • the file hook is used to intercept a file operation request of a program running in a virtual machine running in a host, and send it to the local image visitor.
  • the local image visitor receives a file operation request intercepted by the file hook, checks partition information and file index information in the instantiated portion of the virtual machine image, and determines whether the file related to the file operation request is located in the local data in the virtual machine running in the host. If the file related to the file operation request is located in the local data, then a corresponding file is read through a file operation application program interface API.
  • a file reading request is sent to the image file visitor located in the image visitor 102 in the storage server, a response returned by the image file visitor that contains the file to related the file operation is received, and the file related to the file operation returned in the response is stored in the local data through the file operation application program interface API.
  • the local image visitor is also used to record a change of file index information made by file operation incrementally (i.e. index increment).
  • the image synchronizer 108 located in a host is used to read the change of file index information recorded by the local image visitor, read updated file in the local data by using the changed file index information, and send the updated file to the image file visitor located in the image visitor 102 of the storage server to update the virtual machine image in the storage server.
  • the processes of the file hook and local image visitor located in the application loader 106 in the virtual machine running in a host will be described in detail below.
  • the file hook can be implemented by any means in the art, and will not be described for brevity.
  • the file hook in the application loader 106 intercepts the file operation request. For a different file operation request, the file hook cooperates with the local image visitor to perform a corresponding process respectively.
  • the file hook intercepts the file opening request and sends it to the local image visitor.
  • the local image visitor reads partition information and file index information, and the file index information generally is a file allocation table.
  • the local image visitor reads file descriptor in the file index information, acquires information such as corresponding file name, file storing path, file access right and so on, and the file open operation ends.
  • the file hook intercepts the file reading request and sends it to the local image visitor.
  • the local image visitor searches the local index for corresponding file information of the file related to the file reading request. If the file related to the file reading request is read for the first time, that is, if corresponding file information does not exist in the local index, the local image visitor sends a file reading request to the image file visitor located in the image visitor 102 of the storage server through a file hook.
  • the local image visitor searches the local index for corresponding file information of the file related to the file reading request, and it is determined that the file related to the file reading request is not read for the first time, that is, corresponding file information already exists in the local index, then the local image visitor directly reads the related file from local data through the file operation application program interface API according to corresponding file information stored in the local index.
  • the file hook intercepts the file creating request and sends it to the local image visitor.
  • the local image visitor first reads partition information and file index information to avoid a file name to be created by the file creating request to be repeated with that present in the existing file index information.
  • the file index information generally is a file allocation table. If there is no repeating file name, the local image visitor records the corresponding file information of the created new file in local index through a file hook, and creates a new file having a name to be created in local data through the file operation application program interface API.
  • the file hook intercepts the file writing request and sends it to the local image visitor.
  • the local image visitor writes a change of file related to the file writing request into local data through the file operation application program interface API. If the corresponding file information of the file related to the file writing request is changed, the local image visitor also records the change of the corresponding file information of the file related to the file writing request in local index.
  • the local image visitor After the file operation is performed, the local image visitor records the change of file index information incrementally, the image synchronizer 108 located in the host reads the change of file index information recorded by the local image visitor, reads updated file in the local data by using changed file index information and sends updated file to the image file visitor located in the image visitor 102 of storage server to update virtual machine image in the storage server.
  • a system for running a virtual machine image in a host machine that includes an image loader 104 and an application loader 106 .
  • the image loader 104 (i) receives a virtual machine image provisioning request; (ii) sends to a storage server a request to copy a virtual machine image related to the virtual machine image provisioning request; (iii) receives a portion of the virtual machine image, where the portion of the virtual machine image includes at least an operating system kernel, partition information and file index information; and (iv) starts a virtual machine in the host by running the received portion of the virtual machine image.
  • the application loader 106 (i) intercepts a file operation request of a program running in the virtual machine; and (ii) sends to the storage server a request to copy the file related to the file operation request; and (iii) receives the file related to the file operation request.
  • the system for running a virtual machine image can further include an image synchronizer 108 for sending data to update the virtual machine image in the storage server, if data in the virtual machine image running in the host has been changed.
  • a system for running a virtual machine image in a host machine that includes an image visitor 102 for: (i) receiving a request sent by the host machine to copy a virtual machine image related to a virtual machine image provisioning request; (ii) sending a portion of the virtual machine image to the host, where the portion of the virtual machine image includes at least an operating system kernel, partition information and file index information; (iii) receiving a request sent by the host to copy a file related to a file operation request; and (iv) sending the file related to the file operation request to the host.
  • the image visitor can further (i) receive changed data in the virtual machine image running in the host and (ii) update the virtual machine image with the changed data.
  • the system for running a virtual machine image can further include: an image indexer for generating file index information; and an image converter for generating a portion of the virtual machine image by using the file index information generated by the image indexer.
  • FIG. 2 a flow diagram shows a method for running a virtual machine image in a host machine according to another embodiment of the present invention.
  • the method 200 for running a virtual machine image in a host machine starts at step 202 .
  • a virtual machine image provisioning request is received by a host; then, in step 206 , a request to copy a virtual machine image related to the virtual machine image provisioning request is sent to a storage server by the host; next, in step 208 , a portion of the virtual machine image is received by the host, where the portion of the virtual machine image includes at least an operating system kernel, partition information and file index information; next, in step 210 , a virtual machine is started in the host by running the received portion of the virtual machine image; next, in step 212 , file operation request of a program running in the virtual machine is intercepted by the host; next, in step 214 , a file related to the file operation request is acquired by the host.
  • the method 200 for running a virtual machine image further includes in step 216 , sending data to the storage server to update the virtual machine image, if the data in the virtual machine image running in the host is changed during the running of the virtual machine. Then, the method 200 according to the embodiment of the present invention ends at step 218 .
  • the method 200 when a file operation request is received, the method 200 according to the embodiment of the present invention performs corresponding processes with respect to a different file operation request, respectively.
  • the file operation request is a file opening request, i.e., the file request only needs to acquire file information
  • the partition information and file index information is read, information such as the corresponding file name, file storing path, file access right and so on is acquired, and the file open operation ends.
  • the local index is searched for the corresponding file information of the file related to the file reading request; if the file related to the file reading request is read for the first time, that is, the corresponding file information does not exist in the local index, the file reading request is sent to the storage server. After a returned response containing the file related to the file reading request is received, the corresponding file information of the file related to the file reading request is recorded in the local index, and the file related to the file reading request that is returned in the response is stored in the local data through a file operation application program interface API.
  • the related file is read directly from the local data the through file operation application program interface API according to the corresponding file information stored in the local index.
  • the file operation request is a file creating request
  • the partition information and the file index information is read to prevent the file creating request from creating a repeated file name with that present in the existing file index information. If there is no repeating file name, the corresponding file information of the created new file is recorded in the local index, and a new file having a name to be created is created in the local data through the file operation application program interface API.
  • the file operation request is a file writing request
  • a change of the file related to the file writing request is written into the local data through the file operation application program interface API. If the corresponding file information of the file related to the file writing request is changed, the change of the corresponding file information of the file related to the file writing request is also recorded in the local index.
  • the change of file index information is recorded incrementally.
  • the updated file in the local data is read by using the changed file index information and the updated file is sent to the storage server to update the virtual machine image in the storage server.
  • a flow diagram shows a method 300 for running a virtual machine image in a host machine according to another embodiment of the present invention.
  • the method 300 for running a virtual machine image in a host machine starts at step 302 .
  • step 304 a request to copy a virtual machine image related to a virtual machine image provisioning request sent by the host is received; then, in step 306 , a portion of the virtual machine image is sent to the host, where the portion of the virtual machine image includes at least an operating system kernel, partition information and file index information; next, in step 308 , a request to copy a file related to a file operation request sent by the host is received; next, in step 310 , the file related to the file operation request is sent to the host. Then, the method 300 according to the embodiment of the present invention ends in step 312 . Further, the method 300 for running a virtual machine image can further include generating file index information; and generating a portion of the virtual machine image by using the generated file index information.
  • the embodiments of the present invention can also be implemented by a computer program or a group of computer programs executed on a computing apparatus.
  • the computing apparatus can be a known general purpose apparatus.
  • the embodiments of the present invention can also be implemented by merely providing a program product containing computer program codes for implementing the method or apparatus. That is, such a program product can also constitute the present invention, and the storage medium on which such program product is stored can also constitute the present invention.
  • the storage medium can be a known storage medium or a storage medium that will be developed in the future.
  • each component or each step can be separated and/or recombined. Such separation and/or recombination should be considered as an equivalent solution of the present invention.
  • the steps for performing the above series of processes can be naturally executed in a time sequence according to a sequence of the description, but does not necessarily need to be executed in time sequence. Some steps can be executed in parallel or independently from each other.

Abstract

A computer-implemented methods and systems for a running virtual machine image in a host machine. One method includes: receiving a virtual machine image provisioning request; sending to a storage server a request to copy a virtual machine image related to the virtual machine image provisioning request; receiving a portion of the virtual machine image; starting a virtual machine in the host machine by running the received portion of the virtual machine image; intercepting a file operation request of a program running in the virtual machine; and acquiring a file related to the file operation request.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This application claims priority under 35 U.S.C. §119 to Chinese Patent Application No. 200910174129.3 filed Sep. 30, 2009, the entire contents of which are incorporated by reference herein.
  • BACKGROUND OF THE INVENTION
  • 1. Field of the Invention
  • The present invention relates to cloud computing. In particular, the present invention relates to method and system for running a virtual machine image in cloud computing.
  • 2. Description of the Related Art
  • Cloud computing enables thousands of end users to effectively utilize computing capabilities of IT that are connected together through network without worrying about the utilized computing technology, access manner and so on. In cloud computing, computing capabilities of IT are provided by way of service. Virtualization technology is a technology widely used in cloud computing. In an existing cloud computing architecture, a virtual machine is usually used to provide service for users. Running a virtual machine in a cloud computing environment requires running a virtual machine image file, and the virtual machine image file usually includes an operating system, installed application program and available disk space. Usually, a smaller virtual machine image file is 4-5 GB. A larger virtual machine image file may be several hundreds of GB, for example, image file of TPM is approximately 100 GB.
  • In the existing technology, in order to run a virtual machine, an image file (including an operating system, installed application program and available disk space) of the entire virtual machine generally needs to be copied from a storage server to a host machine, and the virtual machine is then started from the virtual machine image file. After the virtual machine is started, the application program is run on the virtual machine. If data in the virtual machine image file is changed the application program is running, the changed virtual machine image file needs to be saved back to the storage server after the virtual machine is stopped.
  • In general, a server cluster will run many hosts (i.e. servers in cloud), and each host may run many virtual machines. As mentioned above, in order to run a virtual machine, the image file of the entire virtual machine needs to be copied from a storage server to a host. Since a relatively small virtual machine image file is generally around 4-5 GB, the copying of virtual machine image file will consume a great amount of network bandwidth. Meanwhile, the entire changed virtual machine image file also needs to be saved back to the storage server after the virtual machine is stopped, and as such, the process of storing will also consume a great amount of network bandwidth.
  • SUMMARY OF THE INVENTION
  • According to one aspect of the invention, a computer-implemented method is provided for running a virtual machine image in a host machine. The method includes: receiving a virtual machine image provisioning request; sending to a storage server a request to copy a virtual machine image related to the virtual machine image provisioning request; receiving a portion of the virtual machine image; starting a virtual machine in the host machine by running the received portion of the virtual machine image; intercepting a file operation request of a program running in the virtual machine; and acquiring a file related to the file operation request.
  • According to another aspect of the invention, another computer-implemented method is provided for running a virtual machine image in a host machine. The method includes: receiving a request sent by the host machine to copy a virtual machine image related to a virtual machine image provisioning request; sending a portion of the virtual machine image to the host machine; receiving a request sent by the host machine to copy a file related to a file operation request; and sending the file related to the file operation request to the host machine.
  • According to still another aspect of the invention, a computer-implemented system is provided for running a virtual machine image in a host machine. The system includes: an image loader and an application loader. The image loader (i) receives a virtual machine image provisioning request; (ii) sends to a storage server, a request to copy a virtual machine image related to the virtual machine image provisioning request; (iii) receives a portion of the virtual machine image; and (iv) starts a virtual machine in the host machine by running the received portion of the virtual machine image. The application loader (i) intercepts a file operation request of a program running in the virtual machine; and (ii) acquires a file related to the file operation request.
  • According to yet another aspect of the invention, another computer-implemented system is provided for running a virtual machine image in a host machine. The system includes: an image visitor for (i) receiving a request sent by the host machine to copy a virtual machine image related to a virtual machine image provisioning request; (ii) sending a portion of the virtual machine image to the host machine; (iii) receiving a request sent by the host machine to copy a file related to a file operation request; and sending the file related to the file operation request to the host machine.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 shows a system 100 for running a virtual machine image in a host machine according to an embodiment of the present invention;
  • FIG. 2 shows a flow diagram 200 of a method for running a virtual machine image in a host machine according to an embodiment of the present invention;
  • FIG. 3 shows a flow diagram 300 of a method for a running virtual machine image in a host machine according to another embodiment of the present invention.
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • Illustrative embodiments of the present invention are described below in conjunction with accompany drawings. For the purpose of clarity and concise, not all features of an actual implementation are described in this specification. However, it will be appreciated that in the development of any such actual embodiment, numerous implementation-specific decisions should be made to achieve developers' specific goals, such as in compliance with system-related and business-related constraints, which may vary from one implementation to another. Moreover, it will be appreciated that although such a development effort might be complex and time-consuming, it is a routine undertaking for those of ordinary skill in the art having the benefit of this disclosure.
  • Here, it shall be noted that, in order to avoid obscuring the embodiments of the present invention by unnecessary details, only means structures and/or process steps that are closely associated with the solution of the embodiments of the present invention are illustrated in the drawings, and other details that have little relationship therewith are omitted.
  • In the embodiments of the present invention, since initially only a relatively small portion of virtual machine image needs to be transmitted, occupation of network bandwidth is significantly reduced. While, copying a file is driven by an application, only the necessary file will be copied from the storage server, thereby greatly reducing the occupation of network bandwidth. For example, running an application can require approximately 100 MB of the file while Apache is running, according to conventional approach. However, in order to run Apache, the entire virtual machine image that is approximately 4-5 GB have to be copied to a host machine through a network, thereby resulting in a large amount of network bandwidth waste. Embodiments of the present invention allows for approximately 100 MB of the file to run Apache to be copied through the network, thereby greatly reducing the consumption of network bandwidth.
  • Referring to FIG. 1, a system 100 is shown for running a virtual machine image in a host machine according to an embodiment of the present invention. According to the embodiment, the system 100 for running a virtual machine image includes an image visitor 102, an image loader 104, an application loader 106 and an image synchronizer 108. Alternatively, the system 100 for running virtual machine image includes two subsystems, in which the image visitor 102 located in a storage server constitutes a server subsystem, and the image loader 104, application loader 106 and image synchronizer 108 located in the host and in the virtual machine running in the host constitute a host subsystem.
  • The image visitor 102 constituting the server subsystem is located in the storage server, and includes an image converter, an image indexer and an image file visitor. Herein, the image converter is used to convert an original virtual machine image into a portion of the virtual machine image. The portion of the virtual machine image includes at least an operating system kernel, partition information and file index information. The image indexer is used to generate file index information which is used to locate file in a virtual machine image. The image converter first acquires the operating system kernel and partition information by analyzing the virtual machine image, then generates a portion of virtual machine image in conjunction with file index information generated by the image indexer. The processes of acquiring the operating system kernel and partition information, creating file index information and generating a portion of the virtual machine image can be implemented by any means in the art, and will not be described for brevity. The above processes of the image converter and image indexer can be implemented offline, and can also be implemented dynamically. Preferably, the portion of the virtual machine image is prepared offline in advance. The image converter can also embed application loading code into the portion of the virtual machine image, so as to communicate with the application loader 106 located in a virtual machine running in the host.
  • The image file visitor is used to receive a file reading request issued from the application loader 106 located in a virtual machine running in a host, read a file in the virtual machine image and return it to the application loader 106 as a response. The image file visitor is also used to receive an updated file sent by the image synchronizer 108 located in a host and update the virtual machine image in a storage server.
  • The image loader 104, application loader 106 and image synchronizer 108 constituting the host subsystem will be described below. The image loader 104 located in a host is used to load (i.e. copy from storage server) the portion of the virtual machine image generated by the image converter. After the portion of the virtual machine image is loaded, the image loader 104 instantiates the portion of the virtual machine image based on partition information and file index information in the portion of the virtual machine image, and the process of instantiating is similar to that performed by a hypervisor, which will not be described for brevity.
  • The application loader 106 located in a virtual machine running in a host includes a file hook and a local image visitor. Herein, the file hook is used to intercept a file operation request of a program running in a virtual machine running in a host, and send it to the local image visitor. The local image visitor receives a file operation request intercepted by the file hook, checks partition information and file index information in the instantiated portion of the virtual machine image, and determines whether the file related to the file operation request is located in the local data in the virtual machine running in the host. If the file related to the file operation request is located in the local data, then a corresponding file is read through a file operation application program interface API. If the file related to the file operation request is not located in the local data in the virtual machine running in the host, a file reading request is sent to the image file visitor located in the image visitor 102 in the storage server, a response returned by the image file visitor that contains the file to related the file operation is received, and the file related to the file operation returned in the response is stored in the local data through the file operation application program interface API. The local image visitor is also used to record a change of file index information made by file operation incrementally (i.e. index increment).
  • The image synchronizer 108 located in a host is used to read the change of file index information recorded by the local image visitor, read updated file in the local data by using the changed file index information, and send the updated file to the image file visitor located in the image visitor 102 of the storage server to update the virtual machine image in the storage server.
  • The processes of the file hook and local image visitor located in the application loader 106 in the virtual machine running in a host will be described in detail below. The file hook can be implemented by any means in the art, and will not be described for brevity.
  • When the application loader 106 receives a file operation request of a program running in a host, the file hook in the application loader 106 intercepts the file operation request. For a different file operation request, the file hook cooperates with the local image visitor to perform a corresponding process respectively.
  • If the file operation request is a file opening request, i.e., the file request only needs to acquire file information, the file hook intercepts the file opening request and sends it to the local image visitor. The local image visitor reads partition information and file index information, and the file index information generally is a file allocation table. The local image visitor reads file descriptor in the file index information, acquires information such as corresponding file name, file storing path, file access right and so on, and the file open operation ends.
  • If the file operation request is a file reading request, the file hook intercepts the file reading request and sends it to the local image visitor. The local image visitor searches the local index for corresponding file information of the file related to the file reading request. If the file related to the file reading request is read for the first time, that is, if corresponding file information does not exist in the local index, the local image visitor sends a file reading request to the image file visitor located in the image visitor 102 of the storage server through a file hook. After a response containing the file related to the file reading request that is returned by the image file visitor is received, corresponding file information of the file related to the file reading request is recorded in the local index, and the file related to the file reading request that is returned in the response is stored in local data through the file operation application program interface API.
  • If after the local image visitor searches the local index for corresponding file information of the file related to the file reading request, and it is determined that the file related to the file reading request is not read for the first time, that is, corresponding file information already exists in the local index, then the local image visitor directly reads the related file from local data through the file operation application program interface API according to corresponding file information stored in the local index.
  • If the file operation request is a file creating request, the file hook intercepts the file creating request and sends it to the local image visitor. The local image visitor first reads partition information and file index information to avoid a file name to be created by the file creating request to be repeated with that present in the existing file index information. The file index information generally is a file allocation table. If there is no repeating file name, the local image visitor records the corresponding file information of the created new file in local index through a file hook, and creates a new file having a name to be created in local data through the file operation application program interface API.
  • If the file operation request is a file writing request, the file hook intercepts the file writing request and sends it to the local image visitor. The local image visitor writes a change of file related to the file writing request into local data through the file operation application program interface API. If the corresponding file information of the file related to the file writing request is changed, the local image visitor also records the change of the corresponding file information of the file related to the file writing request in local index.
  • After the file operation is performed, the local image visitor records the change of file index information incrementally, the image synchronizer 108 located in the host reads the change of file index information recorded by the local image visitor, reads updated file in the local data by using changed file index information and sends updated file to the image file visitor located in the image visitor 102 of storage server to update virtual machine image in the storage server.
  • According to another embodiment of the invention, a system is provided for running a virtual machine image in a host machine that includes an image loader 104 and an application loader 106. The image loader 104 (i) receives a virtual machine image provisioning request; (ii) sends to a storage server a request to copy a virtual machine image related to the virtual machine image provisioning request; (iii) receives a portion of the virtual machine image, where the portion of the virtual machine image includes at least an operating system kernel, partition information and file index information; and (iv) starts a virtual machine in the host by running the received portion of the virtual machine image. The application loader 106 (i) intercepts a file operation request of a program running in the virtual machine; and (ii) sends to the storage server a request to copy the file related to the file operation request; and (iii) receives the file related to the file operation request. Optionally, the system for running a virtual machine image can further include an image synchronizer 108 for sending data to update the virtual machine image in the storage server, if data in the virtual machine image running in the host has been changed.
  • According to another embodiment of the present invention, a system is provided for running a virtual machine image in a host machine that includes an image visitor 102 for: (i) receiving a request sent by the host machine to copy a virtual machine image related to a virtual machine image provisioning request; (ii) sending a portion of the virtual machine image to the host, where the portion of the virtual machine image includes at least an operating system kernel, partition information and file index information; (iii) receiving a request sent by the host to copy a file related to a file operation request; and (iv) sending the file related to the file operation request to the host. The image visitor can further (i) receive changed data in the virtual machine image running in the host and (ii) update the virtual machine image with the changed data. Optionally, the system for running a virtual machine image can further include: an image indexer for generating file index information; and an image converter for generating a portion of the virtual machine image by using the file index information generated by the image indexer.
  • Now referring to FIG. 2, a flow diagram shows a method for running a virtual machine image in a host machine according to another embodiment of the present invention. According to the embodiment, the method 200 for running a virtual machine image in a host machine starts at step 202. Next, in step 204, a virtual machine image provisioning request is received by a host; then, in step 206, a request to copy a virtual machine image related to the virtual machine image provisioning request is sent to a storage server by the host; next, in step 208, a portion of the virtual machine image is received by the host, where the portion of the virtual machine image includes at least an operating system kernel, partition information and file index information; next, in step 210, a virtual machine is started in the host by running the received portion of the virtual machine image; next, in step 212, file operation request of a program running in the virtual machine is intercepted by the host; next, in step 214, a file related to the file operation request is acquired by the host. Further, the method 200 for running a virtual machine image further includes in step 216, sending data to the storage server to update the virtual machine image, if the data in the virtual machine image running in the host is changed during the running of the virtual machine. Then, the method 200 according to the embodiment of the present invention ends at step 218.
  • Further, when a file operation request is received, the method 200 according to the embodiment of the present invention performs corresponding processes with respect to a different file operation request, respectively.
  • If the file operation request is a file opening request, i.e., the file request only needs to acquire file information, then the partition information and file index information is read, information such as the corresponding file name, file storing path, file access right and so on is acquired, and the file open operation ends.
  • If the file operation request is a file reading request, then the local index is searched for the corresponding file information of the file related to the file reading request; if the file related to the file reading request is read for the first time, that is, the corresponding file information does not exist in the local index, the file reading request is sent to the storage server. After a returned response containing the file related to the file reading request is received, the corresponding file information of the file related to the file reading request is recorded in the local index, and the file related to the file reading request that is returned in the response is stored in the local data through a file operation application program interface API. If, after the local index is searched for the corresponding file information of the file related to the file reading request, it is determined that the file related to the file reading request is not read for the first time, that is, the corresponding file information already exists in the local index, then the related file is read directly from the local data the through file operation application program interface API according to the corresponding file information stored in the local index.
  • If the file operation request is a file creating request, first the partition information and the file index information is read to prevent the file creating request from creating a repeated file name with that present in the existing file index information. If there is no repeating file name, the corresponding file information of the created new file is recorded in the local index, and a new file having a name to be created is created in the local data through the file operation application program interface API.
  • If the file operation request is a file writing request, a change of the file related to the file writing request is written into the local data through the file operation application program interface API. If the corresponding file information of the file related to the file writing request is changed, the change of the corresponding file information of the file related to the file writing request is also recorded in the local index.
  • After the file operation is performed, the change of file index information is recorded incrementally. The updated file in the local data is read by using the changed file index information and the updated file is sent to the storage server to update the virtual machine image in the storage server.
  • Now referring to FIG. 3, a flow diagram shows a method 300 for running a virtual machine image in a host machine according to another embodiment of the present invention. According to the embodiment, the method 300 for running a virtual machine image in a host machine starts at step 302. Next, in step 304, a request to copy a virtual machine image related to a virtual machine image provisioning request sent by the host is received; then, in step 306, a portion of the virtual machine image is sent to the host, where the portion of the virtual machine image includes at least an operating system kernel, partition information and file index information; next, in step 308, a request to copy a file related to a file operation request sent by the host is received; next, in step 310, the file related to the file operation request is sent to the host. Then, the method 300 according to the embodiment of the present invention ends in step 312. Further, the method 300 for running a virtual machine image can further include generating file index information; and generating a portion of the virtual machine image by using the generated file index information.
  • The basic principles of the present invention are described above in conjunction with specific embodiments, however, it is to be noted that, for those of ordinary skill in the art, it will be understood that all or any step or component of the method and apparatus of the invention can be implemented in any computing apparatus (including processor, storage medium etc) or network of a computer apparatus in the form of hardware, firmware, software or a combination thereof, which is achievable for those of ordinary skill in the art by using their basic programming skills after reading the description of the present invention.
  • Thus, the embodiments of the present invention can also be implemented by a computer program or a group of computer programs executed on a computing apparatus. The computing apparatus can be a known general purpose apparatus. Thus, the embodiments of the present invention can also be implemented by merely providing a program product containing computer program codes for implementing the method or apparatus. That is, such a program product can also constitute the present invention, and the storage medium on which such program product is stored can also constitute the present invention. The storage medium can be a known storage medium or a storage medium that will be developed in the future.
  • It should also be noted that, in the apparatus and method of the present invention, each component or each step can be separated and/or recombined. Such separation and/or recombination should be considered as an equivalent solution of the present invention. Further, the steps for performing the above series of processes can be naturally executed in a time sequence according to a sequence of the description, but does not necessarily need to be executed in time sequence. Some steps can be executed in parallel or independently from each other.
  • Although the present invention and its advantages have been described in detail, it should be appreciated that various modifications, replacements and alternations can be made without departing from the spirit and scope of the present invention defined by the appended claims. Further, the term “comprising”, “including” or any other variations is intended to cover non-exclusive inclusion. Thereby the procedure, method, item or apparatus that contains a series of elements can also contain other elements that are not listed explicitly, or contain elements inherent in such procedure, method, item or apparatus. Unless otherwise defined, an element defined by the phase “including a . . . ” does not exclude other similar elements that also exist in the procedure, method, item or apparatus that contains that element.

Claims (18)

1. A computer-implemented method for running a virtual machine image in a host machine, said method comprising:
receiving a virtual machine image provisioning request;
sending to a storage server a request to copy a virtual machine image related to said virtual machine image provisioning request;
receiving a portion of said virtual machine image, wherein said portion of said virtual machine image comprises: an operating system kernel, partition information, and file index information;
starting a virtual machine in said host machine by running said received portion of said virtual machine image;
intercepting a file operation request of a program running in said virtual machine; and
acquiring a file related to said file operation request.
2. The method according to claim 1, further comprising:
sending data to update said virtual machine image in said storage server, wherein said step of sending data to update said virtual machine image in said storage server is performed if said data in said virtual machine image running in said host machine has been changed.
3. The method according to claim 1, further comprising:
recording a change of said file index information incrementally.
4. The method according to claim 1, further comprising:
reading said file related to said file operation request directly from local data, wherein said step of reading said file related to said file operation request directly from local data is performed if said file related to said file operation request already exists in said local data of said virtual machine running in said host machine.
5. The method according to claim 1, further comprising:
sending to said storage server a request to copy said file related to said file operation request and receiving said file related to said file operation request from said storage server, wherein said step of sending to said storage server a request to copy said file related to said file operation request and receiving said file related to said file operation request from said storage server is performed if said file related to said file operation request does not exist in local data of said virtual machine running in said host.
6. A computer-implemented method for running a virtual machine image in a host machine, said method comprising:
receiving a request sent by said host machine to copy a virtual machine image related to a virtual machine image provisioning request;
sending a portion of said virtual machine image to said host machine, wherein said portion of said virtual machine image comprises: an operating system kernel, partition information and file index information;
receiving a request sent by said host machine to copy a file related to a file operation request; and
sending said file related to said file operation request to said host machine.
7. The method according to claim 6, further comprising:
receiving changed data in said virtual machine image running in said host machine; and
updating said virtual machine image with said changed data.
8. The method according to claim 6, further comprising:
generating said file index information; and
generating a portion of said virtual machine image by using said generated file index information.
9. A computer-implemented system for running a virtual machine image in a host machine, said system comprising:
an image loader for
(i) receiving a virtual machine image provisioning request;
(ii) sending to a storage server, a request to copy a virtual machine image related to said virtual machine image provisioning request;
(iii) receiving a portion of said virtual machine image, wherein said portion of said virtual machine image comprises: an operating system kernel, partition information and file index information; and
(iv) starting a virtual machine in said host machine by running said received portion of said virtual machine image; and
an application loader for
(i) intercepting a file operation request of a program running in said virtual machine; and
(ii) acquiring a file related to said file operation request.
10. The system according to claim 9, further comprising:
an image synchronizer for sending data to update said virtual machine image in said storage server, wherein said image synchronizer sends data to update said virtual machine image in said storage server if said data in said virtual machine image running in said host machine has been changed.
11. The system according to claim 9, wherein:
said application loader further records a change of said file index information incrementally; and
said image synchronizer further reads a change of said file index information.
12. The system according to claim 9, wherein:
said application loader further reads said file related to said file operation request directly from local data, wherein said application loader reads said file related to said file operation request directly from local data if said file related to said file operation request already exists in said local data of said virtual machine running in said host machine.
13. The system according to claim 9, wherein:
said application loader further sends to said storage server a request to copy said file related to said file operation request and further receives said file related to said file operation request from said storage server, wherein said application loader sends to said storage server a request to copy said file related to said file operation request and receives said file related to said file operation request from said storage server if said file related to said file operation request does not exist in local data of said virtual machine running in said host machine.
14. A computer-implemented system for running a virtual machine image in a host machine, comprising
an image visitor for:
(i) receiving a request sent by said host machine to copy a virtual machine image related to a virtual machine image provisioning request;
(ii) sending a portion of said virtual machine image to said host machine, wherein said portion of said virtual machine image comprises: an operating system kernel, partition information and file index information;
(iii) receiving a request sent by said host machine to copy a file related to a file operation request; and
(iv) sending said file related to said file operation request to said host machine.
15. The system according to claim 14, wherein said image visitor further:
receives changed data in said virtual machine image running in said host machine; and
updates said virtual machine image with said changed data.
16. The system according to claim 14, further comprising:
an image indexer for generating said file index information; and
an image converter for generating a portion of said virtual machine image by using said file index information generated by said image indexer.
17. An article of manufacture tangibly embodying computer readable instructions which when implemented, cause a computer to carry out the steps of a computer-implemented method for running a virtual machine image in a host machine according to claim 1.
18. An article of manufacture tangibly embodying computer readable instructions which when implemented, cause a computer to carry out the steps of a computer-implemented method for running a virtual machine image in a host machine according to claim 6.
US12/893,091 2009-09-30 2010-09-29 Method and system for running virtual machine image Abandoned US20110078681A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200910174129.3 2009-09-30
CN2009101741293A CN102033755A (en) 2009-09-30 2009-09-30 Method and system for running virtual machine mirror image

Publications (1)

Publication Number Publication Date
US20110078681A1 true US20110078681A1 (en) 2011-03-31

Family

ID=43781761

Family Applications (1)

Application Number Title Priority Date Filing Date
US12/893,091 Abandoned US20110078681A1 (en) 2009-09-30 2010-09-29 Method and system for running virtual machine image

Country Status (4)

Country Link
US (1) US20110078681A1 (en)
JP (1) JP2011076605A (en)
KR (1) KR20110035949A (en)
CN (1) CN102033755A (en)

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102185928A (en) * 2011-06-01 2011-09-14 广州杰赛科技股份有限公司 Method for creating virtual machine in cloud computing system and cloud computing system
CN102629941A (en) * 2012-03-20 2012-08-08 武汉邮电科学研究院 Caching method of a virtual machine mirror image in cloud computing system
CN102810067A (en) * 2011-06-02 2012-12-05 鸿富锦精密工业(深圳)有限公司 Virtual machine template updating system and method
US20120311574A1 (en) * 2011-06-02 2012-12-06 Fujitsu Limited System and method for providing evidence of the physical presence of virtual machines
US20130227089A1 (en) * 2012-02-23 2013-08-29 Red Hat Inc. Building virtual machine disk images for different cloud configurations from a single generic virtual machine disk image
US20130235035A1 (en) * 2010-12-16 2013-09-12 Nintendo Co., Ltd. Image processing system, method of operating image processing system, host apparatus, program, and method of making program
US20140082615A1 (en) * 2012-09-17 2014-03-20 International Business Machines Corporation Provisioning a virtual machine from one or more vm images
CN103778031A (en) * 2014-01-15 2014-05-07 华中科技大学 Distributed system multilevel fault tolerance method under cloud environment
CN103810422A (en) * 2014-02-20 2014-05-21 东莞中国科学院云计算产业技术创新与育成中心 Safety virtualization isolation method based on mirror image intelligent management
US8813076B2 (en) 2011-11-17 2014-08-19 International Business Machines Corporation Virtual machine updates
US8880638B2 (en) 2012-06-18 2014-11-04 International Business Machines Corporation Distributed image cache for servicing virtual resource requests in the cloud
GB2515114A (en) * 2013-06-14 2014-12-17 1E Ltd Communication of Virtual Machine Data
US8943291B2 (en) 2011-12-13 2015-01-27 International Business Machines Corporation Reorganization of software images based on predicted use thereof
US8997098B2 (en) 2012-10-31 2015-03-31 Samsung Sds Co., Ltd. Hypervisor-based server duplication system and method and storage medium storing server duplication computer program
US9098378B2 (en) 2012-01-31 2015-08-04 International Business Machines Corporation Computing reusable image components to minimize network bandwidth usage
US20150234617A1 (en) * 2014-02-18 2015-08-20 University Of Florida Research Foundation, Inc. Method and apparatus for virtual machine live storage migration in heterogeneous storage environment
US9128744B2 (en) 2012-05-29 2015-09-08 International Business Machines Corporation Generating user-requested virtual machine templates from super virtual machine templates and cacheable patches
US9262211B2 (en) 2011-11-10 2016-02-16 Samsung Electronics Co., Ltd. Apparatus and method for software migration in mobile environment
EP2925080A4 (en) * 2012-12-26 2016-02-24 Huawei Tech Co Ltd Creating method and device for virtual base station
US20160124815A1 (en) * 2011-06-30 2016-05-05 Emc Corporation Efficient backup of virtual data
CN106155758A (en) * 2015-03-24 2016-11-23 联想(北京)有限公司 A kind of server system and corresponding control methods thereof
US9519472B2 (en) 2011-11-23 2016-12-13 Red Hat, Inc. Automation of virtual machine installation by splitting an installation into a minimal installation and customization
US9542174B2 (en) 2013-07-31 2017-01-10 Globalfoundries Inc. Deployment of software images with distinct configuration logic
US9600774B1 (en) * 2013-09-25 2017-03-21 Amazon Technologies, Inc. Predictive instance suspension and resumption
US9697356B2 (en) 2012-08-21 2017-07-04 Empire Technology Development Llc Detection and mitigation of side-channel attacks
CN106997392A (en) * 2017-04-10 2017-08-01 北京搜狐新媒体信息技术有限公司 Processing method, device and the read method and device of Docker mirror cache information
US9813485B2 (en) 2013-06-14 2017-11-07 1E Limited Communication of virtual machine data
US10089190B2 (en) 2011-06-30 2018-10-02 EMC IP Holding Company LLC Efficient file browsing using key value databases for virtual backups
US20190220328A1 (en) * 2018-01-16 2019-07-18 Qsc, Llc Audio, video and control system implementing virtual machines
US10394758B2 (en) 2011-06-30 2019-08-27 EMC IP Holding Company LLC File deletion detection in key value databases for virtual backups
CN112130930A (en) * 2020-09-23 2020-12-25 平安科技(深圳)有限公司 Mirror image system generation method, device, equipment and medium
US11063565B2 (en) 2018-02-23 2021-07-13 Qsc, Llc Audio amplifier assemblies, processes, and methods
WO2021232289A1 (en) * 2020-05-20 2021-11-25 深圳市欢太科技有限公司 Image pulling method and related product
US11194607B2 (en) 2018-01-16 2021-12-07 Qsc, Llc Cloud based audio / video operating systems

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8984610B2 (en) 2011-04-18 2015-03-17 Bank Of America Corporation Secure network cloud architecture
CN102185861B (en) * 2011-05-13 2014-04-16 惠州Tcl移动通信有限公司 System and method for realizing interaction between tablet computer and smart phone
US9152405B2 (en) * 2011-08-22 2015-10-06 International Business Machines Corporation Rapid provisioning of virtual machines based on multi-dimensional user request patterns in a cloud
CN102495744B (en) * 2011-11-29 2014-11-19 湖南南车时代电动汽车股份有限公司 Control software upgrading method of electronic control devices of electric automobile based on controller area network (CAN) bus
CN103150175B (en) * 2011-12-07 2018-04-13 天津中兴智联科技有限公司 A kind of method and device for building mirror image of changing the line of production
CN103176831B (en) * 2011-12-22 2016-08-10 中国移动通信集团公司 A kind of dummy machine system and management method thereof
TW201327391A (en) * 2011-12-27 2013-07-01 Hon Hai Prec Ind Co Ltd System and method for applying virtual machines
US9992024B2 (en) 2012-01-25 2018-06-05 Fujitsu Limited Establishing a chain of trust within a virtual machine
US9183031B2 (en) 2012-06-19 2015-11-10 Bank Of America Corporation Provisioning of a virtual machine by using a secured zone of a cloud environment
CN102880515A (en) * 2012-09-07 2013-01-16 浪潮电子信息产业股份有限公司 Method for deploying virtual machine rapidly in smart cloud OS (operating system)
CN103838593B (en) * 2012-11-22 2020-04-03 华为技术有限公司 Method and system for recovering virtual machine, controller, server and host
CN103116507B (en) * 2012-12-14 2017-02-08 惠州市亿能电子有限公司 Electronic control unit (ECU) program downloading method based on controller area network (CAN)
CN103077072A (en) * 2013-01-04 2013-05-01 浪潮(北京)电子信息产业有限公司 Method and system for copying virtual machine
CN103729264B (en) * 2013-12-23 2016-07-13 国云科技股份有限公司 A kind of Windows virtual machine system disk backup and reduction method
CN104281486B (en) * 2014-09-26 2018-04-20 华为技术有限公司 A kind of virtual machine treating method and apparatus
CN104573422A (en) * 2015-01-08 2015-04-29 浪潮软件股份有限公司 Virtual machine-based application process operation method and device
CN104820610B (en) * 2015-05-14 2017-12-22 华中科技大学 The update method and system of virtual machine image in a kind of cloud environment
CN105260229A (en) * 2015-10-28 2016-01-20 北京百度网讯科技有限公司 Method and device for pulling mirror image files of virtual machines
CN106020902A (en) * 2016-05-31 2016-10-12 浪潮(北京)电子信息产业有限公司 Virtual machine mirror image file management method and system applied to cloud platform
WO2018014356A1 (en) * 2016-07-22 2018-01-25 华为技术有限公司 Loading method and apparatus
CN107968794B (en) * 2016-10-18 2023-05-12 中兴通讯股份有限公司 Virtual CD-ROM mounting method and system, server and terminal
CN106445643B (en) * 2016-11-14 2019-10-22 上海云轴信息科技有限公司 It clones, the method and apparatus of upgrading virtual machine
CN108206750A (en) * 2016-12-16 2018-06-26 北京国双科技有限公司 The configuration method and device of virtual machine network interface card
CN107256368B (en) * 2017-06-06 2020-02-07 北京航空航天大学 Method for measuring file integrity in virtual machine based on copy-on-write characteristic
CN107291507B (en) * 2017-06-28 2020-10-27 联想(北京)有限公司 Upgrading method for virtual hard disk of virtual machine and electronic equipment
KR101967300B1 (en) * 2017-10-27 2019-04-09 아토리서치(주) Method and apparatus for virtual machine image creation automation
CN108287733A (en) * 2017-12-19 2018-07-17 广东睿江云计算股份有限公司 A kind of virtual machine load startup method
CN110032870B (en) * 2019-03-29 2020-10-02 网御安全技术(深圳)有限公司 Safety guiding method and system of virtual machine monitor and hardware safety monitoring card
CN113760439A (en) * 2020-06-01 2021-12-07 中移(苏州)软件技术有限公司 Virtual machine network management method, device, equipment and storage medium
CN113703927B (en) * 2021-10-29 2022-02-11 杭州链城数字科技有限公司 Data processing method, privacy computing system, electronic device, and storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070169049A1 (en) * 2005-12-01 2007-07-19 Cassatt Corporation Automated deployment and configuration of applications in an autonomically controlled distributed computing system
US7257584B2 (en) * 2002-03-18 2007-08-14 Surgient, Inc. Server file management
US7356679B1 (en) * 2003-04-11 2008-04-08 Vmware, Inc. Computer image capture, customization and deployment
US7434220B2 (en) * 2002-09-16 2008-10-07 Clearcube Technology, Inc. Distributed computing infrastructure including autonomous intelligent management system
US20080313318A1 (en) * 2007-06-18 2008-12-18 Vermeulen Allan H Providing enhanced data retrieval from remote locations
US20090198731A1 (en) * 2008-01-31 2009-08-06 Prowess Consulting, Llc Method and system for modularizing windows imaging format

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7634689B2 (en) * 2005-09-22 2009-12-15 Advanced Micro Devices, Inc. Boot performance optimization for hard drive for personal internet communicator
JP4434168B2 (en) * 2006-03-30 2010-03-17 日本電気株式会社 On-demand client service system, management method thereof, and program
JP4366698B2 (en) * 2006-07-27 2009-11-18 日本電気株式会社 Computer, computer system, and disk image distribution method

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7257584B2 (en) * 2002-03-18 2007-08-14 Surgient, Inc. Server file management
US7434220B2 (en) * 2002-09-16 2008-10-07 Clearcube Technology, Inc. Distributed computing infrastructure including autonomous intelligent management system
US7356679B1 (en) * 2003-04-11 2008-04-08 Vmware, Inc. Computer image capture, customization and deployment
US20070169049A1 (en) * 2005-12-01 2007-07-19 Cassatt Corporation Automated deployment and configuration of applications in an autonomically controlled distributed computing system
US20080313318A1 (en) * 2007-06-18 2008-12-18 Vermeulen Allan H Providing enhanced data retrieval from remote locations
US20090198731A1 (en) * 2008-01-31 2009-08-06 Prowess Consulting, Llc Method and system for modularizing windows imaging format

Cited By (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9406104B2 (en) * 2010-12-16 2016-08-02 Megachips Corporation Image processing system, method of operating image processing system, host apparatus, program, and method of making program
US20130235035A1 (en) * 2010-12-16 2013-09-12 Nintendo Co., Ltd. Image processing system, method of operating image processing system, host apparatus, program, and method of making program
CN102185928A (en) * 2011-06-01 2011-09-14 广州杰赛科技股份有限公司 Method for creating virtual machine in cloud computing system and cloud computing system
CN102810067A (en) * 2011-06-02 2012-12-05 鸿富锦精密工业(深圳)有限公司 Virtual machine template updating system and method
US8776057B2 (en) * 2011-06-02 2014-07-08 Fujitsu Limited System and method for providing evidence of the physical presence of virtual machines
US20120311574A1 (en) * 2011-06-02 2012-12-06 Fujitsu Limited System and method for providing evidence of the physical presence of virtual machines
US10394758B2 (en) 2011-06-30 2019-08-27 EMC IP Holding Company LLC File deletion detection in key value databases for virtual backups
US20160124815A1 (en) * 2011-06-30 2016-05-05 Emc Corporation Efficient backup of virtual data
US10275315B2 (en) * 2011-06-30 2019-04-30 EMC IP Holding Company LLC Efficient backup of virtual data
US10089190B2 (en) 2011-06-30 2018-10-02 EMC IP Holding Company LLC Efficient file browsing using key value databases for virtual backups
US9262211B2 (en) 2011-11-10 2016-02-16 Samsung Electronics Co., Ltd. Apparatus and method for software migration in mobile environment
US8813076B2 (en) 2011-11-17 2014-08-19 International Business Machines Corporation Virtual machine updates
US9519472B2 (en) 2011-11-23 2016-12-13 Red Hat, Inc. Automation of virtual machine installation by splitting an installation into a minimal installation and customization
US8943291B2 (en) 2011-12-13 2015-01-27 International Business Machines Corporation Reorganization of software images based on predicted use thereof
US9098379B2 (en) 2012-01-31 2015-08-04 International Business Machines Corporation Computing reusable image components to minimize network bandwidth usage
US9098378B2 (en) 2012-01-31 2015-08-04 International Business Machines Corporation Computing reusable image components to minimize network bandwidth usage
US10445121B2 (en) * 2012-02-23 2019-10-15 Red Hat Inc. Building virtual machine disk images for different cloud configurations from a single generic virtual machine disk image
US20130227089A1 (en) * 2012-02-23 2013-08-29 Red Hat Inc. Building virtual machine disk images for different cloud configurations from a single generic virtual machine disk image
CN102629941A (en) * 2012-03-20 2012-08-08 武汉邮电科学研究院 Caching method of a virtual machine mirror image in cloud computing system
US9128744B2 (en) 2012-05-29 2015-09-08 International Business Machines Corporation Generating user-requested virtual machine templates from super virtual machine templates and cacheable patches
US9135045B2 (en) 2012-05-29 2015-09-15 International Business Machines Corporation Generating user-requested virtual machine templates from super virtual machine templates and cacheable patches
US8880638B2 (en) 2012-06-18 2014-11-04 International Business Machines Corporation Distributed image cache for servicing virtual resource requests in the cloud
US9697356B2 (en) 2012-08-21 2017-07-04 Empire Technology Development Llc Detection and mitigation of side-channel attacks
US20140082615A1 (en) * 2012-09-17 2014-03-20 International Business Machines Corporation Provisioning a virtual machine from one or more vm images
US20140082613A1 (en) * 2012-09-17 2014-03-20 International Business Machines Corporation Provisioning a virtual machine from one or more vm images
US9063815B2 (en) * 2012-09-17 2015-06-23 International Business Machines Corporation Provisioning a virtual machine from one or more VM images
US8997098B2 (en) 2012-10-31 2015-03-31 Samsung Sds Co., Ltd. Hypervisor-based server duplication system and method and storage medium storing server duplication computer program
US9317320B2 (en) 2012-10-31 2016-04-19 Samsung Sds Co., Ltd. Hypervisor-based server duplication system and method and storage medium storing server duplication computer program
EP2925080A4 (en) * 2012-12-26 2016-02-24 Huawei Tech Co Ltd Creating method and device for virtual base station
US9572050B2 (en) 2012-12-26 2017-02-14 Huawei Technologies Co. Ltd. Method and apparatus for creating virtual base station
US9883410B2 (en) 2012-12-26 2018-01-30 Huawei Technoiogies Co., Ltd. Method and apparatus for creating virtual base station
US9813485B2 (en) 2013-06-14 2017-11-07 1E Limited Communication of virtual machine data
GB2515114A (en) * 2013-06-14 2014-12-17 1E Ltd Communication of Virtual Machine Data
GB2515114B (en) * 2013-06-14 2015-07-22 1E Ltd Communication of Virtual Machine Data
US9542174B2 (en) 2013-07-31 2017-01-10 Globalfoundries Inc. Deployment of software images with distinct configuration logic
US20180039899A1 (en) * 2013-09-25 2018-02-08 Amazon Technologies, Inc. Predictive instance suspension and resumption
US9600774B1 (en) * 2013-09-25 2017-03-21 Amazon Technologies, Inc. Predictive instance suspension and resumption
CN103778031A (en) * 2014-01-15 2014-05-07 华中科技大学 Distributed system multilevel fault tolerance method under cloud environment
US9195401B2 (en) * 2014-02-18 2015-11-24 University Of Florida Research Foundation, Inc. Method and apparatus for virtual machine live storage migration in heterogeneous storage environment
US20150234617A1 (en) * 2014-02-18 2015-08-20 University Of Florida Research Foundation, Inc. Method and apparatus for virtual machine live storage migration in heterogeneous storage environment
CN103810422A (en) * 2014-02-20 2014-05-21 东莞中国科学院云计算产业技术创新与育成中心 Safety virtualization isolation method based on mirror image intelligent management
CN106155758A (en) * 2015-03-24 2016-11-23 联想(北京)有限公司 A kind of server system and corresponding control methods thereof
CN106997392A (en) * 2017-04-10 2017-08-01 北京搜狐新媒体信息技术有限公司 Processing method, device and the read method and device of Docker mirror cache information
CN111602118A (en) * 2018-01-16 2020-08-28 Qsc公司 Audio, video and control system for implementing virtual machine
US20190220328A1 (en) * 2018-01-16 2019-07-18 Qsc, Llc Audio, video and control system implementing virtual machines
US10901809B2 (en) * 2018-01-16 2021-01-26 Qsc, Llc Audio, video and control system implementing virtual machines
US11194607B2 (en) 2018-01-16 2021-12-07 Qsc, Llc Cloud based audio / video operating systems
US11474882B2 (en) 2018-01-16 2022-10-18 Qsc, Llc Audio, video and control system implementing virtual machines
US11561813B2 (en) 2018-01-16 2023-01-24 Qsc, Llc Server support for multiple audio/video operating systems
US11714690B2 (en) 2018-01-16 2023-08-01 Qsc, Llc Audio, video and control system implementing virtual machines
US11063565B2 (en) 2018-02-23 2021-07-13 Qsc, Llc Audio amplifier assemblies, processes, and methods
US11611322B2 (en) 2018-02-23 2023-03-21 Qsc, Llc Audio amplifier assemblies, processes, and methods
WO2021232289A1 (en) * 2020-05-20 2021-11-25 深圳市欢太科技有限公司 Image pulling method and related product
CN112130930A (en) * 2020-09-23 2020-12-25 平安科技(深圳)有限公司 Mirror image system generation method, device, equipment and medium

Also Published As

Publication number Publication date
KR20110035949A (en) 2011-04-06
JP2011076605A (en) 2011-04-14
CN102033755A (en) 2011-04-27

Similar Documents

Publication Publication Date Title
US20110078681A1 (en) Method and system for running virtual machine image
US11288053B2 (en) Conversion and restoration of computer environments to container-based implementations
US9934064B2 (en) Storing and resuming application runtime state
US9880889B2 (en) Virtual application extension points
US11500814B1 (en) Chain file system
US8924954B2 (en) Application software installation method and application software installation apparatus
US20210349699A1 (en) Automatic containerization of operating system distributions
US11403146B2 (en) Method, apparatus, and server for managing image across cloud servers
US8484641B2 (en) Implementing a versioned virtualized application runtime environment
US10574524B2 (en) Increasing reusability of and reducing storage resources required for virtual machine images
Alpern et al. PDS: A virtual execution environment for software deployment
US11775475B2 (en) Deferred path resolution during container deployment
US20100169881A1 (en) Method and system for efficient image customization for mass deployment
KR20170133120A (en) System and mehtod for managing container image
WO2021196597A1 (en) Service plug-in loading implementation method and apparatus, and terminal device
US8732427B2 (en) Systems and methods for collapsing a derivative version of a primary storage volume
US8677354B2 (en) Controlling kernel symbol visibility and accessibility across operating system linkage spaces
CN113296891A (en) Multi-scene knowledge graph processing method and device based on platform
US11323331B2 (en) Cloud server and operating method of the same
US11709665B2 (en) Hybrid approach to performing a lazy pull of container images
US11709683B2 (en) State semantics kexec based firmware update
US20110314108A1 (en) Data migration between disparate data structures
CN117742903A (en) Host migration method, device and system
TW201214282A (en) Method and system for running virtual machine image

Legal Events

Date Code Title Description
AS Assignment

Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:LI, YING;QIU, JIE;YANG, JIE;AND OTHERS;SIGNING DATES FROM 20130118 TO 20130327;REEL/FRAME:030093/0798

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO PAY ISSUE FEE