管理对客户机设备上的数据的访问的方法和客户机设备的制造方法
【技术领域】
[0001] 本发明一般地涉及提供对数据的远程访问,这些数据包括存储在客户机设备上的 应用、文件和应用状态。更具体地说,本发明涉及当客户机设备进入低功率状态时,提供对 数据的远程访问。
【背景技术】
[0002] 客户机和便携式设备的普及度持续增长。消费者购买大量客户机设备,例如智能 电话、平板计算机、膝上型计算机和桌面计算机。随着连接性增强的客户机设备不断增加, 允许用户更加频繁地协作。通常,客户机设备的用户将数据存储在本地,例如文件、应用和 应用状态。当客户机设备进入低功率状态时(由于用户操作(例如关闭膝上型计算机的盖 子)或者由于剩余电池寿命太低),存储在本地设备上的数据对于远程用户而言变得不可 用。当多个用户针对存储在客户机设备上的项目进行协作时,这便会成为问题。当用户使 用多个设备时,这也是一个问题。
【发明内容】
[0003] 公开了一种当客户机设备被置于低功率状态、睡眠模式、甚至关机时,用于保持计 算功能的方法和系统。所述客户机设备上诸如应用、文件和机器状态之类的数据被传输到 云中的服务器上的虚拟机。该虚拟机然后可充当用户客户机的部分或完整仿真器,因此可 以:1)被访问;以及2)与机器的所有者或其它使用机器的用户通信。
[0004] 只要客户机设备关闭,云便可继续临时充当用户的机器。当所述客户机设备从睡 眠或待机功率状态恢复到操作功率状态时,所述客户机设备可从云下载当前的状态和应用 数据,甚至是应用,然后继续以无缝的方式正常操作。
[0005] 所要求保护的本发明提供"混合分解特征",其中客户机上的数据被排列优先次 序,然后被逐个组件地或零散地传输到服务器上的虚拟机。所述服务器通常为虚拟仿真器。 这最佳地使用可用电力和带宽以确保混合功能得到最大化。
[0006] 为了确定何时传输信息和功能及其传输量,确定:1)当前或预测的任务相对"重 要性";2)当前或预测的网络带宽;3)当前或预测的CPU或内存利用率;以及4)当前或预 测的所需电力。从其它客户机设备接收保持活动(Keep-alive)消息。保持活动消息指示 其它用户希望保持对进入低功率状态的客户机设备上的本地数据的访问。例如,协作者或 即时消息合作伙伴等可能决定使所述客户机设备的状态保持活动很重要,并且将此意图通 知给所述客户机设备。
[0007] 在一个实例中,客户机设备上的低功率状态管理始于处理第一客户机设备上的多 个本地数据集中的至少第一本地数据集。数据处理可以是执行程序或应用和应用状态。
[0008] 从至少第二客户机设备接收消息。所述消息可以是机器可读消息,例如保持活动 消息或心跳消息,或者是人类可读消息,例如文本或电子邮件。所述消息用于指示第二设备 希望保持对所述第一客户机设备上的所述第一本地数据集的访问。接下来,接收使所述第 一客户机设备进入低功率状态的请求。该请求响应于用户对所述第一客户机设备所做的动 作,例如点击"睡眠"按钮或关闭膝上型计算机的盖子。在另一实例中,请求可能来自达到 低电池状态的便携式设备上的电源管理系统。
[0009] 计算所述第一客户机设备上的本地功率要求以便将所述第一本地数据集复制到 服务器计算机。所述第一本地数据被复制到所述服务器计算机以便继续提供对所述第一本 地数据集的访问。响应于接收使第二客户机设备保持访问的消息并且所述功率要求充足, 所述第一数据集被复制到所述服务器计算机。这允许所述第一客户机设备进入低功率状 态,同时所述第二客户机设备可继续从所述服务器访问所述第一本地数据集。
【附图说明】
[0010] 附图用于进一步阐述多个实施例并且解释全部根据本发明的多个原理和优点,在 各个附图中,相同的参考标号表示相同或功能相似的部件,这些附图与下面的具体描述共 同纳入说明书并且形成说明书的一部分,其中:
[0011] 图1示意性地示出在与分布式计算网络耦合的多个客户机设备上运行的本地应 用;
[0012] 图2是在对将被发送到云以使能其它客户机设备继续访问的数据进行优先次序 排列时,存储在客户机设备本地的值的表;
[0013] 图3和图4是在低功率状态期间管理对客户机设备上的数据的访问的流程图;
[0014] 图5是在从低功率状态恢复之后,从云中的服务器恢复数据的流程图;以及
[0015] 图6是示出客户机或服务器信息处理系统的一个实例的框图。
【具体实施方式】
[0016] 此处根据需要公开了详细实施例;但是将理解,所公开的实施例仅是实例,而且下 面描述的系统和方法可通过多种形式实现。因此,此处公开的具体结构和功能细节不被解 释为限制,而是仅作为权利要求的基础,并且作为教导本领域的技术人员以实际上任何适 合的详细结构和功能从多方面采用本发明主题的代表性基础。此外,此处使用的术语和短 语并非旨在作为限制,而是提供可理解的概念描述。
[0017] 出于示例和说明目的给出了对本发明的描述,并且所述描述并非旨在是穷举的或 是将本发明限于所公开的形式。对于本领域的普通技术人员来说,在不偏离本发明的范围 和精神的情况下,许多修改和变化都将是显而易见的。实施例的选择和描述是为了最佳地 解释本发明的原理、实际应用,并且当适合于所构想的特定使用时,使得本领域的其他技术 人员能够理解本发明的具有各种修改的各种实施例。
[0018] 非限制件宙义
[0019] 此处使用的术语只是为了描述特定的实施例并且并非旨在作为本发明的限制。如 此处所使用的,单数形式"一"、"一个"和"该"旨在同样包括复数形式,除非上下文明确地 另有所指。
[0020] 术语"应用状态"表示信息,例如客户机设备中的存储器的变量和内容,这些变量 和内容在给定时刻被捕获以使应用能够返回到先前状态。应用状态连同应用和数据一起被 传输到另一机器。例如,如果用户在客户机设备上编辑字处理文档,则用户不仅希望将字处 理文件复制到服务器,而且还希望复制应用状态信息,即,用户在文档中滚动到的位置,这 样,当此文档被传输到服务器时,可从该点开始继续编辑。
[0021] 术语"客户机设备"可以是任何设备,例如计算机、膝上型计算机、智能电话、平板 计算机、电视机或其它可处理软件和数据的信息处理设备。
[0022] 术语"包括"和/或"包含"指定了声明的特征、整数、步骤、操作、元素和/或组件 的存在,但是并不排除一个或多个其他特征、整数、步骤、操作、元素、组件和/或其组合的 存在或增加。
[0023] 术语"仿真器"是程序连同底层硬件,其在服务器或主机上基本复制客户机设备处 理数据的功能。仿真器的目标是让主机模拟客户机系统处理数据时的行为。
[0024] 术语"本地数据"是通常以存储在客户机设备上的数据结构或文件之类的结构表 示的值集。所存储的本地数据包括文件、应用、应用状态或它们的组合。
[0025] 术语"本地功率要求"是在客户机设备上完成任务(例如,将数据复制到服务器计 算机)所需的电池电源量或本地电源量的估计。
[0026] 术语"消息"表示从一个客户机到另一客户机传递的通信,可以是诸如保持活动消 息或心跳消息之类的机器可读消息,也可以是诸如文本消息或电子邮件之类的人类可读消 息。
[0027] 术语"相对重要性值"表示与特定本地数据集关联的值,该值用于排列首先被复制 到服务器计算机的本地数据集。当客户机设备处于临界电池状态,并且没有足够时间复制 所有不同的数据集时,此值尤其重要。
[0028] 术语"主题提取"表示使用工具和算法从文本文档提取主题。主题提取被用于设定 本地数据集的相对重要性值。例如,诸如"重要销售文件"之类的主题将优于"购物清单"。
[0029] 术语"用户简档"表示用于设定本地数据集的相对重要性值的可定制配置值。例 如,一个用户可认为字处理任务的优先级高于SMS任务。另一用户可能认为正