[go: up one dir, main page]

CN103136000A - Method and system of providing application program for virtual machine - Google Patents

Method and system of providing application program for virtual machine Download PDF

Info

Publication number
CN103136000A
CN103136000A CN2011103787922A CN201110378792A CN103136000A CN 103136000 A CN103136000 A CN 103136000A CN 2011103787922 A CN2011103787922 A CN 2011103787922A CN 201110378792 A CN201110378792 A CN 201110378792A CN 103136000 A CN103136000 A CN 103136000A
Authority
CN
China
Prior art keywords
virtual machine
application program
shelves
application
destination application
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.)
Pending
Application number
CN2011103787922A
Other languages
Chinese (zh)
Inventor
庄予玮
林峰正
孙芮澔
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.)
Institute for Information Industry
Original Assignee
Institute for Information Industry
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 Institute for Information Industry filed Critical Institute for Information Industry
Priority to CN2011103787922A priority Critical patent/CN103136000A/en
Publication of CN103136000A publication Critical patent/CN103136000A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

The invention relates to a method and a system of providing an application program for a virtual machine. The method for providing the application program for the virtual machine comprises a step of receiving an application program opening instruct from a client side for opening a target application program, a step of distributing an available virtual machine according to the application program opening instruct, a step of finding a target application program execution file corresponding to the target application program from a plurality of candidate application program execution files stored in an execution file storage pool, a step of mounting the target application program execution file to the available virtual machine, and a step of executing a mounted target application program execution file through the available virtual machine.

Description

于虚拟机器提供应用程序的方法以及系统Method and system for providing application program on virtual machine

技术领域 technical field

本发明是有关于一种提供虚拟机器的方法以及系统,且特别是有关于一种可于虚拟机器提供应用程序的方法以及系统。The present invention relates to a method and a system for providing a virtual machine, and in particular to a method and a system for providing an application program on a virtual machine.

背景技术 Background technique

在过去许多年中,电脑上的使用者界面已经历许多变更。早期的字符型使用者界面,例如微软的DOS界面,提供使用者字符输入指令以执行应用程序。接下来,发展出图形使用者界面(Graphical User Interface,GUI),用以通过图形化的图标(icon),提供使用者更为直觉的操作方式。User interfaces on computers have undergone many changes over the years. Early character-based user interfaces, such as Microsoft's DOS interface, provide users with character input commands to execute application programs. Next, a Graphical User Interface (GUI) is developed to provide users with a more intuitive operation mode through graphical icons.

近年来,虚拟机器的概念开始蓬勃发展。使用者可初始化一台虚拟机器,并将电脑应用程序和数据寄存于一虚拟机器,然后可以随时随地在任何电脑上存取所初始化的虚拟机器。如此一来,使用者可在一实体电脑中设置多台虚拟机器,每一台虚拟机器皆可配置不同的操作系统、不同的应用程序、不同的操作环境,甚至储存不同的数据,如同拥有多台电脑。In recent years, the concept of virtual machines has begun to flourish. The user can initialize a virtual machine and store computer applications and data in the virtual machine, and then can access the initialized virtual machine on any computer anytime and anywhere. In this way, users can set up multiple virtual machines in one physical computer, and each virtual machine can be configured with different operating systems, different applications, different operating environments, and even store different data, just like having multiple virtual machines. computer.

当使用者在操作虚拟机器时,多半只能执行已安装于虚拟机器上的应用程序,当虚拟机器未安装有所需要的应用程序时,此虚拟机器就必须仿照实体电脑,安装所需要的应用程序,相当不便。另一种解决方案,是由实体电脑再另外初始化一台已安装有所需要应用程序的虚拟机器,但此种方式仍有相当多的缺点,例如初始化另一台虚拟机器可能要花费数分钟以上,或者实体电脑可能未事先具有已安装有所需要应用程序的虚拟机器的映像档,又或者是实体电脑可能不具有足够的资源用来额外初始化一台虚拟机器。When a user is operating a virtual machine, most of them can only execute the applications that have been installed on the virtual machine. When the virtual machine does not have the required applications installed, the virtual machine must be like a physical computer and install the required applications. program, quite inconvenient. Another solution is to initialize another virtual machine with all required applications installed on the physical computer, but this method still has quite a few disadvantages, for example, it may take more than several minutes to initialize another virtual machine , or the physical computer may not have an image file of the virtual machine with all required applications installed in advance, or the physical computer may not have enough resources to initialize an additional virtual machine.

上述问题在云系统中将更加严重,由于云系统经常设置相当多个虚拟机器以提供众多使用者来使用,云系统为了管理方便,多只建置一种或极少的虚拟机器。因为众多使用者往往有各式各样的需求,因此,若欲满足大部分使用者的需求,云系统中的虚拟机器即必需安装相当多的应用程序,如此一来每个虚拟机器将需要相当大的资源,整个云系统也将耗费太多硬体资源。The above-mentioned problems will be more serious in the cloud system. Because the cloud system often sets up quite a few virtual machines for many users to use, the cloud system only builds one or very few virtual machines for the convenience of management. Because many users often have a variety of needs, therefore, in order to meet the needs of most users, the virtual machines in the cloud system must install quite a few applications, so that each virtual machine will require quite a few Large resources, the entire cloud system will also consume too many hardware resources.

发明内容 Contents of the invention

因此,本发明的一方面是在提供一种于虚拟机器提供应用程序的方法,用以在当客户端欲开启应用程序时,可将对应的执行档挂载(mount)至一虚拟机器,供虚拟机器执行。于虚拟机器提供应用程序的方法包含以下步骤:Therefore, one aspect of the present invention is to provide a method for providing an application program on a virtual machine, so that when the client wants to start the application program, the corresponding execution file can be mounted (mount) to a virtual machine for virtual machine execution. The method for providing an application program on a virtual machine includes the following steps:

(a)自一客户端接收一应用程序开启指令,用以开启一目标应用程序。(a) receiving an application opening command from a client to open a target application.

(b)根据应用程序开启指令,分配一可用虚拟机器。(b) Allocating an available virtual machine according to the application start instruction.

(c)自一执行档储存池所存有的数个候选应用程序执行档,寻找对应目标应用程序的一目标应用程序执行档。(c) Searching for a target application execution file corresponding to the target application from several candidate application execution files stored in an execution file storage pool.

(d)挂载目标应用程序执行档至可用虚拟机器。(d) mounting the target application program execution file to an available virtual machine.

