CN101650668A - 虚拟环境的实现方法及装置 - Google Patents
虚拟环境的实现方法及装置 Download PDFInfo
- Publication number
- CN101650668A CN101650668A CN200810133363A CN200810133363A CN101650668A CN 101650668 A CN101650668 A CN 101650668A CN 200810133363 A CN200810133363 A CN 200810133363A CN 200810133363 A CN200810133363 A CN 200810133363A CN 101650668 A CN101650668 A CN 101650668A
- Authority
- CN
- China
- Prior art keywords
- file
- application program
- operational order
- dynamic link
- positional information
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45537—Provision of facilities of other operating environments, e.g. WINE
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/545—Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/542—Intercept
Abstract
本发明实施例涉及一种虚拟环境的实现方法及装置,其中该方法包括:获取应用程序执行所需调用第一动态链接库文件而发出的操作指令,所述操作指令中携带有目标文件位置信息;在所述操作指令执行之前,插入修改所述目标文件位置信息所需调用第二动态链接库文件而发出的目标文件位置信息修改指令,生成虚拟操作指令;执行所述虚拟操作指令,顺序调用所述第二动态连接库文件和所述第一动态链接库文件。在使用者模式下实现了应用程序、系统配置信息及私人文档的可携带性,在不对应用程序和操作系统进行修改的前提下,保证了应用程序及系统配置信息与操作系统的兼容性和操作系统的稳定性,提高了虚拟操作系统运行的效率。
Description
技术领域
本发明涉及计算机技术领域,特别是一种虚拟环境(VirtualEnvironment,简称VE)的实现方法及装置。
背景技术
操作系统(Operating System,简称OS)是控制其他程序运行,管理系统资源并为用户提供操作界面的系统软件的集合。操作系统可以保存用户的个性化系统配置信息、应用程序(Application)以及私人文档。用户为了在自己熟悉的操作环境中,使用应用程序,编辑私人文档,常常需要随身携带自己的笔记本电脑,即使是笔记本电脑,其自身的重量和体积也成为用户日常出行的一大负担。随着技术的不断进步,操作环境的虚拟成为可能,用户能够将部分系统配置、应用程序和私人文档存储到移动存储设备中,只要将携带移动存储设备与学校、网吧、公司或其他地方的计算机连接,即可实现操作环境的重现。
图1为现有技术中虚拟操作系统实现的结构示意图。如图1所示,现有技术中的虚拟操作系统(Virtual Operating System,简称VOS)主要通过轻量级虚拟机(Lightweight Virtual Machine)软件将计算机操作系统屏蔽,使应用程序在运行中不与操作系统直接接触。但由于每台计算机的设定与配置都不尽相同,导致移动存储设备携带的应用程序不能正确地在每台计算机的操作系统中运行,并且操作系统不能正确调取移动存储设备携带的系统配置信息对自身进行配置。为解决在虚拟操作系统中操作系统与携带的应用程序与系统配置信息的兼容问题,现有的做法有两种:
一是修改应用程序。即要求应用程序的厂商改写应用程序中与操作系统或硬件相关联的程序段,使应用程序在运行时完全脱离操作系统,而只依赖于虚拟操作系统。此种做法的缺点在于:大多数应用程序厂商不愿意配合虚拟操作系统厂商对应用程序进行修改,只有极少数应用程序能够与虚拟操作系统兼容,人们常用的应用程序例如:Office、Photoshop等软件都无法在虚拟操作系统下运行。
二是修改操作系统。即按照虚拟操作系统运行的要求,对操作系统进行修改,以达到应用程序与系统配置信息的可携带性。此种做法的缺点在于:在操作系统的使用者模式(User Mode)下无法进行,需要进入核心模式(Kernel Mode)才能完成修改,但修改了操作系统的核心,可能导致操作系统的不稳定,另外,轻量级虚拟机并不能进入操作系统的核心模式对操作系统进行修改,因此这种做法并不可行。
发明内容
本发明实施例提供一种虚拟环境的实现方法及装置,用以实现应用程序、系统配置信息及私人文档在使用者模式下的可携带性,在不对应用程序和操作系统进行修改的前提下,保证应用程序及系统配置信息与操作系统的兼容性,提高操作系统的稳定性。
本发明实施例提供了一种虚拟环境的实现方法,包括:
获取应用程序执行所需调用第一动态链接库(Dynamic Link Library,简称DLL)文件而发出的操作指令,所述操作指令中携带有目标文件位置信息;
在所述操作指令执行之前,插入修改所述目标文件位置信息所需调用第二动态链接库文件而发出的目标文件位置信息修改指令,生成虚拟操作指令;
执行所述虚拟操作指令,顺序调用所述第二动态连接库文件和所述第一动态链接库文件。
本发明实施例提供了一种虚拟环境的实现装置,包括:
获取模块,用于获取应用程序执行所需调用第一动态链接库文件而发出的操作指令,所述操作指令中携带有目标文件位置信息;
插值模块,用于在所述操作指令之前插入修改所述目标文件位置信息所需调用第二动态链接库文件而发出的目标文件位置信息修改指令,生成虚拟操作指令;
执行模块,用于执行所述虚拟操作指令,顺序调用所述第二动态连接库文件和所述第一动态链接库文件。
由上述技术方案可知,本发明实施例通过将虚拟操作系统存储于使用者模式内存空间中,并在操作指令之前插入目标文件位置信息修改指令,使应用程序的操作跳转执行目标文件位置信息修改指令,将目标文件位置信息指向修改为虚拟操作系统中的目标文件,在此之后继续执行操作指令。在使用者模式下实现了应用程序、系统配置信息及私人文档的可携带性,在不对应用程序和操作系统进行修改的前提下,保证了应用程序及系统配置信息与操作系统的兼容性和操作系统的稳定性,提高了虚拟操作系统的运行效率。
下面结合附图对本发明的具体实施例作进一步详细的说明。
附图说明
图1为现有技术中虚拟操作系统实现的结构示意图;
图2为本发明虚拟环境的实现方法的第一实施例的流程图;
图3为本发明虚拟环境的实现方法的第二实施例的流程图;
图4为本发明虚拟环境的实现装置的实施例的结构示意图。
具体实施方式
本发明实施例通过将虚拟操作系统存储于使用者模式内存空间中,并在操作指令之前插入目标文件位置信息修改指令,对目标文件位置信息进行修改,使其指向虚拟操作系统中的目标文件,之后继续执行操作指令,在使用者模式下实现了应用程序、系统配置信息及私人文档的可携带性,在不对应用程序和操作系统进行修改的前提下,保证了应用程序及系统配置信息与操作系统的兼容性和操作系统的稳定性,提高了虚拟操作系统运行的效率。
本发明实施例一种虚拟环境的实现方法包括:
获取应用程序执行所需调用第一动态链接库文件而发出的操作指令,所述操作指令中携带有目标文件位置信息;
在所述操作指令执行之前,插入修改所述目标文件位置信息所需调用第二动态链接库文件而发出的目标文件位置信息修改指令,生成虚拟操作指令;
执行所述虚拟操作指令,顺序调用所述第二动态连接库文件和所述第一动态链接库文件。
图2为本发明虚拟环境的实现方法的第一实施例的流程示意图。如图2所示,本实施例可以包括以下步骤:
步骤101、运行虚拟环境服务器;
其中,虚拟环境服务器能够对虚拟环境进行管理,主要是在每一个应用程序运行时,向该应用程序挂钩一个虚拟操作系统。虚拟环境服务器存储在移动存储设备或是存储在网络侧服务器等各种非本机存储程序代码的介质中;
当存储有虚拟环境服务器的存储介质与操作系统连接后,虚拟环境服务器能够自动运行,向操作系统中的每一个应用程序挂钩一个虚拟操作系统。
步骤102、建立桌面(Desktop);
虚拟环境服务器运行后,操作系统中的每个桌面都会建立一个自己的桌面,该桌面为一个空的画面。
步骤103、在桌面内建立操作系统壳层(OS Shell);
操作系统中的资源管理器在新建立的桌面内建立一个操作系统壳层,虚拟环境服务器会向该操作系统壳层挂钩一个虚拟操作系统;
其中,虚拟操作系统是一种用于模拟操作系统的程序,在应用程序运行时,虚拟环境服务器能够将该虚拟操作系统挂钩到应用程序中,即将虚拟操作系统存储到应用程序的使用者模式内存空间中。应用程序与虚拟操作系统一一对应。
步骤104、获取应用程序发出的操作指令;
其中,应用程序可以为在操作系统中进行安装的软件,也可以为存储在移动存储设备中的软件。操作指令可以为操作系统中的应用程序接口(Application Programming Interface,简称API);
进一步地,API可以包含应用程序所需要查看或编辑的目标文件位置信息,该目标文件位置信息指向目标文件,也就是虚拟环境中所能看到的目标文件的虚拟位置;
在虚拟环境下调用的目标文件格式可以是可执行文件、音频文件、视频文件、文档文件等等,例如以“.exe”、“.doc”、“.wma”、“.mp4”等格式的所有形式的文档。该文件要实现在虚拟环境下进行编辑,必须在虚拟环境下携带相应的应用程序,例如:Office软件、媒体播放器等应用程序。目标文件可以是存储在计算机可读取存储介质中(包括:硬盘)中的文件,也可是存储在移动存储设备中的文件。在虚拟环境下运行应用程序所使用的API中包含的目标文件的虚拟位置可以指向计算机可读取存储介质(包括:硬盘),也可是指向移动存储设备;
进一步地,目标文件可以存储在操作系统中,也可以存储在移动存储设备或是网络侧服务器中等各种存储介质中;
例如:在操作系统中建立了桌面,并在桌面内建立了操作系统壳层后,应用程序通过API来调用系统中DLL文件,该API中包含有应用程序所要查看或编辑的目标文件位置信息,该目标文件位置信息指向目标文件的虚拟位置,即用户在虚拟环境的界面中所看到的目标文件的位置,目标文件可以存储在计算机可读取存储介质(包括:硬盘)中,也可以存储在移动存储设备。在应用程序发出API后,虚拟操作系统在API进入DLL入口处的瞬间,获取API。
步骤105、在操作指令之前插入目标文件位置信息修改指令,生成虚拟操作指令;
在虚拟环境中,应用程序执行时都会挂钩上一个虚拟操作系统,该虚拟操作系统会在应用程序发出的操作指令之前插入目标文件位置信息修改指令,生成虚拟操作指令。其中目标文件位置信息修改指令调用第二DLL文件对目标文件位置信息进行修改,操作指令调用第一DLL文件完成应用程序对虚拟位置中的目标文件的查看或编辑;
其中,第二DLL文件为一个或多个DLL文件,用于对操作指令中所需查看或编辑的目标文件的虚拟位置进行修改,例如:在虚拟的操作环境中,用户需要打开操作系统中C:盘下的名为Image的图片文件,但该名为Image的图片文件实际上存储在移动存储设备中,该移动存储设备的盘符为U:盘。那么用户在虚拟环境中双击C:盘下名为Image的图片文件,查看图片的应用程序例如:ACDsee软件通过API来调用相应的DLL文件,实现对名为Image的图片文件的打开操作,此时API中的Image图片文件的目标文件位置信息为C:\Image。在API调用DLL文件之前,虚拟操作系统在API操作指令之前插入了目标文件位置信息修改指令,该目标文件位置信息修改指令调用第一DLL文件对Image图片文件的目标文件位置信息进行修改,使API中的Image图片文件的目标文件位置信息修改为U:\Image;
在执行插入目标文件位置信息修改指令之后,虚拟操作系统能够接续完成操作指令的执行;
进一步地,虚拟操作系统在使用者模式的内存空间中顺序排列目标文件位置信息修改指令和应用程序的操作指令,生成相应的虚拟操作指令。
步骤106、执行虚拟操作指令;
虚拟操作系统在应用程序发出的操作指令之前插入一个目标文件位置信息修改指令,生成虚拟操作指令;
其中,目标文件位置信息修改指令调用第二DLL文件对目标文件位置信息进行修改,操作指令调用第一DLL文件完成应用程序对虚拟位置中的目标文件的查看或编辑;
因此,执行虚拟操作指令即为顺序调用第二DLL文件和第一DLL文件;
例如:执行虚拟操作指令时,虚拟操作系统通过目标文件位置信息修改指令将操作指令中携带的目标文件位置信息进行修改,即把上一步骤所记载的Image图片文件的存储路径从C:\Image修改为U:\Image,之后继续执行操作指令,经过两个指令的操作,应用程序从U:\image的路径下将Image图片打开,并可以实现对目标文件的查看或编辑;
进一步地,虚拟操作系统在操作指令之前插入目标文件位置信息修改指令可以是在操作指令之前插入一个或多个DLL文件对目标文件位置信息进行修改,使应用程序能够很好地与操作系统兼容。
步骤107、切换到新桌面。
在本实施例中通过将虚拟操作系统存储于使用者模式内存空间中,并在操作指令之前插入目标文件位置信息修改指令,使应用程序的操作跳转执行目标文件位置信息修改指令,将目标文件位置信息指向修改为虚拟环境中的目标文件,在此之后继续执行操作指令。在使用者模式下实现了应用程序、系统配置信息及私人文档的可携带性,在不对应用程序和操作系统进行修改的前提下,保证了应用程序及系统配置信息与操作系统的兼容性和操作系统的稳定性,提高了虚拟操作系统运行的效率。
进一步,本发明实施例中的虚拟环境的实现方法,当虚拟环境中应用程序进行任何操作,都会重复本实施例中的所有步骤,以方便虚拟操作系统对应用程序发出的操作指令的修改,使应用程序能够与操作系统实现全面的兼容。
进一步地,本实施例中,在执行完步骤103之后,虚拟环境可以根据用户的需要直接跳转执行步骤106。
图3为本发明虚拟环境的实现方法的第二实施例的流程示意图。如图3所示,本发明实施例可以包括以下步骤:
步骤201、运行虚拟环境服务器;
其中,虚拟环境服务器能够对虚拟环境进行管理,主要是在每一个应用程序运行时,向该应用程序挂钩一个虚拟操作系统。虚拟环境服务器可以存储在计算机可读取存储介质中(包括:硬盘),也可以存储在移动存储设备或是存储在网络侧服务器等各种非本机存储程序代码的介质中;
当存储有虚拟环境服务器的存储介质与操作系统连接后,虚拟环境服务器能够自动运行,负责将操作系统中的每一个应用程序挂钩一个虚拟操作系统。
步骤202、建立桌面;
虚拟环境服务器运行后,操作系统中的每个桌面都会建立一个自己的桌面,该桌面为一个空的画面。
步骤203、在桌面内建立操作系统壳层;
操作系统中的资源管理器在新建立的桌面内建立一个操作系统壳层,虚拟环境服务器会向该操作系统壳层挂钩一个虚拟操作系统;
其中,虚拟操作系统是一种用于模拟操作系统的程序,在应用程序运行时,虚拟环境服务器能够将该虚拟操作系统挂钩到应用程序中,即将虚拟操作系统存储到应用程序的使用者模式内存空间中。应用程序与虚拟操作系统一一对应。
步骤204、获取应用程序发出的操作指令;
其中,应用程序可以为在操作系统中进行安装的软件,也可以为存储在移动存储设备中的软件。操作指令可以为操作系统中的API;
进一步地,API可以包含应用程序需要将目标文件保存到的目标文件位置信息,该目标文件位置信息指向目标文件所要保存到的虚拟位置,该目的地址信息可以是虚拟环境中所能看到的保存目标文件的虚拟位置;
进一步地,DLL文件能够提供多个应用程序共享其中的代码和数据。该DLL文件能够在挂钩程序过滤系统消息时执行调用,并支持不同配置环境的操作系统;
在虚拟环境下保存的目标文件格式可以是可执行文件、音频文件、视频文件、文档文件等等,例如以“.exe”、“.doc”、“.wma”、“.mp4”等格式的所有形式的文档。该文件可以在虚拟环境下进行保存。目标文件可以是存储在计算机可读取存储介质中(包括:硬盘)中的文件,也可是存储在移动存储设备中的文件。在虚拟环境下运行应用程序所使用的API中包含的目标文件的虚拟位置可以指向计算机可读取存储介质(包括:硬盘),也可是指向移动存储设备;
进一步地,目标文件可以存储在操作系统中,也可以存储在移动存储设备或是网络侧服务器中等各种存储介质中;
例如:在操作系统中建立了桌面,并在桌面内建立了操作系统壳层后,应用程序通过API来调用系统中DLL文件,该API中包含有应用程序所要保存的目标文件位置信息,该目标文件位置信息指向目标文件所要保存到的虚拟位置,即用户在虚拟环境的界面中所看到的保存目标文件的位置,目标文件可以存储在计算机可读取存储介质(包括:硬盘)中,也可以存储在移动存储设备或是网络侧服务器中等各种存储介质中。在应用程序发出API后,虚拟操作系统在API进入DLL入口处的瞬间,获取API。
步骤205、在操作指令之前插入目标文件位置信息修改指令,生成虚拟操作指令;
在虚拟环境中,应用程序执行时都会挂钩上一个虚拟操作系统,该虚拟操作系统会在应用程序发出的操作指令之前插入目标文件位置信息修改指令,生成虚拟操作指令。其中目标文件位置信息修改指令调用第二DLL文件对目标文件位置信息进行修改,操作指令调用第一DLL文件完成应用程序对虚拟位置中的目标文件的保存;
其中,第二DLL文件为一个或多个DLL文件,用于对操作指令中目标文件所需保存到的虚拟位置进行修改,例如:在虚拟的操作环境中,用户需要将名为Image的图片文件保存到虚拟环境中C:盘下的,应用程序通过API来调用相应的DLL文件,实现对名为Image的图片文件的保存操作,此时API中的Image图片文件的目的保存路径为C:\Image。在API调用DLL文件之前,虚拟操作系统在API操作指令之前插入了目标文件位置信息修改指令,该目标文件位置信息修改指令调用第一DLL文件对Image图片文件的目的保存路径进行修改,使API中的Image图片文件目的保存路径修改为U:\Image;
在执行插入目标文件位置信息修改指令之后,虚拟操作系统能够接续完成操作指令的执行;
进一步地,虚拟操作系统在使用者模式的内存空间中顺序排列目标文件位置信息修改指令和应用程序的操作指令,生成相应的虚拟操作指令。
步骤206、执行虚拟操作指令;
虚拟操作系统在应用程序发出的操作指令之前插入一个目标文件位置信息修改指令,生成虚拟操作指令;
其中,目标文件位置信息修改指令调用第二DLL文件对目标文件位置信息进行修改,操作指令调用第一DLL文件完成应用程序对虚拟位置中的目标文件的保存;
因此,执行操作指令即为顺序调用第二DLL文件和第一DLL文件;
例如:执行虚拟操作指令时,虚拟操作系统通过目标文件位置信息修改指令将操作指令中携带的目标文件位置信息进行修改,即把上一步骤所记载的Image图片文件的目的保存路径从C:\Image修改为U:\Image,之后继续执行操作指令,经过两个指令的操作,应用程序将Image图片保存到U:\image;
进一步地,虚拟操作系统在操作指令之前插入目标文件位置信息修改指令可以是在操作指令之前插入一个或多个DLL文件对目标文件位置信息进行修改,使应用程序能够很好地与操作系统兼容。
步骤207、切换到新桌面。
在本实施例中通过将虚拟操作系统存储于使用者模式内存空间中,并在操作指令之前插入目标文件位置信息修改指令,使应用程序的操作跳转执行目标文件位置信息修改指令,将目标文件位置信息指向修改为虚拟环境中的目标文件,在此之后继续执行操作指令。在使用者模式下实现了应用程序、系统配置信息及私人文档的可携带性,在不对应用程序和操作系统进行修改的前提下,保证了应用程序及系统配置信息与操作系统的兼容性和操作系统的稳定性,提高了虚拟操作系统运行的效率。
进一步地,本发明实施例中的虚拟环境的实现方法,当虚拟环境中应用程序进行任何操作,都会重复本实施例中的所有步骤,以方便虚拟操作系统对应用程序发出的操作指令的修改,使应用程序能够与操作系统实现全面的兼容。
进一步地,本实施例中,在执行完步骤203之后,虚拟环境可以根据用户的需要直接跳转执行步骤206。
图4为本发明虚拟环境的实现装置的实施例的结构示意图。如图4所示,本发明实施例可以包括顺序相连的获取模块10、插值模块20及执行模块30。其中获取模块10用于获取应用程序执行所需调用第一DLL文件而发出的操作指令,该操作指令中携带有目标文件位置信息;插值模块20用于在操作指令之前插入修改目标文件位置信息所需调用第二DLL文件而发出的目标文件位置信息修改指令,生成虚拟操作指令;执行模块30用于执行虚拟操作指令,顺序调用第二动态连接库文件和第一DLL文件。
本实施例可以执行本发明虚拟环境的实现方法的第一实施例和第二实施例的流程。
其中,应用程序可以为在操作系统中进行安装的软件,也可以为存储在移动存储设备中的软件。操作指令可以为操作系统中的API;目标文件可以存储在操作系统中,也可以存储在移动存储设备或是网络侧服务器中等各种存储介质中;不论在虚拟环境中目标文件的虚拟位置是否指向目标文件实际存储的路径,虚拟操作都会在操作指令之前插入目标文件位置信息修改指令,对目标文件位置信息进行修改。
在虚拟环境中,应用程序执行时都会挂钩上一个虚拟操作系统,获取模块在应用程序发出操作指令之后,获取该操作指令;插值模块将目标文件位置信息修改指令插入到操作指令之前,并生成虚拟操作指令;执行模块顺序调用第二DLL文件对目标位置信息进行修改和调用第一DLL文件完成应用程序对虚拟位置中的目标文件的查看或编辑;
进一步地,本实施例中的虚拟环境的实现装置还可以包括:顺序连接的运行模块、桌面建立模块和壳层建立模块,其中壳层建立模块与获取模块连接。其中,运行模块用于运行虚拟环境服务器;桌面建立模块用于建立桌面;壳层建立模块用于建立操作系统壳层。
进一步地,本实施例中的虚拟环境的实现装置还可以包括:与执行模块连接的切换模块。其中,切换模块用于切换到新桌面。
在本实施例中通过,获取模块在操作指令调用第一DLL文件之前获取操作指令,由插值模块将目标文件位置信息修改指令插入到操作指令之前,执行模块顺序执行目标文件位置信息修改指令和操作指令,实现了将目标文件位置信息指向修改为虚拟环境中的目标文件,在此之后继续执行操作指令。在使用者模式下实现了应用程序、系统配置信息及私人文档的可携带性,在不对应用程序和操作系统进行修改的前提下,保证了应用程序及系统配置信息与操作系统的兼容性和操作系统的稳定性,提高了虚拟操作系统运行的效率。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1、一种虚拟环境的实现方法,其特征在于包括:
获取应用程序执行所需调用第一动态链接库文件而发出的操作指令,所述操作指令中携带有目标文件位置信息;
在所述操作指令执行之前,插入修改所述目标文件位置信息所需调用第二动态链接库文件而发出的目标文件位置信息修改指令,生成虚拟操作指令;
执行所述虚拟操作指令,顺序调用所述第二动态连接库文件和所述第一动态链接库文件。
2、根据权利要求1所述的方法,其特征在于所述应用程序的使用者模式内存空间中存储有虚拟操作系统。
3、根据权利要求1或2所述的方法,其特征在于所述获取应用程序执行所需调用第一动态链接库文件而发出的操作指令具体为:调用所述第一动态链接库文件执行之前获取所述应用程序发出的所述操作指令。
4、根据权利要求3所述的方法,其特征在于所述获取应用程序执行所需调用第一动态链接库文件而发出的操作指令之前还包括:
运行虚拟环境服务器;
建立桌面;
在所述桌面内建立操作系统壳层。
5、根据权利要求4所述的方法,其特征在于所述执行所述虚拟操作指令之后还包括:
切换到新桌面。
6、一种虚拟环境的实现装置,其特征在于包括:
获取模块,用于获取应用程序执行所需调用第一动态链接库文件而发出的操作指令,所述操作指令中携带有目标文件位置信息;
插值模块,用于在所述操作指令之前插入修改所述目标文件位置信息所需调用第二动态链接库文件而发出的目标文件位置信息修改指令,生成虚拟操作指令;
执行模块,用于执行所述虚拟操作指令,顺序调用所述第二动态连接库文件和所述第一动态链接库文件。
7、根据权利要求6所述的装置,其特征在于还包括:
运行模块,用于运行虚拟环境服务器;
桌面建立模块,用于建立桌面;
壳层建立模块,用于建立操作系统壳层。
8、根据权利要求7所述的装置,其特征在于还包括:
切换模块,用于切换到新桌面。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810133363A CN101650668A (zh) | 2008-08-11 | 2008-08-11 | 虚拟环境的实现方法及装置 |
US12/274,230 US20100037040A1 (en) | 2008-08-11 | 2008-11-19 | Method and apparatus for implementing virtual environment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810133363A CN101650668A (zh) | 2008-08-11 | 2008-08-11 | 虚拟环境的实现方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101650668A true CN101650668A (zh) | 2010-02-17 |
Family
ID=41653984
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810133363A Pending CN101650668A (zh) | 2008-08-11 | 2008-08-11 | 虚拟环境的实现方法及装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20100037040A1 (zh) |
CN (1) | CN101650668A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102650968A (zh) * | 2012-03-30 | 2012-08-29 | 奇智软件(北京)有限公司 | 终端系统的环境构建方法和装置、以及终端系统 |
WO2013004182A1 (zh) * | 2011-07-04 | 2013-01-10 | 华为数字技术(成都)有限公司 | 应用程序虚拟化安装及加载方法及装置 |
WO2014146508A1 (zh) * | 2013-03-19 | 2014-09-25 | 华为技术有限公司 | 一种兼容方法及装置 |
US9246992B2 (en) | 2012-04-05 | 2016-01-26 | Huawei Technologies Co., Ltd. | Virtual desktop implementation method, apparatus, and system |
CN111026439A (zh) * | 2019-11-22 | 2020-04-17 | 广州华多网络科技有限公司 | 应用程序的兼容方法、装置、设备及计算机存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103064718A (zh) * | 2013-01-23 | 2013-04-24 | 北京伸得纬科技有限公司 | 一种虚拟机载入器 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2765363B1 (fr) * | 1997-06-30 | 2000-02-18 | Actikey | Procede et systeme de controle de l'utilisation d'un logiciel |
JP2007536634A (ja) * | 2004-05-04 | 2007-12-13 | フィッシャー−ローズマウント・システムズ・インコーポレーテッド | プロセス制御システムのためのサービス指向型アーキテクチャ |
-
2008
- 2008-08-11 CN CN200810133363A patent/CN101650668A/zh active Pending
- 2008-11-19 US US12/274,230 patent/US20100037040A1/en not_active Abandoned
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013004182A1 (zh) * | 2011-07-04 | 2013-01-10 | 华为数字技术(成都)有限公司 | 应用程序虚拟化安装及加载方法及装置 |
CN102650968A (zh) * | 2012-03-30 | 2012-08-29 | 奇智软件(北京)有限公司 | 终端系统的环境构建方法和装置、以及终端系统 |
US9246992B2 (en) | 2012-04-05 | 2016-01-26 | Huawei Technologies Co., Ltd. | Virtual desktop implementation method, apparatus, and system |
WO2014146508A1 (zh) * | 2013-03-19 | 2014-09-25 | 华为技术有限公司 | 一种兼容方法及装置 |
CN111026439A (zh) * | 2019-11-22 | 2020-04-17 | 广州华多网络科技有限公司 | 应用程序的兼容方法、装置、设备及计算机存储介质 |
CN111026439B (zh) * | 2019-11-22 | 2023-03-24 | 广州方硅信息技术有限公司 | 应用程序的兼容方法、装置、设备及计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20100037040A1 (en) | 2010-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102193807B (zh) | 一种镜像文件升级的方法、服务器及计算机网络系统 | |
JP3793226B2 (ja) | アトミック・コマンド・システム | |
JP4117132B2 (ja) | オブジェクト指向通知フレームワークシステム及びこれを実行するための方法並びにこれを管理するための方法 | |
JP3949159B2 (ja) | オブジェクト指向アプリケーション・インターフェイス | |
CN107515776A (zh) | 业务不间断升级方法、待升级节点和可读存储介质 | |
CN101650668A (zh) | 虚拟环境的实现方法及装置 | |
CN104267947A (zh) | 一种编辑弹窗图片的方法及弹窗图片编辑装置 | |
JPH08509825A (ja) | 並行フレームワーク・システム | |
JPH08509824A (ja) | 共同作業システム | |
CN101645020A (zh) | 虚拟操作系统创建方法 | |
CN107870769A (zh) | 操作系统的安装方法及装置 | |
US20220028424A1 (en) | Systems for optimized presentation capture | |
JP2003308213A (ja) | ジョブ処理方法、ジョブ処理装置及びストレージ管理システム | |
CN103365668A (zh) | 一种动态链接库装载和链接的方法、装置 | |
CN113066515A (zh) | 一种光盘刻录方法、计算设备及可读存储介质 | |
US20070294703A1 (en) | System and Method for Migration of Information From a Legacy to a Replacement Information Handling System | |
US7966600B2 (en) | Distributed resource understanding tool management | |
CN103218428A (zh) | 一种动态链接方法及系统 | |
CN108958981A (zh) | 一种基于docker的镜像保存方法及相关装置 | |
EP3467681A1 (en) | Data migration method and device | |
CN101655805B (zh) | 多层虚拟操作系统构建方法及装置 | |
CN101727504A (zh) | 一种文件系统数据迁移方法和装置 | |
CN101986273A (zh) | 多媒体播放系统及其移植处理方法 | |
WO2010044150A1 (ja) | プログラム変更管理装置、プログラム変更管理プログラムおよびプログラム変更管理方法 | |
JPH04245545A (ja) | マルチ・ユーザ仮想計算機システム構成方法およびマルチ・ユーザ仮想計算機システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20100217 |
|
C20 | Patent right or utility model deemed to be abandoned or is abandoned |