应用寿命管理的制作方法

文档序号:6436377阅读:178来源:国知局
专利名称:应用寿命管理的制作方法
应用寿命管理
背景技术
计算设备可以同时运行多个应用。随着同时运行的应用的数量增加,各种计算设备资源(诸如处理器、存储器等等)的使用也可以增加。即使在应用不被计算设备的用户主动使用的情况下,这些应用也可以继续使用计算设备资源。这可能是有问题的,因为多个同时运行的应用对计算设备资源的使用可以使计算设备的性能降级,这可以导致令人沮丧并且不愉快的用户体验。

发明内容
提供此发明内容部分来以简化的形式介绍构思的选择,所述构思在下面在具体实施方式
部分中进一步描述。此发明内容部分不意在表示所请求保护的主题的关键特征或者必要特征,其也不意在用于限制所请求保护的主题的范围。根据一个或者多个方面,在运行多个应用的计算设备中,对于是否满足多个阈值中的阈值做出检查。所述多个阈值中的每一个与多个应用之一的特性或者计算设备的资源的特性相关联。如果未满足所述阈值,则允许多个应用继续在计算设备上运行。然而,如果满足了阈值,则至少部分地基于与已经满足的阈值相关联的特性来选择多个应用中要关闭的一个或多个,并且所选择的应用被关闭。根据一个或者多个方面,生成在计算设备上运行的背景应用的列表。至少部分地基于由所述列表上的背景应用对于计算设备的资源的使用来对背景应用的列表进行优先级安排。选择背景应用的列表上的应用,并且所选择的应用被关闭。