(e)通过可用虚拟机器执行已挂载的目标应用程序执行档。(e) Executing the mounted target application execution file through the available virtual machine.

本发明的另一方面是在提供一种电脑可读取记录媒体,储存一电脑程序,用以执行上述于虚拟机器提供应用程序的方法。方法步骤流程如上所述,在此不再重复赘述。Another aspect of the present invention is to provide a computer-readable recording medium storing a computer program for executing the above-mentioned method for providing an application program in a virtual machine. The flow of the method steps is as described above, and will not be repeated here.

本发明的另一方面是在提供一种于虚拟机器提供应用程序的系统,用以在客户端欲开启应用程序时,将对应的执行档挂载至一虚拟机器,供虚拟机器执行。于虚拟机器提供应用程序的系统包含一执行档储存池、一指令接收模块、一机器分配模块、一执行档寻找模块以及一挂载模块。执行档储存池储存数个候选应用程序执行档。指令接收模块自一客户端接收一应用程序开启指令,用以开启一目标应用程序。机器分配模块根据应用程序开启指令,分配候一可用虚拟机器。执行档寻找模块自执行档储存池所存有的候选应用程序执行档,寻找对应目标应用程序的一目标应用程序执行档。挂载模块挂载目标应用程序执行档至可用虚拟机器,并通过可用虚拟机器执行已挂载的目标应用程序执行档。Another aspect of the present invention is to provide a system for providing an application program on a virtual machine, which is used to mount the corresponding execution file to a virtual machine when the client wants to start the application program, for the virtual machine to execute. The system for providing application programs in the virtual machine includes an execution file storage pool, an instruction receiving module, a machine allocation module, an execution file search module and a mount module. The execution file storage pool stores several candidate application execution files. The instruction receiving module receives an application opening instruction from a client to open a target application. The machine allocating module allocates an available virtual machine according to the opening instruction of the application program. The execution file searching module searches for a target application execution file corresponding to the target application from the candidate application execution files stored in the execution file storage pool. The mounting module mounts the execution file of the target application program to an available virtual machine, and executes the mounted target application execution file through the available virtual machine.

应用本发明具有下列优点:客户端的使用者欲透过客户端执行一应用程序时,可就现有的虚拟机器进行应用程序的执行。也就是说,即使现有的虚拟机器未安装有欲执行的应用程序,仍可自执行档储存池复制并挂载对应的执行档,而使现有的虚拟机器可执行原先未安装的应用程序。换言之,上述状况中,不需为了未安装的应用程序,另外初始化新的虚拟机器。也就是说,可不需安装太多应用程序于虚拟机器,减少维持各虚拟机器所需的资源,且可节省初始化新的虚拟机器所需的时间。此外,若有多个客户端欲使用同样的应用程序时,可通过重复复制并挂载多个对应的执行档,以供多个不同客户端分别使用。因此,可避免同一应用程序无法同时被多个客户端使用。The application of the present invention has the following advantages: when the user of the client terminal wants to execute an application program through the client terminal, the application program can be executed on the existing virtual machine. That is to say, even if the existing virtual machine is not installed with the application to be executed, the corresponding execution file can still be copied and mounted from the execution file storage pool, so that the existing virtual machine can execute the application that was not installed before . In other words, in the above situation, there is no need to additionally initialize a new virtual machine for an application that is not installed. That is to say, there is no need to install too many applications on the virtual machine, reducing the resources required to maintain each virtual machine, and saving the time required for initializing a new virtual machine. In addition, if multiple clients want to use the same application program, multiple corresponding execution files can be repeatedly copied and mounted for separate use by multiple different clients. Therefore, it can be avoided that the same application program cannot be used by multiple clients at the same time.

附图说明 Description of drawings

为让本发明的上述和其他目的、特征、优点与实施例能更明显易懂,所附附图的说明如下:In order to make the above and other objects, features, advantages and embodiments of the present invention more comprehensible, the accompanying drawings are described as follows:

图1是依照本发明一实施方式的一种于虚拟机器提供应用程序的方法流程图;FIG. 1 is a flowchart of a method for providing an application program on a virtual machine according to an embodiment of the present invention;

图2绘示依照本发明一实施方式的一种于虚拟机器提供应用程序的系统的功能方块图;FIG. 2 shows a functional block diagram of a system for providing application programs on a virtual machine according to an embodiment of the present invention;

图3绘示依照本发明另一实施方式的一种于虚拟机器提供应用程序的系统的功能方块图。FIG. 3 is a functional block diagram of a system for providing application programs on a virtual machine according to another embodiment of the present invention.

【主要组件符号说明】[Description of main component symbols]

100:于虚拟机器提供应用程序的方法100: Method for Serving Applications on Virtual Machines

120~170:步骤120~170: steps

200:于虚拟机器提供应用程序的系统200: A system that provides applications on virtual machines

210:执行档储存池210: Execution file storage pool

220:执行档提供池220: The execution file provides a pool

240:虚拟桌面提供模块240: Virtual desktop providing module

250:指令接收模块250: Instruction receiving module

260:机器分配模块260: Machine Allocation Module

270:执行档寻找模块270: Executable file search module

280:挂载模块280: Mount module

280a:判断器280a: Judgment

290:信息查询模块290: Information query module

300:资源监控模块300: resource monitoring module

400:客户端400: Client

具体实施方式Detailed ways

以下将以附图及详细描述,清楚说明本发明的精神,任何所属技术领域中具有通常知识者,在了解本发明的较佳实施例后,当可由本发明所教示的技术,加以改变及修饰,然其并不脱离本发明的精神与范围。The spirit of the present invention will be clearly illustrated with the accompanying drawings and detailed description below. Anyone with ordinary knowledge in the technical field, after understanding the preferred embodiments of the present invention, can make changes and modifications based on the techniques taught in the present invention. , but it does not depart from the spirit and scope of the present invention.

请参照图1,其是依照本发明一实施方式的一种于虚拟机器提供应用程序的方法流程图。于虚拟机器提供应用程序的方法可经由一于虚拟机器提供应用程序的系统来实作,在自客户端透过虚拟桌面欲开启应用程序时,可将对应的执行档挂载至提供虚拟桌面的虚拟机器,供虚拟机器执行。Please refer to FIG. 1 , which is a flowchart of a method for providing an application program on a virtual machine according to an embodiment of the present invention. The method of providing an application program on a virtual machine can be implemented through a system providing an application program on a virtual machine. When an application program is to be opened from a client through a virtual desktop, the corresponding execution file can be mounted to the system providing the virtual desktop. Virtual machine for execution by the virtual machine.

