用于在隔离环境之间移动进程的方法和设备技术

技术编号:2836881 阅读:245 留言:0更新日期:2012-04-11 18:40
一种用于把在执行着的进程从源隔离范围移动到目标隔离范围的方法,包括步骤:确定该进程处于适合于移动的状态中。该进程的关联从源隔离范围改变到目标隔离范围。规则与目标隔离范围相关联地加载。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及用于管理由计算机对软件应用程序的执行,更特别地,涉及到用于在隔离环境之间移动进程的方法和设备
技术介绍
计算机软件应用程序,在执行和安装期间,充分利用由计算机的操作系统提供的各种本机资源。传统的单用户计算机描绘在图1A中。如图1A所示的,操作系统100提供的本机资源可能包括文件系统102,注册表数据库104和对象106。文件系统102为应用程序提供打开、创建、读取、拷贝、修改和删除数据文件150、152的机制。数据文件150,152可以被在目录160、162的逻辑分层结构中编组在一起。注册表数据库104存储关于在物理上附联到计算机的硬件、哪些系统选项已经被选择、计算机存储器怎样设立、应用程序专用数据的各种项目以及当操作系统100被起动之时应该存在什么应用程序的信息。如图1A所示的,注册表数据库104被公共地组织在″键″170、172的逻辑分层结构,″键″170,172是注册表值的容器。操作系统100还可以提供多个多个通信和同步对象106,包括信号量,分段,互斥体,定时器,变异株(mutant)以及管道。通过操作系统100而变为可用的文件系统102、注册表数据库104、对象106以及任何其他本机资源一起在贯穿本文献自始至终都将被称为″系统层″108。由系统层108提供的资源对于任何应用程序或者系统程序112、114都是可用的。然而,当试图去执行或者安装两个不兼容应用程序112,114之时,就会出现问题。如图1A所示的,两个应用程序APP1 112和APP2 114,在操作系统100的“顶上”执行,也就是说,所述应用程序充分利用由操作系统提供来访问本机资源的函数。当所述应用程序在执行期间或者在安装过程期间以相互排斥的方式充分利用本机资源102,104,106之时,就说所述应用程序相互之间是不兼容的。APP1 112可能需要或者可能尝试去安装,位于路径名为c\windows\system32\msvcrt.dll的文件,并且APP2 114可能需要或者可能尝试去安装位于相同路径名的第二不同文件。在此情况下,APP1 112和APP2 114无法在相同的计算机上加以执行,就说它们相互之间是不兼容的。对于其他本机资源,也可能会遇到类似的问题。这对于需要在相同操作系统100环境中一起安装或者执行APP1 112和APP2 114这二者的计算机用户而言,再怎么好也是不方便的。图1B描绘了支持代表若干用户并发执行的应用程序112,114,112′,114′的多用户计算机系统。如图1B所示的,APP1的第一实例112和APP2的第一实例114在第一用户会话的上下文110中执行,APP1的第二实例112′在第二用户会话的上下文120中执行,并且APP2的第二实例114′在第三用户会话的上下文130中执行。在此环境中,如果APP1的两个实例112,112′和APP2的两个实例114,114′充分利用本机资源102,104,106,就好像只有单个用户执行所述应用程序一样,在此时就会出现问题。例如,APP1 112可以把应用程序专用数据存储在注册表键170中。当在第一用户上下文110中执行的APP1的第一实112和在第二用户上下文120中执行的APP1 1第二实例112′的都试图去把配置数据存储到相同的注册表键170之时,就将会为一个用户存储不正确的配置数据。对于其他本机资源,也会发生类似的问题。本专利技术致力于解决这些应用程序的兼容性和社交性问题。
技术实现思路
本专利技术允许在单个计算机上安装和执行相互不兼容的应用程序和相同应用程序的不兼容版本。除此之外,它还允许在多用户计算机上安装和执行曾为单用户计算机所创建的或者曾在不考虑当在多用户计算机执行之时出现的那些问题的情况下所创建的程序。所描述的方法和设备可应用于单用户计算环境,所述单用户计算环境包括多个用户可以相继地使用单个计算机的环境以及多个用户并发地使用单个计算机的多用户计算环境。本专利技术虚拟化对本机资源(诸如文件系统,注册表数据库,系统对象,窗口类和窗口名称)的用户和应用程序访问,而不用修改应用程序或者基础的操作系统。除此之外,虚拟化的本机资源可以按照本机格式存储(也就是说,虚拟化的文件被存储在文件系统中,虚拟化的注册表条目被存储在注册表数据库中,等等),这样就允许查看和管理虚拟化的资源能够使用标准工具和技术来实现。通过在隔离范围之间移动进程、把进程移动到隔离范围中、把进程从隔离范围中移出,同时这些进程还在执行中,就可以充分地利用所提供的隔离范围,这样就允许对提供给那些应用程序的本机资源的视图做出修改。在一个方面,本专利技术涉及一种用于把执行着的进程从第一隔离范围移动到第二隔离范围的方法。确定该进程是否处于适合于移动的状态。该进程的关联从第一隔离范围改变到第二隔离范围。规则与第二隔离范围相关联地加载。在一个实施例中,确定该进程是否处于适合于移动的状态是通过监视该进程是否正在处理请求来完成。在一些实施例中,该进程被置于适合于移动的状态中。在另一个实施例中,该进程的关联在文件系统过滤器驱动器中从第一隔离范围改变到第二隔离范围。在又一个实施例中,该进程的关联在核心挂钩函数和用户模式挂钩函数之一中从第一隔离范围改变到第二隔离范围。在另一个方面,一种方法涉及把执行着的进程移动到隔离范围中。确定该进程是否处于适合于移动的状态中。该进程与隔离范围之间具有关联。规则与该隔离范围相关联地加载。在一个实施例中,确定该进程是否处于适合于移动的状态是通过监视该进程是否正在处理请求来完成。在一些实施例中,该进程被置于适合于移动的状态中。在其他实施例中,把该进程与隔离范围关联起来的信息写入到规则引擎中。附图说明本专利技术用后附的权利要求中特别地点出。以上所描述的本专利技术的优点以及专利技术本的其他优点通过参考结合附图所给出的以下描述可以得到更好的理解,在附图中图1A是支持代表用户的两个应用程序的执行的现有技术操作系统环境的框图;图1B是支持代表若干用户的多个应用程序的并发执行的现有技术操作系统环境的框图;图2A是应用程序兼容性和社交性问题已经降低的计算机系统的实施例的框图;图2B是应用程序兼容性和社交性问题已经降低的计算机系统的实施例的图;图2C是示出把进程与隔离范围关联所采取的步骤的一个实施例的流程图;图3A是示出虚拟化对计算机系统中的本机资源的访问所采取的步骤的一个实施例的流程图;图3B是在执行模式中识别替换实例所采取的步骤的一个实施例的流程图;图3C是描绘当接收到一个用于打开本机资源的请求之时(该请求表明该资源正在被打开目的是去修改它)识别文字(literal)资源而在安装模式下所采取得步骤的一个实施例的流程图;图3D是描绘当接收到一个创建虚拟资源的请求之时识别文字资源而在安装模式下所采取的步骤的一个实施例的流程图。图4是描绘在所描述的虚拟化的环境中打开文件系统中的条目所采取的步骤的一个实施例的流程图;图5是描绘在所描述的虚拟化环境中从文件系统删除条目所采取的步骤的一个实施例的流程图;图6是描绘在所描述的虚拟化环境中列举文件系统中的条目所采取的步骤的一个实施例的流程图;图7是描绘在所描述的虚拟化环境在文件系统中创建条目所采取的步骤的一个实施例的流程图;图8是描绘在所描述的虚拟化环境中打开注本文档来自技高网
...

