用于跨域协调进程和内存管理的系统和方法

文档序号:9524051阅读:553来源:国知局
用于跨域协调进程和内存管理的系统和方法
【技术领域】
[0001] 本公开设及进程和内存管理,具体地,设及具有同时运行的多个操作系统的系统 中的进程和内存管理。
【背景技术】
[0002] 包括智能电话、平板电脑、数字助理、膝上型计算机等的移动设备尤其包括硬件和 软件。软件通常包括设备的应用运行于其上的至少一个操作系统。
[0003] 在一些情况下,为了安全性的目的,可能期望在单个硬件(例如,智能电话)上运 行操作系统的多个虚拟化实例。例如,该系统的一种使用情况可W是允许一个操作系统托 管公司数据和应用,而第二操作系统可W托管个人数据和应用。
[0004] 然而,在多个操作系统的情况下,当使用单个操作系统的技术时,跨多个操作系统 的进程管理将不起作用。

【发明内容】

[0005] 本公开提供了一种具有多个同时操作的操作系统的计算设备处的方法,所述方法 包括:在所述计算设备上的目标域内操作代理进程;在所述代理进程处从源域接收对来自 所述目标域内的目标进程的资源的请求;由所述代理进程请求所述目标进程的所述资源; W及从所述代理进程向所述源域返回针对所述目标进程的句柄。
[0006] 本公开还提供了一种具有多个同时操作的域的计算设备,所述计算设备包括:处 理器;W及存储器,其中,所述计算设备被配置为:在所述计算设备上的目标域内操作代理 进程;在所述代理进程处从源域接收对来自所述目标域内的目标进程的资源的请求;由所 述代理进程请求所述目标进程的所述资源;W及从所述代理进程向所述源域返回针对所述 目标进程的句柄。
【附图说明】
[0007] 参照附图将更好地理解本公开,在附图中:
[0008] 图1是示出了单个操作系统环境中的进程管理的框图;
[0009] 图2是示出了具有多个操作系统的示例性设备的框图;
[0010] 图3是示出了在多操作系统环境中使用代理进程的框图;
[0011] 图4是示出了在多操作系统环境中获得并释放资源的数据流程图;
[0012] 图5是用于在代理进程处确定源进程的状态的轮询过程的数据流程图;
[0013] 图6是示出了用于在代理进程处获得源进程的状态的触发进程的数据流程图;W 及
[0014] 图7是能够与本公开的实施例一起使用的示例性移动设备的框图。
【具体实施方式】
[0015] 本公开提供了一种具有多个同时操作的操作系统的计算设备处的方法,所述方法 包括:在所述计算设备上的目标域内操作代理进程;在所述代理进程处从源域接收对来自 所述目标域内的目标进程的资源的请求;由所述代理进程请求所述目标进程的所述资源; W及从所述代理进程向所述源域返回针对所述目标进程的句柄。
[0016] 本公开还提供了一种具有多个同时操作的域的计算设备,所述计算设备包括:处 理器;W及存储器,其中,所述计算设备被配置为:在所述计算设备上的目标域内操作代理 进程;在所述代理进程处从源域接收对来自所述目标域内的目标进程的资源的请求;由所 述代理进程请求所述目标进程的所述资源;W及从所述代理进程向所述源域返回针对所述 目标进程的句柄。
[0017] 本公开提供了跨多个操作系统的进程管理。如本文所使用的,术语"操作系统"可 W是指计算设备上具有其自己的操作系统堆找的软件。
[0018] 现在参照图1,图1示出了具有单个域110的设备,该单个域110具有单个操作系 统。通常,在单个操作系统中,一个进程(称作源进程)可W请求资源,运进而要求操作系 统启动某一其他进程(在本文中称作目标进程)W为该请求提供服务。因为操作系统知晓 呼叫进程和新启动的进程二者,因此操作系统知道何时可W清除新启动的进程。例如,清除 进程可W尤其设及释放进程使用的内存(不论是实际的还是虚拟的)、W及减少操作系统 的堆找或堆积上的对象。
[0019] 因此,在图1中,源进程120需要在目标进程122中发现的资源。示出为进程130 至132的其他进程也可能需要相同的目标进程。
[0020] 操作系统中的跟踪机制可W用于跟踪源进程和目标进程。在图1的示例中,该实 体被示出为逻辑进程管理器112。
[0021] 因为操作系统知晓源进程120和目标进程122,因此当源进程120和利用目标进程 的任何其他进程均关闭时,可能不再需要目标进程122。然后,操作系统可W根据需要清除 目标进程122。
[0022] 在其他实施例中,源进程120可W向操作系统提供关于它不再需要目标进程122 的资源的信息。此外,如果没有其他进程正在使用目标进程122,则操作系统可W根据需要 清除目标进程122。
[0023] 在其他实施例中,操作系统可能希望关闭目标进程122,运是因为系统正在低内存 运行。在该情况下,因为源进程取决于目标进程,因此操作系统可W基于用户是否正在与源 进程120交互或者可能与源进程120交互来决定关闭目标进程122。例如,如果源进程120 在前台,则可能不太可能在没有关闭源进程的情况下关闭目标进程(运不利于用户体验)。
[0024] 一旦进程管理器112确定没有进程正在使用目标进程122,则可W由操作系统决 定关闭目标进程122。
[0025] 运种系统的一个示例可W包括其中由其他进程支持"内容提供方"或"服务"的系 统。例如,应用可W请求内容提供方在移动设备上提供"联系人"W允许源进程向用户显示 联系人列表。源进程将是希望向用户显示联系人列表的程序,并且目标进程122将是联系 人内容提供方。
[00%] 因此,如果源进程被启动并且需要联系人列表,则它将请求该进程,运导致启动联 系人进程(如果联系人进程还未运行的话)。将向源进程120提供针对联系人进程的句柄 w传送或获取来自目标进程的信息。
[0027] 当使用联系人内容提供方的源进程和所有其他进程关闭和/或释放去往联系人 进程的通信信道时,或者如果操作系统陷入低内存情形时,联系人进程可能变得适合关闭。
[0028] 虽然上述方案在单个操作系统环境中起作用,但是有时为了安全性的目的,可能 期望在单个硬件或智能电话上运行操作系统的多个虚拟化实例。例如,可W将设备划分为 多个段或域。在一个示例中,根据需要,一个域可W用于托管公司数据和应用,第二域可W 用于托管个人数据和应用,并且最后一个域可W用于跨其他主机操作系统提供统一数据视 图。在其他情况下,可W针对共享设备(例如,在父与子之间共享的设备)利用多个域,其 中,与成人空间相比,儿童空间上的安全性设置可能更严格并且对特定数据的访问更受限。 在一些实施例中,每一个域可W包括其自己的操作系统或其自己的关于操作系统的虚拟化 实例。虽然在下面的示例中提及多个域环境,但是多个操作系统环境的其他示例也是可能 的。
[0029] 现在参照图2。图2示出了具有Ξ个域的系统的示例,其中每一个域具有相关联的 操作系统。在图2的示例中,域210包括进程212。域220包括进程222,并且混合域230 (可 W访问域210和域220的资源)具有进程232。
[0030] 针对域210、220和230中的每一个的操作系统可W包括
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1