于虚拟机器提供应用程序的方法100包含以下步骤:The method 100 for providing an application program on a virtual machine includes the following steps:

在步骤120中,自一客户端接收一应用程序开启指令,用以开启一目标应用程序。In step 120, an application opening instruction is received from a client to open a target application.

在本发明的一实施例中,在客户端的使用者欲执行一目标应用程序时,客户端的使用者可经由操作客户端的一应用程序,产生及传送该应用程序开启指令,供步骤120接收。在本发明的另一实施例中,可提供一虚拟桌面至客户端,借此使客户端的使用者可经由操作虚拟桌面,而产生及传送应用程序开启指令,供步骤120接收。在本发明的又一实施例中,可提供一网页至客户端,借此使客户端的使用者可经由操作网页,产生及传送应用程序开启指令。In an embodiment of the present invention, when the user of the client terminal intends to execute a target application program, the user of the client terminal can generate and transmit the application program start command by operating an application program of the client terminal for receiving in step 120 . In another embodiment of the present invention, a virtual desktop can be provided to the client, so that the user of the client can generate and send an application opening command by operating the virtual desktop for receiving in step 120 . In yet another embodiment of the present invention, a webpage can be provided to the client, so that the user of the client can generate and send an application program opening command by operating the webpage.

在一些实施例中,客户端可经由有线或无线通讯网络,连接到执行本发明方法的系统。在另一些实施例中,客户端亦可和执行本发明方法的系统设置在同一硬体中。In some embodiments, the client terminal can be connected to the system for performing the method of the present invention via a wired or wireless communication network. In some other embodiments, the client can also be set in the same hardware as the system that executes the method of the present invention.

在步骤130中,根据应用程序开启指令,分配一可用虚拟机器。In step 130, an available virtual machine is allocated according to the application start instruction.

在一实施例中,可用虚拟机器是指仍有资源可提供客户端服务的虚拟机器,但其可能具有或不具有应用程序开启指令所对应的应用程序。In an embodiment, an available virtual machine refers to a virtual machine that still has resources to provide client services, but it may or may not have an application corresponding to the application start instruction.

在本发明的一实施例中,可提供数个候选虚拟机器,且每一候选虚拟机器具有对应的资源信息。因此,在步骤130的一实施例中,可依据各候选虚拟机器对应的资源信息,判断是否足够挂载和执行目标应用程序执行档来进行分配。例如,从数个候选虚拟机器中,找出具有的资源信息足够挂载和执行目标应用程序执行档的一个或数个虚拟机器,选择其中的一来作为可用虚拟机器。In an embodiment of the present invention, several candidate virtual machines may be provided, and each candidate virtual machine has corresponding resource information. Therefore, in an embodiment of step 130, it may be determined whether it is enough to mount and execute the target application execution file for allocation according to the resource information corresponding to each candidate virtual machine. For example, one or more virtual machines with enough resource information to mount and execute the target application execution file are found from several candidate virtual machines, and one of them is selected as an available virtual machine.

在本发明的另一实施例中,每一候选虚拟机器还具有对应的已安装应用程序。于是,在步骤130可进一步依据各候选虚拟机器具有对应的已安装应用程序是否包含目标应用程序,以及各候选虚拟机器对应的资源信息是否足够执行目标应用程序来进行分配。例如,当候选虚拟机器中,已安装应用程序包含目标应用程序者,若尚有足够资源可执行目标应用程序,则可优先选择已安装有目标应用程序的候选虚拟机器来作为可用虚拟机器。当候选虚拟机器中,已安装应用程序包含目标应用程序者,皆未有足够资源可执行目标应用程序时,则可从候选虚拟机器中对应的已安装应用程序未包含目标应用程序者,依据其对应的资源信息判断是否足够挂载和执行目标应用程序执行档,而进一步进行分配,亦即找出具有的资源信息足够挂载和执行目标应用程序执行档的一个或数个虚拟机器,选择其中的一来作为可用虚拟机器。In another embodiment of the present invention, each candidate virtual machine also has a corresponding installed application. Therefore, in step 130, allocation can be further made according to whether each candidate virtual machine has a corresponding installed application program including the target application program, and whether the resource information corresponding to each candidate virtual machine is sufficient to execute the target application program. For example, when among the candidate virtual machines, the installed application program includes the target application program, if there are enough resources to execute the target application program, the candidate virtual machine with the target application program installed can be preferentially selected as an available virtual machine. When among the candidate virtual machines, the installed applications that include the target application do not have enough resources to execute the target application, the corresponding installed applications in the candidate virtual machine that do not contain the target application can be selected according to the Determine whether the corresponding resource information is sufficient to mount and execute the target application execution file, and further allocate, that is, find out one or several virtual machines with enough resource information to mount and execute the target application execution file, and select one of them One of them comes as an available virtual machine.

更进一步时,步骤130可根据应用程序开启指令,查询目标应用程序的所需资源信息,例如所需的运算资源、所需的记忆体空间、所需的指令集或所需的其他类型资源的信息。于是,可自现有的数个候选虚拟机器中,选择符合所需资源信息者,作为可用虚拟机器。Further, step 130 can query the required resource information of the target application program according to the application program start instruction, such as the required computing resources, required memory space, required instruction set or other types of resources required information. Therefore, from several existing candidate virtual machines, one that meets the required resource information can be selected as an available virtual machine.

更进一步时,可监控各候选虚拟机器的剩余资源。因此,在执行步骤130时,可选择候选虚拟机器中,其剩余资源符合所需资源信息者(例如,具有足够剩余资源可提供给目标应用程序者),作为可用虚拟机器。In a further step, the remaining resources of each candidate virtual machine can be monitored. Therefore, when step 130 is executed, among the candidate virtual machines, those whose remaining resources meet the required resource information (for example, those with enough remaining resources to provide the target application program) can be selected as available virtual machines.

在步骤140中,自一执行档储存池所存有的数个候选应用程序执行档中,寻找对应目标应用程序的一目标应用程序执行档。较佳的实施例中,执行档储存池所存有的候选应用程序执行档已符合各候选虚拟机器的一虚拟机器系统环境,而不需针对各候选虚拟机器的环境参数重新安装。In step 140 , a target application execution file corresponding to the target application is searched from several candidate application execution files stored in an execution file storage pool. In a preferred embodiment, the candidate application executable files stored in the executable file storage pool already conform to a virtual machine system environment of each candidate virtual machine, and there is no need to reinstall according to the environment parameters of each candidate virtual machine.