遍布各附图使用相同的编号来引用相似的特征。图1图示了根据一个或者多个实施例的实现应用寿命管理的示例计算设备。图2图示了根据一个或者多个实施例的实现应用寿命管理的示例系统。图3是图示根据一个或者多个实施例的用于实现应用寿命管理的设备的示例过程的流程图。图4是图示根据一个或者多个实施例的用于选择要关闭的一个或者多个应用的示例过程的流程图。图5图示了根据一个或者多个实施例的可被配置为实现应用寿命管理的示例计算设备。
具体实施例方式这里讨论应用寿命管理。监视应用和/或计算设备资源的各种特性,诸如应用年龄、处理器使用、存储器使用等等。这些所监视的特性中的每一个具有相关联的阈值,如果满足阈值中的至少一个,则选择要自动关闭的一个或者多个应用。被选择为自动关闭的一个或者多个应用至少部分地基于被满足的阈值以及与该阈值相关联的特性。
图1图示了根据一个或者多个实施例的实现应用寿命管理的示例计算设备100。 计算设备100可以是各种不同类型的设备。例如,计算设备100可以是桌面计算机、上网本或者膝上型计算机、笔记本或者平板计算机、移动站、娱乐装置、通信耦接到显示设备的机顶盒、电视机、蜂窝或者其它无线电话、游戏机、汽车计算机等等。由此,计算设备100的范围可以是从具有很大的存储器和处理器资源的全资源设备(例如,个人计算机、游戏机)到具有有限的存储器和/或处理资源的低资源设备(例如,传统机顶盒、手持游戏机)。计算设备100由一个或者多个电源来供电。这些电源可以是外部电源或者插入式电源,当在来自这种电源的电力下操作时,计算设备100被称为作为接通电源的系统或者设备而操作。这些电源也可以是诸如电池之类的内部电源,当在来自这种电源的电力下操作时,计算设备100被称为作为依靠电池的系统或设备而操作。许多类型的设备在不同时刻、取决于在任意特定时刻该设备在其下操作的电源,可以是接通电源的系统或依靠电池的系统。然而,其它类型的设备可以仅是接通电源的系统(不具有内部电源)或者仅是依靠电池的系统(不使用外部电源)。计算设备100包括操作系统102以及一个或多个应用104。在操作期间,操作系统 102和应用104在计算设备100上运行,其中操作系统102管理应用104。应用104的管理包括自动关闭一个或者多个应用104,如下面更详细地讨论的。应用104的寿命或生命指应用运行时的时间段,从应用开始运行时开始,并且在应用关闭时结束。操作系统102包括系统信息收集模块106以及应用寿命管理模块108。尽管将系统信息收集模块106和应用寿命管理模块108图示为作为操作系统102的一部分,但是可替代地,模块106和模块108之一或两者可以与操作系统102分开实现。系统信息收集模块106收集关于应用104和/或计算设备100的资源的特性的各种信息。关于应用104的特性的信息例如包括每个应用104的年龄。应用104的年龄指应用104上次处于前景中是多久之前(例如,按照分钟、小时、天等等)。当应用经由计算设备的用户界面被显示或者否则被呈现时,其处于前景中。已经被最小化的应用(以及可选地其显示窗口被其它应用的显示窗口覆盖的应用)未处于前景中,并且被称作背景应用。关于应用104的特性的信息也可以包括应用104的其它属性,诸如有多少应用104运行在计算设备100上的计数。计算设备100的资源包括计算设备100的硬件和/或软件资源,诸如处理器和/ 或处理器核心、存储器、网络连接等等。关于计算设备100的资源的特性的信息例如包括关于计算设备100的资源的使用的信息、描述计算设备100的资源的属性的信息等等。例如, 计算设备100的资源的特性可以包括计算设备100的处理器(或处理器核心)的多少正被所有的应用104的组合使用、计算设备100的每个处理器(或者每个处理器核心)的多少正被每个单独的应用104使用、待命列表上存储器页面的平均寿命、网络连接的类型(例如,特定网络连接是蜂窝无线连接、还是无线局域网(例如Wi-Fi)连接等)等等。应用寿命管理模块108包括应用信息跟踪模块112、触发模块114、应用选择模块 116、以及关闭模块118。应用信息跟踪模块112从系统信息收集模块106接收关于应用104 和/或计算设备100的资源的特性的信息。触发模块114监视由应用信息跟踪模块112接收的信息,并且确定何时满足与应用104和/或计算设备100的资源的特定特性相关联的阈值。当满足了与应用104和/或计算设备100的资源的特定特性相关联的阈值时,应用选择模块116选择要关闭的一个或多个应用104。关闭模块118管理由应用选择模块116 选择的一个或多个应用的关闭。关闭模块108自动关闭由应用选择模块116选择的一个或多个应用一不需要接收用于使关闭模块108关闭所选择的一个或多个应用的要关闭的应用的用户输入或确认。应用信息跟踪模块112保持来自系统信息收集模块106的关于应用104和/或计算设备100的资源的各种特性的信息。应用信息跟踪模块112可以以规则或者不规则的间隔(例如每五秒)向系统信息收集模块106请求此信息,或者可替代地可以以其它方式从模块106接收此信息(例如,模块112可以向模块106登记以接收关于此信息的消息或者其它更新)。在一个或多个实施例中,由应用信息跟踪模块112保持的信息包括每个应用104 的年龄、计算设备100中每个处理器核心的处理器(中央处理单元或CPU)核心使用、存储器使用、计算设备100中每个存储设备的存储设备(例如硬盘)使用、以及由计算设备100使用的每个网络连接的网络连接使用。处理器核心使用例如是所有应用104对处理器核心性能的组合的使用(例如,作为全部处理器核心性能的百分比)、和/或每个应用104对处理器性能的单独的使用(例如,作为全部处理器核心性能的百分比)。可以例如通过对在特定数量的间隔(例如12个间隔)上、特定间隔(例如每五秒)处的使用求平均,来确定这种处理器核心使用(是组合的应用还是单独的应用)。存储器使用例如是由所有的应用104对存储器的组合的使用、和/或由每个应用 104对存储器的单独的使用。例如可以通过确定在由操作系统102的存储器管理器保持的待命列表上的存储器页面的平均寿命(例如,在特定时间段上,诸如前一分钟、应用的寿命等等)来确定这种存储器使用(是组合的应用还是单独的应用)。这种存储器使用也可以以不同的方式来确定,诸如通过确定应用的存储器页面的工作组中存储器页面的平均数量 (例如,在特定时间段上,诸如前一分钟、应用的寿命等等)来确定。存储设备使用例如是由所有的应用104对存储设备的组合的使用、和/或由每个应用104对存储设备的单独的使用。例如可以通过对访问存储设备的频率求平均(例如在特定时间段上,诸如前一分钟、应用的寿命等等)来确定存储设备使用(是组合的应用还是单独的应用)。这种存储设备使用也可以以不同的方式来确定,诸如通过确定向和/或从存储设备传送的数据量(例如在特定时间段上,诸如前一分钟、应用的寿命等等)来确定。网络连接使用例如是由所有的应用104对网络连接的组合的使用、和/或由每个应用104对网络连接的单独的使用。例如可以通过确定在网络连接上传送(发送或接收)的数据的平均频率(例如在特定时间段上,诸如前一分钟、应用的寿命等等)来确定网络连接使用(是组合的应用还是单独的应用)。这种网络连接使用也可以以不同的方式来确定,诸如通过确定在网络连接上传送(发送或接收)的数据的平均量(例如在特定时间段上,诸如前一分钟、应用的寿命等等)来确定。触发模块114使用由应用信息跟踪模块112保持的信息来确定何时满足与应用 104和/或计算设备100的资源的特定特性相关联的阈值。在一个或多个实施例中,每个特性(由应用信息跟踪模块112为其保持信息)具有其自身的相关联的阈值(尽管应当注意 多个这种阈值可以是相同的值)。由触发模块114使用的阈值可以在触发模块114中被预先配置,或者可替代地可从(计算设备100或另一设备的)另一组件或模块提供给触发模块114,或者否则由触发模块114从(计算设备100或另一设备的)另一组件或模块获得。在一个或多个实施例中,如果相关联的特性具有等于或者超过阈值的值,则满足阈值。在其它实施例中,可以以其它方式(诸如在相关联的特性具有超过阈值的值的情况下)来满足阈值。阈值可以以各种不同的方式来设置,并且在一个或多个实施例中被设置以使得保持高度的系统响应性以及长的电池寿命。通过在特定特性满足特定阈值时关闭特定应用, 应用寿命管理模块108尝试保持高度的系统响应性以及长的电池寿命。可以例如基于不同设备的操作的经验分析来设置特定的阈值。表I包括可以用于应用104和/或计算设备100的资源的特定特性的阈值的示例。 应理解表I中包括的示例是示例,并且可以可替代地使用其它的阈值和/或其它的特性。 表I例示了与用于接通电源的系统的特定特性相关联的阈值的示例。 表 I
特性阈值应用年龄3小时(自从应用上次处于前景中起)处理器使用20秒中79 (由所有应用对处理器核心性能的组合的使用);和/或20秒中29 (由单个应用对处理器核心性能的使用)存储器使用毎300秒(由存储器管理器保持的待命列表上的存储器页面的平均寿命)快速搅动(churn) /页面调动盘使用20秒中79 (由所有处理器核心在系统中的任意单个盘上的盘利用)表II包括可以用于应用104和/或计算设备100的资源的特定特性的阈值的附加的示例。应理解表II中包括的示例是示例,并且可以可替代地使用其它的阈值和/或其它的特性。表II例示了与依靠电池的系统的特定特性相关联的阈值的示例。表 II
特性阈值应用年龄3小时(自从应用上次处于前景中起)处理器使用5秒中79 (由所有应用对处理器核心性能的组合的使用);和/或间隔中大于50% (记录在12个间隔的滚动的历史中毎5秒的毎应用的处理器核心使用;如果利用在多于间隔的50%中是非零的,则触发)存储器使用毎300秒(由存储器管理器保持的待命列表上的存储器页面的平均寿命)快速搅动(churn) /页面调动周期性盘使用连续间隔中的非零活动(对于毎个应用,以5分钟的间隔记录盘利用)周期性网络使用连续间隔中的非零活动(对于毎个应用,以5分钟的间隔记录网络利用)应用选择模块116响应于触发模块114确定已经满足阈值而选择要关闭的一个或多个应用104。此选择至少部分地基于与被超过的特定阈值相关联的特性,并且由此也至少部分地基于被超过的特定阈值。在满足至少一个阈值时,应用选择模块116选择要关闭的一个或多个应用104。例如,如果满足一个资源(例如处理器使用、存储器使用等等)的阈值,则应用选择模块116选择要关闭的一个或多个应用104。在一个或多个实施例中,应用选择模块116选择要关闭的应用104,并且将所选择的应用104的指示提供给关闭模块118。关闭模块118以各种不同的方式(诸如通过将请求传送给所选择的应用104以将其自身关闭,通过与操作系统102的其它组件或模块通信以终止执行所选择的应用104,等等)中的任一种关闭所选择的应用104。在所选择的应用 104被关闭之后,触发模块114检查是否仍满足之前满足(并且导致所选择的应用104被关闭)的阈值。如果仍满足阈值,则应用选择模块116选择要关闭的另一个应用104。然而, 如果不再满足应用值,则没有额外的应用需要被关闭。可替代地,并非逐个选择应用,而是应用选择模块116可以选择要关闭的多个应用。例如,应用选择模块116可以基于计算设备100的特定资源(例如,计算设备100中特定量的随机存取存储器(RAM)、计算设备100中特定数量的处理器核心等等)确定要保持运行的特定数量的应用。选择一个或多个应用,以使得仅该特定数量的应用被保持运行。应用选择模块116可以以各种不同的方式选择要关闭哪个应用104。在一个或多个实施例中,应用选择模块116从包括在背景中运行的应用的一组应用中选择要关闭的应用。在前景中运行(并且由此可能显示对于用户可能可见的用户界面)的应用不在从其中选择要关闭的应用的组中。应用运行在前景还是背景中是应用的特性,其由系统信息收集模块106保持,并且可以由应用寿命管理模块108从系统信息收集模块106重新获得。另外,在一个或多个实施例中,由应用信息跟踪模块112保持的应用104以及计算设备100的资源的特性由应用选择模块116获得。对于与被满足的阈值相关联的特性,在背景中运行的该组应用被基于其对于该特性的值而被进行优先级安排。应用选择模块116 从在背景中运行的该组应用中选择最引起问题的应用104。该最引起问题的应用104是具有对于该特性的最大或者最高值的应用。例如,具有资源的最高使用的应用104、具有最大年龄值的应用104 (例如,具有最老的年龄的应用104)等等。最不引起问题的应用104于是将是具有资源的最低使用的应用104、具有最年轻的年龄的应用等等。例如,如果满足处理器使用阈值,则应用选择模块116选择具有最大处理器使用的应用作为最引起问题的应用,并且选择该应用作为要关闭的应用。例如,如果存在分别具有20%、5%、4%、4%和3%的处理器使用的五个运行的应用104,则具有20%的处理器使用的应用是具有处理器的最高使用的应用,并且是被选择以关闭的应用。可替代地,可以选择多个应用以关闭(例如,具有 20%的处理器使用的应用以及具有5%的处理器使用的应用)。可替代地,可以使用其它技术来从在背景中运行的该组应用中选择要关闭的应用。例如,在背景中运行的该组应用可以基于每个应用被使用得有多频繁(例如,在应用运行时,应用在前景中运行百分之多少的时间)、基于每个应用上次处于前景中是多久之前等等来被进行优先级安排。被选择为要关闭的应用的应用可以是最不频繁使用的应用、上次处于前景中最早的应用等等。此外,在一个或多个实施例中,一种或多种不同类型的应用被免除被应用选择模块116选择为要关闭的应用。应用选择模块116可被配置有被免除被应用选择模块116选择为要关闭的应用的这一种或多种类型的应用的指示,或者可替代地从另一模块或者设备中获得所述指示。被免除被应用选择模块116选择为要关闭的应用的特定类型的应用可以基于应用选择模块116的设计者或者计算设备100的管理者或用户的期望来以不同的方式确定。应当注意尽管这里讨论了应用104和/或计算设备100的资源的特性以及相关联的阈值的各种示例,这些仅为示例,并且其它特性可以可替代地与这里所讨论的技术一起使用。例如,可以使用诸如在计算设备100上运行的应用104的数量的特性,并且在至少阈值数量的应用104运行在计算设备100上的情况下,触发模块114可以确定阈值已被满足。通过另一示例,不同的阈值可以与不同类型的网络连接相关联,诸如用于蜂窝无线网络连接使用的一个阈值以及用于Wi-Fi网络连接使用的另一个阈值。图2图示了根据一个或者多个实施例的实现应用寿命管理的示例系统200。系统 200可以例如由图1的计算设备100实现。系统200包括应用寿命管理模块202,其可以例如是图1的应用寿命管理模块108。应用寿命管理模块202从系统信息收集模块206接收应用和/或资源特性204。这些应用和/或资源的特性可以例如是关于由图1的应用信息跟踪模块112接收的应用104 和/或计算设备100的资源的各种特性的信息。这些应用和/或资源特性204可以经由诸如图1的系统信息收集模块106之类的另一组件或模块来接收。应用寿命管理模块202也从用户界面管理模块210接收应用标识符208。应用标识符208标识例如当前正在前景中运行的应用。用户界面管理模块210保持当前正在前景中运行的应用的记录,并且为该记录中的应用提供应用标识符208。这些应用标识符可以经由诸如图1的系统信息收集模块106之类的另一组件或模块来接收。应用寿命管理模块202使用应用/资源的特性204以及应用标识符208中的一个或多个来选择要关闭的一个或多个应用212。这一个或多个应用可以以如上文所讨论的不同的方式来选择。这些应用212可以例如是图1中的一个或多个应用104。应用寿命管理模块202将关闭请求或者命令214传送给所述一个或多个应用212。图3是图示根据一个或者多个实施例的用于实现应用寿命管理的设备的示例过程300的流程图。过程300由诸如图1的计算设备100之类的计算设备执行,并且可以以软件、固件、硬件、或其组合来实现。过程300被示出为一组动作,并且不限于所示出的用于执行各种动作的操作的顺序。过程300是用于实现应用寿命管理的设备的示例过程;这里包括参照不同的附图的实现应用寿命管理的额外的讨论。在过程300中,进行关于阈值是否被超过的检查(动作302)。如上文所讨论的,此阈值是与在计算设备上运行的应用和/或计算设备的资源的特性相关联的阈值。如果没有超过阈值,则允许运行在计算设备上的应用继续在计算设备上运行(动作304)。然后,重复动作302 (例如,以规则或者不规则的间隔)。然而,如果超过了阈值,则选择要关闭的一个或多个应用(动作306)。这一个或多个应用可以以如上文所讨论的不同的方式来选择。在动作306中选择的该一个或多个应用被关闭(动作308)。然后,重复动作302 (例如,以规则或者不规则的间隔)。图4是图示根据一个或者多个实施例的用于选择要关闭的一个或者多个应用的示例过程400的流程图。过程400由诸如图1的计算设备100之类的计算设备执行,并且可以以软件、固件、硬件或者其组合来实现。过程400被示出为一组动作,并且不限于所示出的用于执行各种动作的操作的顺序。过程400是用于选择要关闭的一个或多个应用的示例过程;这里包括参照不同的附图的选择要关闭的一个或多个应用的额外的讨论。过程400典型地响应于与运行在计算设备上的应用和/或计算设备的资源的特性相关联的阈值被满足而被启动。在过程400中,生成背景应用的列表(动作402)。背景应用是在计算设备上在背景中运行的应用。可选地,将被免除被关闭的一个或多个应用从所生成的列表中去除(动作404)。不同类型的应用可以被免除被关闭,如上文所讨论的。保留在所生成的列表上的应用被进行优先级安排(动作406)。所述应用可以以不同的方式来被进行优先级安排,诸如根据特定资源(例如与被满足的阈值相关联的资源)的使用、年龄、使用频率等等来进行优先级安排。
选择在所生成的列表上的应用(动作408)。在动作408中选择的应用是被优先级安排为最高的应用(例如具有资源的最高使用,具有最老的年龄,具有最低的使用频率等寸J。关闭所选择的应用(动作410)。可以以如上文所讨论的不同方式来关闭所选择的应用。然后,进行关于阈值是否仍被满足的检查(动作412)。如果阈值仍被满足,则过程 400返回到动作408以选择另一应用。可替代地,过程400可以返回到动作402以重新生成背景应用的列表。如果阈值不再被满足,则过程400完成(动作414)。另外,如果可被关闭的所有应用(例如,所有背景应用、未被免除被关闭的所有应用等等)已经被关闭,则即使仍满足阈值,过程400也完成(动作414)。参照生成列表并且从该列表中去除被免除被关闭的应用来讨论过程400。可替代地,背景应用的列表可被生成和进行优先级安排,所生成的列表上的应用可被选择,并且然后,仅在所选择的应用未被免除被关闭的情况下,应用可以被关闭。这里所讨论的技术支持各种使用情景。例如,如果特定的背景应用使用处理器(或存储器)的大量的性能,则可以将该特定的背景应用选择为要关闭的应用。由此,未处于前景中并且当前未被设备100的用户使用的背景应用被自动关闭,并且被该背景应用使用的资源被释放以供其它应用使用。并非简单地关闭上次使用最早的应用,具有高的释放资源以供其它应用使用的可能性的应用是被关闭的应用。还应当注意这里讨论的应用寿命管理技术为用户减轻了在他或她的计算设备上管理多个应用的一些负担。用户可以在他或她期望时运行应用,而不用考虑在他或她不再使用那些应用时关闭那些应用。相反,这里讨论的应用寿命管理技术自动地关闭用户的应用,关照关闭背景应用,而不是当前被用户使用的应用。图5图示了根据一个或者多个实施例的可被配置为实现应用寿命管理的示例计算设备500。计算设备500可以例如是图1的计算设备100。计算设备500包括一个或多个处理器或处理单元502 (其中每个可以包括一个或多个处理器核心)、可以包括一个或多个存储器和/或存储组件506的一个或多个计算机可读介质504、一个或多个输入/输出(I/O)设备508、以及允许各种组件和设备彼此通信的总线510。计算机可读介质504和/或一个或多个I/O设备508可以作为计算设备500的一部分而被包括,或者可替代地可被耦接到计算设备500。总线510表示使用各种不同的总线架构的若干类型的总线结构的一个或多个,包括存储器总线或存储器控制器、外围总线、 图形加速端口、处理器或局部总线等等。总线510可以包括有线和/或无线总线。存储器/存储组件506表示一个或多个计算机存储介质。组件506可以包括易失性介质(诸如随机存取存储器(RAM))和/或非易失性介质(诸如只读存储器(ROM)、闪存、光盘、磁盘等等)。组件506可以包括固定介质(例如RAM、ROM、固定硬盘驱动器等等)以及可移动介质(例如闪存驱动器、可移动硬盘驱动器、光盘等等)。这里讨论的技术可以以软件实现,其中指令由一个或多个处理单元502执行。应理解不同的指令可以存储在计算设备500的不同组件中,诸如在处理单元502中、在处理单元502的各种高速缓存中、在设备500的其它高速缓存(未示出)中,在其它计算机可读介质上等等。另外,应理解指令存储在计算设备500中的位置可以随时间改变。一个或多个输入/输出设备508允许用户向计算设备500输入指令和信息,并且还允许将信息呈现给用户和/或其它组件或设备。输入设备的示例包括键盘、光标控制设备(例如鼠标)、麦克风、扫描仪等等。输出设备的示例包括显示设备(例如监视器或投影仪)、扬声器、打印机、网卡等等。这里,各种技术可以在软件或程序模块的一般上下文中描述。通常,软件包括执行特定任务或者实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。这些模块和技术的实现方式可以存储在一些形式的计算机可读介质上或者跨所述计算机可读介质传输。计算机可读介质可以是可以由计算设备访问的任何可用的一个或多个介质。通过示例、 而非限制,计算机可读介质可以包括“计算机存储介质”和“通信介质”。“计算机存储介质”包括以存储诸如计算机可读指令、数据结构、程序模块、或其它数据之类的信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括、但不限于RAM、ROM、EEPR0M、闪存或者其它存储器技术、CD-ROM、数字多用途盘(DVD)或其它光存储装置、磁带盒、磁带、磁盘存储装置或者其它磁存储设备、或者可被用于存储期望的信息并且可被计算机访问的任何其它的介质。“通信介质”典型地包含计算机可读指令、数据结构、程序模块或者诸如载波或者其它传输机制之类的调制数据信号中的其他数据。通信介质还包括任何信息传递介质。术语“调制数据信号”意指以将信息编码在信号中的方式设置或改变其特征中的一个或多个的信号。通过示例而非限制,通信介质包括诸如有线网络或直接有线连接之类的有线介质、 以及诸如声学、RF、红外、以及其它无线介质之类的无线介质。上面的内容的任何的组合也包括在计算机可读介质的范围内。通常,这里描述的任何功能或技术可以使用软件、固件、硬件(例如固定逻辑电路)、手动处理、或者这些实现方式的组合来实现。这里使用的术语“模块”和“组件”通常表示软件、固件、硬件或者它们的组合。在软件实现方式的情况下,模块或组件表示当在处理器(例如一个或多个CPU)上执行时执行所指定的任务的程序代码。程序代码可以存储在一个或多个计算机可读存储器设备中,其进一步的描述可以参照图5来找到。这里描述的应用寿命管理技术中的特征是独立于平台的,这意味着所述技术可以在具有各种处理器的各种商业计算平台上实现。尽管以特定于结构特征和/或方法动作的语言描述了主题,但是应理解所附权利要求中限定的主题不一定限于上面描述的特定特征或动作。相反,上面描述的特定特征和动作作为实现权利要求的示例形式而被公开。
权利要求
1.一种运行多个应用的计算设备中的方法,所述方法包括检查(302)是否满足多个阈值中的阈值,所述多个阈值中的每个阈值与多个应用之一的特性或者计算设备的资源的特性相关联;如果阈值未被满足,则允许(304)多个应用继续在计算设备上运行;以及如果阈值已被满足,则至少部分地基于与已被满足的阈值相关联的特性来选择(306)多个应用中要关闭的一个或多个,以及关闭(308 )所述一个或多个应用。
2.如权利要求1所述的方法,其中阈值与其相关联的计算设备的资源的特性是多个应用对计算设备的处理器核心的使用。
3.如权利要求1所述的方法,其中阈值与其相关联的计算设备的资源的特性是多个应用中的单个应用对计算设备的处理器核心的使用。
4.如权利要求1所述的方法,其中阈值与其相关联的计算设备的资源的特性是计算设备的存储器的使用。
5.如权利要求1所述的方法,其中阈值与其相关联的计算设备的资源的特性是计算设备的存储设备的使用。
6.如权利要求1所述的方法,其中阈值与其相关联的计算设备的资源的特性是计算设备的周期性网络使用。
7.如权利要求1所述的方法,其中阈值与其相关联的应用的特性是多个应用之一的年龄,其中多个应用之一的年龄指示多个应用之一上次处于前景中是多久之前。
8.如权利要求1所述的方法,其中如果计算设备操作为依靠电池的系统,则阈值是第一阈值;如果计算设备操作为接通电源的系统,则阈值是第二阈值,其中第一阈值和第二阈值是不同的阈值。
9.如权利要求1所述的方法,其中选择多个应用中要关闭的一个或多个包括识别多个应用中被免除被关闭的至少一个,其中多个应用中的所述至少一个包括在前景中运行的应用;以及将除了多个应用中所述至少一个之外的一个或多个应用选作多个应用中要关闭的一个或多个。
10.如权利要求1所述的方法,其中阈值与计算设备的资源相关联,并且其中选择多个应用中要关闭的一个或多个包括选择多个应用中具有资源的最大使用的一个。
11.一种计算设备,包括 处理器(502);以及一个或多个计算机可读介质(504),其上存储有多个指令,当所述多个指令被处理器执行时使得处理器生成(402)运行在计算设备上的背景应用的列表;至少部分地基于由列表上的背景应用对计算设备的资源的使用,对列表上的背景应用进行优先级安排(406);选择(408)背景应用的列表上的应用;以及关闭(410)所选择的应用。
12.如权利要求11所述的计算设备,其中多个指令还使得处理器重复应用的选择以及关闭所选择的应用,直到计算设备的资源的使用不满足阈值为止。
13.如权利要求12所述的计算设备,其中如果计算设备操作为依靠电池的系统,则阈值是第一阈值;如果计算设备操作为接通电源的系统,则阈值是第二阈值,其中第一阈值和第二阈值是不同的阈值。
14.如权利要求11所述的计算设备,其中选择列表上的应用是选择列表上具有资源的最大使用的应用。
15.如权利要求11所述的计算设备,其中多个指令还使得处理器响应于与资源相关联的阈值被满足来执行生成、优先级安排、选择以及关闭。
全文摘要
在运行多个应用的计算设备中,进行关于是否满足多个阈值中的阈值的检查。所述多个阈值中的每个阈值与多个应用之一的特性或者计算设备的资源的特性相关联。如果阈值未被满足,则允许多个应用继续在计算设备上运行。然而,如果阈值已被满足,则至少部分地基于与已被满足的阈值相关联的特性来选择多个应用中要关闭的一个或多个,并且关闭所选择的应用。
文档编号G06Q10/06GK102436605SQ20111032725
公开日2012年5月2日 申请日期2011年10月25日 优先权日2010年10月25日
发明者B. 艾尔 A., 艾哈迈德 H., 黄 H., T. 泽拉勒姆 K., H. 克劳泽 M., N. 秦 Y., 尚 Y., A. 波津 Z. 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1