【技术保护点】
一种用于把执行着的进程从第一隔离范围移动到第二隔离范围的方法,所述方法包括步骤:    (a)确定进程是否处于适合于移动的状态中;    (b)把该进程的关联从第一隔离范围改变到第二隔离范围;以及    (c)定位与第二隔离范围相关联的至少一条规则。

【技术特征摘要】
【国外来华专利技术】US 2004-9-30 10/711,737;US 2004-9-30 10/711,736;US1.一种用于把执行着的进程从第一隔离范围移动到第二隔离范围的方法,所述方法包括步骤(a)确定进程是否处于适合于移动的状态中;(b)把该进程的关联从第一隔离范围改变到第二隔离范围;以及(c)定位与第二隔离范围相关联的至少一条规则。2.如权利要求1所述的方法,其中步骤(a)包括通过监视一个进程是否正在处理请求来确定该进程处于适合于移动的状态中。3.如权利要求2所述的方法,其中步骤(a)包括把进程置于适合于移动的状态中。4.如权利要求3所述的方法,还包括经由用户接口和管理程序之一来把进程置于适合于移动的状态中。5.如权利要求3所述的方法,还包括禁止对该进程的新请求的步骤。6.如权利要求3所述的方法,还包括查询对该进程的请求的步骤。7.如权利要求6所述的方法,还包括在把该进程与第二隔离范围相关联之后处理排队的请求的步骤。8.如权利要求1所述的方法,其中步骤(b)包括向规则引擎写入把该进程与第二隔离范围相关联的信息。9.如权利要求1所述的方法,还包括在文件系统过滤器驱动器中把该进程的关联从第一隔离范围改变到第二隔离范围的步骤。10.如权利要求1所述的方法,还包括在核心挂钩函数和用户模式挂钩函数之一中把该进程的关联从第一隔离范围改变到第二隔离范围的步骤。11.如权利要求1所述的方法,还包括在小型过滤器中把该进程的关联从第一隔离范围改变...

【专利技术属性】
技术研发人员:LG拉博尔茨法尔维A罗伊乔德里AG博尔茨基HC秦RJ马扎费里NA比塞特JD穆伊尔
申请(专利权)人:茨特里克斯系统公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1