在本发明的一实施例中,执行档储存池所存有的候选应用程序执行档,可于各候选虚拟机器的虚拟机器系统环境中直接执行。在本发明的另一实施例中,执行档储存池所存有的候选应用程序执行档可在即时编译后,于各候选虚拟机器的虚拟机器系统环境中执行。在本发明的又一实施例中,执行档储存池所存有的候选应用程序执行档可执行于一模拟器(emulator)上,以于各候选虚拟机器的虚拟机器系统环境中直接执行,而不需重新安装。In an embodiment of the present invention, the candidate application executable files stored in the executable file storage pool can be directly executed in the virtual machine system environment of each candidate virtual machine. In another embodiment of the present invention, the candidate application executable files stored in the executable file storage pool can be executed in the virtual machine system environment of each candidate virtual machine after real-time compilation. In yet another embodiment of the present invention, the candidate application executable files stored in the executable file storage pool can be executed on an emulator, so as to be directly executed in the virtual machine system environment of each candidate virtual machine without Need to reinstall.

在步骤150中,挂载目标应用程序执行档至步骤130所分配的可用虚拟机器。在步骤150的一实施例中,可自执行档储存池链结或复制目标应用程序执行档至一分享空间。接下来,将分享空间中的目标应用程序执行档挂载至步骤130所分配的可用虚拟机器。In step 150 , mount the target application executable file to the available virtual machine allocated in step 130 . In an embodiment of step 150, the executable file of the target application program may be linked or copied from the executable file storage pool to a shared space. Next, the target application execution file in the shared space is mounted to the available virtual machine allocated in step 130 .

在步骤160中,通过步骤130所分配的可用虚拟机器执行已挂载的目标应用程序执行档。如此一来,客户端的使用者欲执行应用程序时,可就现有的虚拟机器执行应用程序。此外,应用本发明的一实施例,即使现有的虚拟机器未安装有欲执行的应用程序,仍可自执行档储存池复制并挂载对应的执行档,而使现有的虚拟机器可执行原先未安装的应用程序。换言之,上述状况中,不需因为未安装应用程序,另外初始化新的虚拟机器。也就是说,可不需安装太多应用程序于虚拟机器中,并减少维持各虚拟机器所需的资源,且可节省初始化新的虚拟机器所需的时间。此外,若有多个客户端欲使用同样的应用程序时,可通过重复复制并挂载多个对应的执行档,供多个不同客户端分别使用。因此,可避免同一应用程序无法同时被多个客户端使用。In step 160 , the mounted target application execution file is executed by the available virtual machine allocated in step 130 . In this way, when the user of the client wants to execute the application program, the application program can be executed on the existing virtual machine. In addition, applying an embodiment of the present invention, even if the existing virtual machine is not installed with the application program to be executed, the corresponding execution file can still be copied and mounted from the execution file storage pool, so that the existing virtual machine can execute Applications that were not originally installed. In other words, in the above situation, there is no need to additionally initialize a new virtual machine because the application program is not installed. That is to say, there is no need to install too many applications in the virtual machine, and the resources required to maintain each virtual machine are reduced, and the time required for initializing a new virtual machine can be saved. In addition, if multiple clients want to use the same application program, multiple corresponding execution files can be repeatedly copied and mounted for separate use by multiple different clients. Therefore, it can be avoided that the same application program cannot be used by multiple clients at the same time.

于是,在步骤170中,可于客户端的一显示器,显示可用虚拟机器执行目标应用程序执行档的一执行画面。Therefore, in step 170 , an execution screen of the execution file of the target application program that can be executed by the virtual machine can be displayed on a display of the client.

此外,在本发明的一实施例中,可预先挂载部份执行档至可用虚拟机器。因此,于虚拟机器提供应用程序的方法100更可包含以下步骤:可在初始化可用虚拟机器时,挂载数个预设应用程序执行档至可用虚拟机器。于是,在步骤150前,可判断可用虚拟机器上已预先挂载的预设应用程序执行档中,是否包含目标应用程序执行档。在已预先挂载的预设应用程序执行档不包含目标应用程序执行档时,执行步骤150。在已预先挂载的预设应用程序执行档包含目标应用程序执行档时,则跳过步骤150,继续执行步骤160。如此一来,可通过预先挂载部份常用程序的执行档,进一步节省挂载所需的时间。In addition, in an embodiment of the present invention, some executable files can be pre-mounted to available virtual machines. Therefore, the method 100 for providing an application program on a virtual machine may further include the following steps: when initializing the available virtual machine, mounting several default application execution files to the available virtual machine. Therefore, before step 150, it may be determined whether the target application execution file is included in the preset application execution files pre-mounted on the available virtual machine. Step 150 is executed when the pre-loaded default application execution file does not contain the target application execution file. When the pre-loaded default application execution file contains the target application execution file, step 150 is skipped and step 160 is continued. In this way, the time required for mounting can be further saved by pre-mounting the execution files of some commonly used programs.

请参照图2,其绘示依照本发明一实施方式的一种于虚拟机器提供应用程序的系统的功能方块图。客户端透过虚拟桌面欲开启应用程序时,于虚拟机器提供应用程序的系统将对应的执行档挂载至一虚拟机器,供虚拟机器执行。Please refer to FIG. 2 , which shows a functional block diagram of a system for providing application programs on a virtual machine according to an embodiment of the present invention. When the client wants to open the application program through the virtual desktop, the system providing the application program in the virtual machine mounts the corresponding execution file to a virtual machine for execution by the virtual machine.

于虚拟机器提供应用程序的系统200主要包含一执行档储存池210、一指令接收模块250、一机器分配模块260、一执行档寻找模块270以及一挂载模块280。其中,指令接收模块250、机器分配模块260、执行档寻找模块270以及挂载模块280,可由相同或相异的伺服器的处理组件所提供。The system 200 for providing application programs in virtual machines mainly includes an execution file storage pool 210 , a command receiving module 250 , a machine allocation module 260 , an execution file search module 270 and a mount module 280 . Wherein, the instruction receiving module 250 , the machine allocation module 260 , the executable file finding module 270 and the mounting module 280 may be provided by the same or different processing components of the server.

执行档储存池210储存数个候选应用程序执行档。系统200还可提供已初始化的数个候选虚拟机器。在本发明的一实施例中,执行档储存池210可实作于一服务器的一储存组件。在本发明的另一实施例中,执行档储存池210可通过云系统的一储存云实作。此外,执行档储存池210所存有的候选应用程序执行档,符合各候选虚拟机器的一虚拟机器系统环境,而不需针对各候选虚拟机器的环境参数重新安装。在本发明的一实施例中,执行档储存池210所存有的候选应用程序执行档,可于各候选虚拟机器的虚拟机器系统环境中直接执行。在本发明的另一实施例中,执行档储存池210所存有的候选应用程序执行档,可在即时编译后,于各候选虚拟机器的虚拟机器系统环境中执行。在本发明的又一实施例中,执行档储存池210所存有的候选应用程序执行档可执行于一模拟器上,以于各候选虚拟机器的虚拟机器系统环境中直接执行,而不需重新安装。The execution file storage pool 210 stores several candidate application execution files. The system 200 can also provide a number of candidate virtual machines already initialized. In an embodiment of the present invention, the executable file storage pool 210 may be implemented in a storage component of a server. In another embodiment of the present invention, the executable file storage pool 210 can be implemented by a storage cloud of the cloud system. In addition, the candidate application executable files stored in the executable file storage pool 210 conform to a virtual machine system environment of each candidate virtual machine, without reinstalling according to the environment parameters of each candidate virtual machine. In an embodiment of the present invention, the candidate application executable files stored in the executable file storage pool 210 can be directly executed in the virtual machine system environment of each candidate virtual machine. In another embodiment of the present invention, the candidate application executable files stored in the executable file storage pool 210 can be executed in the virtual machine system environment of each candidate virtual machine after just-in-time compilation. In yet another embodiment of the present invention, the candidate application executable files stored in the executable file storage pool 210 can be executed on an emulator, so that they can be directly executed in the virtual machine system environment of each candidate virtual machine without restarting Install.

在客户端400的使用者欲执行一目标应用程序时,可通过操作客户端400而产生对应的应用程序开启指令。于是,指令接收模块250自客户端400接收一应用程序开启指令,用以开启目标应用程序。在本发明的一实施例中,客户端400的使用者可透过客户端400的一应用程序,而产生及传送应用程序开启指令,供指令接收模块250接收。在本发明的另一实施例中,系统200的一虚拟桌面提供模块240可提供一虚拟桌面至客户端400。于是,客户端400的使用者可经由操作虚拟桌面,而产生及传送应用程序开启指令,供指令接收模块250接收。虚拟桌面提供模块240可与客户端400于同一电子装置上执行。此外,虚拟桌面提供模块240亦可透过一网络,提供虚拟桌面至远端的客户端400。虚拟桌面提供模块240可使用一虚拟桌面介面(Virtual Desktop Interface,VDI),传送虚拟桌面的画面至客户端400以提供虚拟桌面。于是,客户端400的使用者即可操作客户端400上所显示的虚拟桌面。在本发明的又一实施例中,系统200的一网页提供模块可提供一网页至客户端400。于是,客户端400的使用者可经由操作网页,而产生及传送应用程序开启指令,供指令接收模块250接收。When the user of the client 400 intends to execute a target application, the corresponding application start instruction can be generated by operating the client 400 . Therefore, the instruction receiving module 250 receives an application opening instruction from the client 400 to open the target application. In an embodiment of the present invention, the user of the client terminal 400 can generate and send an application program opening command through an application program of the client terminal 400 for the command receiving module 250 to receive. In another embodiment of the present invention, a virtual desktop providing module 240 of the system 200 can provide a virtual desktop to the client 400 . Thus, the user of the client 400 can generate and transmit an application program opening command by operating the virtual desktop for the command receiving module 250 to receive. The virtual desktop providing module 240 and the client 400 can be executed on the same electronic device. In addition, the virtual desktop providing module 240 can also provide the virtual desktop to the remote client 400 through a network. The virtual desktop providing module 240 can use a virtual desktop interface (Virtual Desktop Interface, VDI) to transmit the image of the virtual desktop to the client 400 to provide the virtual desktop. Then, the user of the client 400 can operate the virtual desktop displayed on the client 400 . In yet another embodiment of the present invention, a web page providing module of the system 200 can provide a web page to the client 400 . Therefore, the user of the client terminal 400 can generate and transmit an application program opening instruction by operating the webpage for the instruction receiving module 250 to receive.

机器分配模块260根据应用程序开启指令,分配一可用虚拟机器。其中,系统200还可包含数个候选虚拟机器。其中,每一候选虚拟机器具有对应的资源信息。于是,机器分配模块260可依据各候选虚拟机器对应的资源信息,判断是否足够挂载和执行该目标应用程序执行档来进行分配。进一步来说,每一候选虚拟机器更具有对应的已安装应用程序。于是,机器分配模块260可依据候选虚拟机器具有对应的已安装应用程序是否包含目标应用程序,以及各候选虚拟机器对应的资源信息是否足够执行目标应用程序来进行分配。当候选虚拟机器中,已安装应用程序包含目标应用程序者,皆未有足够资源可执行目标应用程序时,该机器分配模块260从候选虚拟机器具有对应的已安装应用程序却未包含目标应用程序者,依据其对应的资源信息判断是否足够挂载和执行目标应用程序执行档来进行分配。The machine allocation module 260 allocates an available virtual machine according to the application start command. Wherein, the system 200 may further include several candidate virtual machines. Wherein, each candidate virtual machine has corresponding resource information. Therefore, the machine allocation module 260 can determine whether it is enough to mount and execute the target application executable file for allocation according to the resource information corresponding to each candidate virtual machine. Furthermore, each candidate virtual machine further has a corresponding installed application. Therefore, the machine allocation module 260 can perform allocation according to whether the candidate virtual machines have corresponding installed applications including the target application, and whether the resource information corresponding to each candidate virtual machine is sufficient to execute the target application. When among the candidate virtual machines, those whose installed applications include the target application do not have enough resources to execute the target application, the machine allocation module 260 selects from the candidate virtual machines which have corresponding installed applications but do not contain the target application. Or, according to its corresponding resource information, it is judged whether it is enough to mount and execute the target application executable file for distribution.

执行档寻找模块270自执行档储存池210所存有的候选应用程序执行档,寻找对应目标应用程序的目标应用程序执行档。The execution file searching module 270 searches for the target application execution file corresponding to the target application from the candidate application execution files stored in the execution file storage pool 210 .

接下来,挂载模块280挂载目标应用程序执行档至可用虚拟机器。在本发明的一实施例中,挂载模块280可自执行档储存池210,链结或复制目标应用程序执行档至一执行档提供池220的一分享空间,并使可用虚拟机器挂载执行档提供池220的分享空间。于是,挂载模块280通过可用虚拟机器执行已挂载的目标应用程序执行档。执行档储存池210与执行档提供池220可能设置在同一硬体设备中,也可能分别设置在不同的硬体设备中。接下来,系统200可提供可用虚拟机器执行目标应用程序执行档的一执行画面至客户端400,以于客户端400的显示器显示上述执行画面。如此一来,客户端400的使用者透过客户端400欲执行应用程序时,可就现有提供的虚拟机器执行应用程序。此外,应用本发明的一实施例,即使现有的虚拟机器未安装有欲执行的应用程序,仍可自执行档储存池210复制并挂载对应的执行档,使现有的虚拟机器执行原先未安装的应用程序。换言之,上述状况中,不需因为未安装应用程序,另外初始化新的虚拟机器。也就是说,不需安装太多应用程序于虚拟机器,并减少维持各虚拟机器所需的资源,且可节省初始化新的虚拟机器所需的时间。此外,若有多个客户端400欲使用同样的应用程序时,可通过复制并挂载多个对应的执行档,提供多个不同客户端分别使用,避免同一应用程序无法同时被多个客户端使用。Next, the mount module 280 mounts the target application execution file to an available virtual machine. In an embodiment of the present invention, the mounting module 280 can link or copy the target application execution file from the execution file storage pool 210 to a shared space of the execution file providing pool 220, and enable the virtual machine to mount and execute Files provide pool 220 shared space. Then, the mounting module 280 executes the mounted target application execution file through the available virtual machine. The execution file storage pool 210 and the execution file supply pool 220 may be set in the same hardware device, or may be respectively set in different hardware devices. Next, the system 200 can provide an execution screen of the executable file of the target application that can be executed by the virtual machine to the client 400 so as to display the above execution screen on the display of the client 400 . In this way, when the user of the client 400 wants to execute the application through the client 400, the application can be executed on the existing virtual machine. In addition, applying an embodiment of the present invention, even if the existing virtual machine is not installed with the application program to be executed, the corresponding execution file can still be copied and mounted from the execution file storage pool 210, so that the existing virtual machine executes the original App not installed. In other words, in the above situation, there is no need to additionally initialize a new virtual machine because the application program is not installed. That is to say, there is no need to install too many applications on the virtual machine, and the resources required to maintain each virtual machine are reduced, and the time required for initializing a new virtual machine can be saved. In addition, if multiple clients 400 want to use the same application program, multiple corresponding execution files can be copied and mounted to provide multiple different clients to use separately, so as to avoid that the same application program cannot be used by multiple clients at the same time. use.

请参照图3,其绘示依照本发明另一实施方式的一种于虚拟机器提供应用程序的系统的功能方块图。应了解到,在以下叙述中,已经在上述实施方式中叙述过的内容将不再重复赘述,仅就与更新相关的技术内容加以补充。Please refer to FIG. 3 , which is a functional block diagram of a system for providing application programs on virtual machines according to another embodiment of the present invention. It should be understood that, in the following description, the content described in the above implementation manner will not be repeated, and only the technical content related to the update will be supplemented.

于虚拟机器提供应用程序的系统200可根据执行应用程序所需资源信息,选择适合的虚拟机器执行。因此,于虚拟机器提供应用程序的系统200还可包含一信息查询模块290,用以根据应用程序开启指令,查询目标应用程序的一所需资源信息,例如所需的运算资源、所需的存储器空间、所需的指令集或所需的其他类型资源的信息。于是,机器分配模块260可自系统200所提供的候选虚拟机器中,选择符合所需资源信息者作为可用虚拟机器。此外,于虚拟机器提供应用程序的系统200还可包含一资源监控模块300,用以监控各候选虚拟机器的一剩余资源,如剩余运算资源、剩余存储器空间、或其他剩余资源的信息。于是,机器分配模块260可选择候选虚拟机器中,其剩余资源符合所需资源信息者,作为可用虚拟机器。The system 200 for providing application programs on virtual machines can select a suitable virtual machine for execution according to resource information required for executing the application programs. Therefore, the system 200 for providing application programs on virtual machines may also include an information query module 290, which is used to query resource information required by the target application program, such as required computing resources and required memory, according to the application program start command. information about the space, required instruction sets, or other types of resources required. Therefore, the machine allocation module 260 can select a virtual machine that meets the required resource information from the candidate virtual machines provided by the system 200 as an available virtual machine. In addition, the system 200 for providing application programs on virtual machines may further include a resource monitoring module 300 for monitoring a remaining resource of each candidate virtual machine, such as remaining computing resources, remaining memory space, or other remaining resource information. Therefore, the machine allocation module 260 may select a candidate virtual machine whose remaining resources meet the required resource information as an available virtual machine.

此外,挂载模块280可预先挂载数个预设应用程序执行档至可用虚拟机器。于是,在挂载目标应用程序执行档至可用虚拟机器前,挂载模块280的一判断器280a可判断已预先挂载于可用虚拟机器的预设应用程序执行档,是否包含目标应用程序执行档。在已预先挂载的预设应用程序执行档不包含目标应用程序执行档时,挂载模块280挂载目标应用程序执行档至可用虚拟机器。在已预先挂载的预设应用程序执行档包含目标应用程序执行档时,挂载模块280不额外挂载目标应用程序执行档至可用虚拟机器。如此一来,可通过预先挂载部分常用程序的执行档,进一步节省挂载所需的时间。In addition, the mounting module 280 can pre-mount several preset application execution files to available virtual machines. Therefore, before mounting the executable file of the target application program to the available virtual machine, a determiner 280a of the mounting module 280 can determine whether the executable file of the preset application program that has been pre-mounted on the available virtual machine contains the executable file of the target application program . When the pre-mounted default application execution file does not contain the target application execution file, the mounting module 280 mounts the target application execution file to an available virtual machine. When the pre-mounted default application execution file includes the target application execution file, the mounting module 280 does not additionally mount the target application execution file to the available virtual machine. In this way, the time required for mounting can be further saved by pre-mounting the execution files of some commonly used programs.

于虚拟机器提供应用程序的方法可经由于虚拟机器提供应用程序的系统来进行实作,于虚拟机器提供应用程序的系统中各模块可应用具特定逻辑电路的独特硬件装置来实作,如将该计算机程序和一个以上的处理器或芯片整合成独特硬件。更进一步者,数据同步方法亦可经由一般用途处理器/计算机/服务器与其它硬件来进行实作,使一般用途处理器/计算机/服务器读取储存此计算机程序的记录媒体后执行于虚拟机器提供应用程序的方法。当计算机程序被一般用途处理器/计算机载入且执行时,此一般用途处理器/计算机成用以参与本发明的系统,此一般用途处理器/计算机类似于应用具特定逻辑电路的独特硬件装置,执行本发明方法的操作步骤。The method of providing an application program on a virtual machine can be implemented through a system providing an application program on a virtual machine, and each module in the system providing an application program on a virtual machine can be implemented using a unique hardware device with a specific logic circuit, such as the The computer program and more than one processor or chip are integrated into unique hardware. Furthermore, the data synchronization method can also be implemented through a general-purpose processor/computer/server and other hardware, so that the general-purpose processor/computer/server reads the recording medium storing the computer program and executes it on a virtual machine. method of the application. When the computer program is loaded and executed by a general-purpose processor/computer, the general-purpose processor/computer is used to participate in the system of the present invention, and the general-purpose processor/computer is similar to a unique hardware device with specific logic circuits. , to execute the operation steps of the method of the present invention.

虽然本发明已以实施方式揭露如上,然其并非用以限定本发明,任何熟悉此技艺者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰,因此本发明的保护范围当视所附的权利要求书所界定的范围为准。Although the present invention has been disclosed above in terms of implementation, it is not intended to limit the present invention. Any skilled person can make various changes and modifications without departing from the spirit and scope of the present invention. Therefore, the present invention The scope of protection should be based on the scope defined by the appended claims.

Claims (18)

1. the method that application program is provided in virtual machine, is characterized in that, comprises:
(a) from client one an application program open command, in order to open a destination application;
(b) according to this application program open command, distribute an available virtual machine;
(c) carry out from one a plurality of candidate's application programs that the shelves storage pool has and carry out shelves, seek a destination application that should destination application is carried out shelves;
(d) this destination application of carry is carried out shelves to this available virtual machine; And
(e) carry out these destination application execution shelves of carry by this available virtual machine.
2. the method that application program is provided in virtual machine according to claim 1, it is characterized in that, the step of this application program open command is that an application program via this client produces and transmits this application program open command, provides a virtual desktop to produce and transmit this application program open command and provide a webpage to produce and transmit wherein arbitrary of this application program open command three to this client and via this webpage to this client and via this virtual desktop.
3. the method that application program is provided in virtual machine according to claim 1, is characterized in that, also comprises:
A plurality of candidate virtual machine devices are provided, and wherein each those candidate virtual machine utensil has corresponding resource information; And wherein, the step (b) that this distributes the available virtual machine is judge whether enough carries and carry out these destination application execution shelves and distribute according to resource information corresponding to those candidate virtual machine devices.
4. the method that application program is provided in virtual machine according to claim 3 is characterized in that:
Each those candidate virtual machine device also comprises having corresponding set up applications;
Step (b) is to have corresponding set up applications whether to comprise this destination application and resource information corresponding to those candidate virtual machine devices according to those candidate virtual machine utensils whether enough to carry out this destination application and distribute; And
In those candidate virtual machine devices, set up applications comprises this destination application person, when all not having enough resources can carry out this destination application, there is corresponding set up applications not comprise this destination application person from those candidate virtual machine utensils, judges whether enough carries and carry out these destination application execution shelves and distribute according to its corresponding resource information.
5. the method that application program is provided in virtual machine according to claim 3, is characterized in that, those candidate's application programs that this execution shelves storage pool has are carried out the virtual machine system environments that shelves meet each those candidate virtual machine device.
6. the method that application program is provided in virtual machine according to claim 1, is characterized in that, also comprises:
In a display of this client, show that this available virtual machine carries out this destination application and carry out one of shelves and carry out picture.
7. the method that application program is provided in virtual machine according to claim 1, is characterized in that, step (b) comprises:
According to this application program open command, inquire about a resource requirement information of this destination application; And
From a plurality of candidate virtual machine device selectors should resource requirement information person, as this available virtual machine.
8. the method that application program is provided in virtual machine according to claim 7, is characterized in that, also comprises:
Monitor a surplus resources of each those candidate virtual machine device;
Wherein from those candidate virtual machine device selectors should resource requirement information person, comprise as the step of this available virtual machine:
Select in those candidate virtual machine devices, its surplus resources meets this resource requirement information person, as this available virtual machine.
9. the method that application program is provided in virtual machine according to claim 1, is characterized in that, step (d) comprises:
Chain or copy this destination application from this execution shelves storage pool and carry out shelves to a Shared space; And
This destination application in this Shared space of carry is carried out shelves.
10. the method that application program is provided in virtual machine according to claim 1 is characterized in that:
The front a plurality of default application programs of carry that also comprise of step (a) are carried out shelves to this available virtual machine;
(d) is front in step, judges whether those default application programs execution shelves comprise this destination application and carry out shelves;
When those default application programs execution shelves do not comprise these destination application execution shelves, execution in step (d); And
When those default application programs are carried out shelves and are comprised this destination application and carry out shelves, execution in step (d) not.
11. the system that application program is provided in virtual machine is characterized in that, comprises:
One carries out the shelves storage pool, stores a plurality of candidate's application programs and carries out shelves;
One command reception module is from client one an application program open command, in order to open a destination application;
One machine assignment module according to this application program open command, is distributed an available virtual machine; And
One carries out shelves seeks a module, and those candidate's application programs that certainly should executions shelves storage pool have are carried out shelves, seeks a destination application execution that should destination application grade; And
One carry module, this destination application of carry is carried out shelves to this available virtual machine, carries out these destination application execution shelves of carry for this available virtual machine.
12. the system that application program is provided in virtual machine according to claim 11, it is characterized in that, this application program open command is that the application program via this client produces and transmits this application program open command, provides a virtual desktop to produce and transmit this application program open command and provide a webpage to produce and transmit wherein arbitrary of this application program open command three to this client and via this webpage to this client and via this virtual desktop.
13. the system that application program is provided in virtual machine according to claim 11 is characterized in that, also comprises:
A plurality of candidate virtual machine devices, wherein each those candidate virtual machine utensil has corresponding resource information; And
Wherein this machine assignment module is judge whether enough carries and carry out these destination application execution shelves and distribute according to resource information corresponding to those candidate virtual machine devices.
14. the system that application program is provided in virtual machine according to claim 13 is characterized in that:
Each those candidate virtual machine device also comprises having corresponding set up applications;
This machine assignment module is to have corresponding set up applications whether to comprise this destination application and resource information corresponding to those candidate virtual machine devices according to those candidate virtual machine utensils whether enough to carry out this destination application and distribute; And
In those candidate virtual machine devices, set up applications comprises this destination application person, when all not having enough resources can carry out this destination application, this machine assignment module has corresponding set up applications not comprise this destination application person from those candidate virtual machine utensils, judges whether enough carries and carries out these destination application execution shelves and distribute according to its corresponding resource information.
15. the system that application program is provided in virtual machine according to claim 11, it is characterized in that, this carry module provides this available virtual machine to carry out one of these destination application execution shelves and carries out picture to this client, with in a display of this client, shows this execution picture.
16. the system that application program is provided in virtual machine according to claim 11 is characterized in that, also comprises:
One information inquiry module according to this application program open command, is inquired about a resource requirement information of this destination application; And
Wherein this machine assignment module from those candidate virtual machine device selectors should resource requirement information person, as this available virtual machine.
17. the system that application program is provided in virtual machine according to claim 16 is characterized in that, also comprises:
One monitoring resource module is monitored a surplus resources of each those candidate virtual machine device; And
Wherein this machine assignment module is selected in those candidate virtual machine devices, and its surplus resources meets this resource requirement information person, as this available virtual machine.
18. the system that application program is provided in virtual machine according to claim 11, it is characterized in that, this carry module also comprises a plurality of default application programs of carry and carries out shelves to this available virtual machine, carry out shelves to this available virtual machine at this destination application of carry, judge whether those default application programs execution shelves comprise this destination application and carry out shelves, when those default application programs were carried out shelves and do not comprised this destination application and carry out shelves, this destination application of this carry module carry was carried out shelves to this available virtual machine.
CN2011103787922A 2011-11-21 2011-11-21 Method and system of providing application program for virtual machine Pending CN103136000A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011103787922A CN103136000A (en) 2011-11-21 2011-11-21 Method and system of providing application program for virtual machine

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011103787922A CN103136000A (en) 2011-11-21 2011-11-21 Method and system of providing application program for virtual machine

Publications (1)

Publication Number Publication Date
CN103136000A true CN103136000A (en) 2013-06-05

Family

ID=48495871

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011103787922A Pending CN103136000A (en) 2011-11-21 2011-11-21 Method and system of providing application program for virtual machine

Country Status (1)

Country Link
CN (1) CN103136000A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105589747A (en) * 2016-02-25 2016-05-18 深圳市创想天空科技股份有限公司 Method and system for controlling multi-running of application programs
CN106933634A (en) * 2017-03-09 2017-07-07 北京奇虎科技有限公司 The installation method of Android application, device and electronic equipment
CN113806007A (en) * 2020-06-15 2021-12-17 中兴通讯股份有限公司 Disk mounting method, disk mounting device, storage medium, and electronic device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080301770A1 (en) * 2007-05-31 2008-12-04 Kinder Nathan G Identity based virtual machine selector
CN101512488A (en) * 2006-08-07 2009-08-19 Bea系统公司 System and method for providing hardware virtualization in a virtual machine environment
WO2011127860A2 (en) * 2011-05-18 2011-10-20 华为技术有限公司 Method, server and system for starting application

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101512488A (en) * 2006-08-07 2009-08-19 Bea系统公司 System and method for providing hardware virtualization in a virtual machine environment
US20080301770A1 (en) * 2007-05-31 2008-12-04 Kinder Nathan G Identity based virtual machine selector
WO2011127860A2 (en) * 2011-05-18 2011-10-20 华为技术有限公司 Method, server and system for starting application

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105589747A (en) * 2016-02-25 2016-05-18 深圳市创想天空科技股份有限公司 Method and system for controlling multi-running of application programs
CN105589747B (en) * 2016-02-25 2018-10-23 深圳市创想天空科技股份有限公司 The control method and system that application program is opened more
CN106933634A (en) * 2017-03-09 2017-07-07 北京奇虎科技有限公司 The installation method of Android application, device and electronic equipment
CN113806007A (en) * 2020-06-15 2021-12-17 中兴通讯股份有限公司 Disk mounting method, disk mounting device, storage medium, and electronic device
WO2021254280A1 (en) * 2020-06-15 2021-12-23 中兴通讯股份有限公司 Disk mounting method and device, storage medium, and electronic device

Similar Documents

Publication Publication Date Title
TWI478063B (en) System and method for providing an application on a virtual machine and computer readable recording medium for storing the same
CN107580083B (en) Method and system for allocating IP addresses of containers
US10333975B2 (en) Enhanced computing system security using a secure browser
US10341251B2 (en) Method and system for securely transmitting volumes into cloud
EP2344953B1 (en) Provisioning virtual resources using name resolution
US9851996B2 (en) Applying firmware updates in a system with zero downtime by selectively offlining and onlining hardware using a scale-up hypervisor layer
US20210406388A1 (en) Accessing file systems in a virtual environment
US20140214922A1 (en) Method of providing virtual machine and service gateway for real-time virtual desktop service
CN113196237A (en) Container migration in a computing system
CN113590146B (en) Server and container upgrading method
CN103108016B (en) Cloud system for opening documents on virtual desktop and method for opening documents on virtual desktop
US10320892B2 (en) Rolling capacity upgrade control
US11392395B2 (en) Generating and presenting contextual user interfaces on devices with foldable displays
CN104506635A (en) Fast and efficient cloud mainframe creating and matching method and system
US10404568B2 (en) Agent manager for distributed transaction monitoring system
CN111989903A (en) Data caching for cloud services
KR20110083084A (en) Server operating device and method using virtualization
US9058239B2 (en) Hypervisor subpartition as concurrent upgrade
CN110162397B (en) Resource allocation method, device and system
US20140082275A1 (en) Server, host and method for reading base image through storage area network
EP3213198B1 (en) Monitoring a mobile device application
CN110908675B (en) Method and device for acquiring running environment and electronic equipment
CN103136000A (en) Method and system of providing application program for virtual machine
CN111858035A (en) A kind of FPGA device allocation method, device, device and storage medium
US8442939B2 (en) File sharing method, computer system, and job scheduler

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130605