推迟挂起的制作方法

文档序号:6370320阅读:122来源:国知局
专利名称:推迟挂起的制作方法
技术领域
本描述涉及计算装置的电源管理,且更具体来说涉及基于计算装置所执行的ー个或ー个以上任务延迟或推迟计算装置的电源状态的改变。
背景技术
现代计算装置(例如,桌上型计算机、膝上型计算机、笔记型计算机、平板计算机、智能电话等)一般可在多个电源模式或电源状态中的一者下操作。这些电源模式可介于其中计算装置被完全供电且可操作的“工作”电源模式到其中所述装置完全断电且不可操作的“断开”电源模式之间。传统上,这个“工作”电源模式是计算装置的默认操作模式。然而,在这两个电源模式(工作和断开)之间存在多个电源模式,所述多个电源模式折衷ー些功能的性能特性来交换省电或減少的电カ消耗。
·
举例来说,计算装置的低电源状态可称作“备用”、“睡眠”、“挂起到RAM”、“挂起到存储器”或“挂起”。高级配置与电源接ロ(ACPI)电源状态S3。在此低电源状态下,除了给需要恢复计算装置的状态的随机存取存储器(“RAM”)供电之外,计算装置试图減少或切断供到机器的所有不需要部分的电カ(例如,硬盘停止旋转,使显示器置于黑暗或低电源状态,及降低外围装置的供电)。此低电源状态常称作备用(用于运行微软视窗(MicrosoftWindows) 95-服务器2003操作系统的计算装置),或称作睡眠(用于运行苹果(Apple)操作系统或视窗远景(Windows Vista)、视窗7、视窗服务器2008操作系统的计算装置),或挂起(用于运行里纳克斯(Linux)操作系统的计算装置)。在此状态下,计算装置的处理功能被断电,且ー些少量电カ用以保存RAM的内容和支持将计算装置从低电源状态唤醒到正常、工作或全电源状态。当使计算装置置于备用、睡眠或挂起到RAM状态时,与所述装置处于工作或全电源模式下所消耗的电カ相比,此通常消耗小于约20%的总电力。然而,虽然电カ消耗与工作电源模式相比大大地減少,但睡眠电源模式要求电カ恒定地被供应和消耗,以便供电或刷新易失性存储器(例如,RAM)以免操作状态从易失性存储器被擦除。在另ー实例实施中,计算装置的低电源状态可称作“冬眠(Hibernate) ”、“休眠(Hibernation) ”、“安全睡眠”、“挂起到硬盘”、“挂起到文件”或ACPI电源状态S4。在此状态下,在使计算装置断电之前,将计算装置的RAM的内容写入到例如硬盘等非易失性存储器,作为文件或写入到単独分区上。当计算装置重新启动时,其重新加载已写入到非易失性存储器的数据且恢复到在调用休眠时其所处的状态。为了启用休眠,硬盘必须具有充分的自由空间以存储RAM的所有不可替代内容。此低电源状态常称作冬眠(用于运行微软视窗(Microsoft Windows) 95-服务器2003和视窗7操作系统的计算装置)、快速睡眠(用于运行微软远景(Microsoft Vista)操作系统的计算装置)、安全睡眠(用于运行苹果(Apple)操作系统的计算装置)、或挂起到硬盘(用于运行里纳克斯(Linux)操作系统的计算装置)。当使计算装置置于冬眠、安全睡眠或挂起到硬盘状态时,其通常消耗约与所述装置断电时所消耗的电カー样多的电カ。休眠且稍后重新启动通常比关机、稍后开机且启动之前运行的所有程序快。

发明内容
根据ー个一般方面,ー种方法可包含在第一电源模式中操作计算装置。所述方法还可包含通过所述计算装置的处理器执行至少ー个非交互式任务。所述方法还可包含通过所述计算装置的处理器检测将所述计算装置置于第二电源模式中的请求,其中所述第二电源模式消耗比所述第一电源模式少的系统资源。所述方法可进ー步包含延迟所述计算装置到所述第二电源模式的转变直到所述非交互式任务的完成或越权触发事件中的任ー者为止。根据另一一般方面,一种设备可包含处理器和电源管理器。所述处理器可将执行至少ー个非交互式任务。所述电源管理器可经配置以使所述设备在多个电源模式中的一者下操作;检测将所述设备从在第一电源模式下操作转变到在第二电源模式下操作的请求,其中所述第二电源模式包含消耗比所述第一电源模式少的系统资源的电源模式;以及推迟所述设备到所述第二电源模式的所述转变直到所述非交互式任务的完成或越权触发·事件的发生中的任ー者为止。根据另一一般方面,一种用于管理系统资源的计算机程序产品包含可执行代码,所述可执行代码在被执行时经配置以使计算设备在第一电源模式中操作计算装置。所述代码还可使所述装置通过所述计算装置的处理器执行至少ー个非交互式任务。所述代码在被执行时可进ー步使所述装置检测将所述计算装置置于第二电源模式中的请求,其中所述第ニ电源模式包含消耗比所述第一电源模式少的系统资源的电源模式。所述代码还可使所述装置延迟所述计算装置到所述第二电源模式的转变直到所述非交互式任务的完成或越权触发事件中的任ー者为止。所述计算机程序产品可有形地体现在计算机可读媒体上。在附图和下文描述中陈述ー个或ー个以上实施的细节。其它特征将从描述和图式以及从权利要求书中显而易见。实质上如展示于诸图中的至少ー者中和/或结合诸图中的至少ー者描述的用于管理计算装置的系统资源的系统和/或方法更完整地陈述于权利要求书中。


图I是根据所掲示标的物的系统的实例实施例的框图。图2是根据所掲示标的物的系统的实例实施例的一系列图式。图3是根据所掲示标的物的存储器结构的实例实施例的一系列图式。图4是根据所掲示标的物的技术的实例实施例的流程图。图5是根据所掲示标的物的设备或系统的实例实施例的框图。相同的元件符号在各图中指示相同的元件。
具体实施例方式图I是根据所掲示标的物的系统100的实例实施例的框图。在各种实施例中,系统100可包含由用户190控制或使用的客户端或计算装置102。在一些实施例中,计算装置102可包含桌上型计算机、膝上型计算机、平板计算机、智能电话、专用的专业计算装置或经配置以处理信息的其它装置。在一些实施例中,计算装置102可包含处理器110,处理器110经配置以处理或执行指令,例如由应用程序140或非交互式任务144定义或包含的指令等。计算装置102可包含经配置以存储指令和/或数据的ー个或ー个以上存储器元件112 (例如,易失性存储器或非易失性存储器等)。在各种实施例中,计算装置102可包含经配置以向计算装置102提供电カ的电池116或其它电源供应器。在一些实施例中,计算装置102可经配置以从外部电源182接收电力。在一些实施例中,计算装置102可包含监视器或显示器120来以图形方式向用户190显示信息。在各种实施例中,计算装置102中可包含其它硬件组件118 (例如,扬声器、键盘、触摸屏、传感器等)。而且,在一些实施例中,计算装置102可包含经配置以促进计算装置102在网络环境内操作的ー个或ー个以上网络接ロ 114。在各种实施例中,网络接ロ 114可包含无线网络接ロ、有线网络接ロ、无线局域网(WLAN)接ロ(例如,实质上遵照电气和电子工程师协会(IEEE)无线网络标准802. Ilb,802. llg、802. Iln等的接ロ),或蜂窝式网络接ロ(例如,实质上遵照码分多址(CDMA)、2000全球移动通信系统(GSM)、第三代合作伙伴计划(3GPP)、长期演进(LTE)等蜂窝式通信标准的接ロ),或其它网络接ロ(例如,蓝牙等)。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。在各种实施例中,计算装置102可执行ー个或ー个以上任务(例如,应用程序140、非交互式任务144等)。在一些实施例中,这些任务中的ー些可能涉及到与用户190的交互。此些交互式任务可包含应用程序140 (例如,文字处理程序、网页浏览器等)。相反地,其它任务可能不涉及到用户190交互或可能涉及到最少用户交互。这些非交互式任务114和146也可被称作“后台任务”或“后台进程”。一般来说,此些非交互式任务144是这样一些任务或进程,即,其在“幕后”执行且如果需要与用户190交互也只是需要极少交互。此些非交互式任务144可包含(但不限干)例如以下各项的任务更新软件、下载文件、日志、系统监视、调度等。

在各种实施例中,任务可在交互式(前台)与非交互式(后台)处理和状态之间切換状态。举例来说,应用程序140 (例如,音乐播放器、下载程序等)可在交互式模式下启动且可被置于后台或非交互式状态,在这一点上任务可被视为非交互式任务144。在另ー实施例中,非交互式任务144可由子系统124、组件或由计算装置102执行的其它进程(例如,更新管理器122、音频管理器、下载管理器、数字版权管理器、系统调度程序等)来起始。因而,非交互式任务144可以在不知道用户190或不与用户190交互的情况下发生。而且,非交互式任务144可基于调度、计算装置102内部的事件(例如,来自应用程序140的错误或消息、来自例如网络接ロ 114等硬件组件的消息等)或外部事件(例如,来自外部服务器184的消息,例如软件更新通知,电源182的去除等)来起始。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。在各种实施例中,计算装置102可经配置以在ー个或ー个以上电源模式(例如,エ作电源模式、挂起电源模式、ACPI电源模式(如上文所描述)等)下操作。在此些实施例中,计算装置102可经配置以从第一电源模式(例如,工作电源模式)转变到第二、第三或甚至第四电源模式(例如,挂起电源模式、休眠电源模式、断开电源模式等)。同样地,计算装置102也可经配置以从第二(或其它)电源模式转变到第一电源模式或另ー电源模式。
在此实施例中,计算装置102所包含的电源管理器130可接收在两种电源模式之间改变(例如,工作到挂起、断开到工作等)的请求(例如,来自用户190、网络接ロ 114或其它来源等)。传统上,电源管理器130将计算装置102置于所请求的电源模式下实质上在瞬间发生或不存在故意延迟。然而,在所说明实施例中,电源管理器130可基于ー个或ー个以上延迟条件来故意延迟电源模式的改变,在下文对所述延迟条件中的一些进行更详细的描述。在一个实施例中,计算装置102可执行非交互式任务144。在所说明实施例中,非交互式任务144可由更新管理器122起始。在此实施例中,服务器184可告知更新管理器122—项或ー项以上软件(例如,应用程序140等)可需要更新。更新管理器122可接着起始更新任务144。此更新任务144可以是如果需要与用户190交互也只是需要极少交互的非交互式进程。在此实施例中,更新可在“后台”发生,而不会被用户190直接看到或需要用户190介入。在此实施例中,更新任务144可包含从服务器184下载或传送(Xfr) 184 一个或ー个以上文件。应理解,上述内容只是ー个说明性实例,所掲示标的物并不限于此。在另ー实施例中,其它非交互式任务146可由计算装置102执行。举例来说,在一·个实施例中,应用程序140可起始非交互式任务146,例如上载/下载文件141、创建或处理文件141 (例如,视频编码、将源代码编译成可执行文件等)、监视系统进程或其它应用程序等。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。在又一实施例中,计算装置102所包含的另一子系统124或操作系统142可起始非交互式任务144。在各种实施例中,此些子系统可包含输入装置管理器、音频管理器子系统、数字版权管理器等。举例来说,操作系统142可起始无用单元收集以减少存储器112的使用,或音频管理器可从服务器184(例如,因特网无线电台等)串流传输音频信号。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。虽然应理解上述内容只是几个说明性实例而所掲示标的物并不限于此,但是将使用由更新管理器122起始的更新进程非交互式任务144的实例来论述所说明的实施例。应理解,其它非交互式任务146可由其它技术起始或控制,且不同于更新软件的任务可包含于其它实施例中。在所说明实施例中,更新管理器122可起始非交互式任务144。在一个实施例中,更新管理器122或操作系统142可告知电源管理器130计算装置102正在执行非交互式任务144。虽然參看图3更详细地描述,但在图I的所说明实施例中,更新管理器122或其它组件可在电源管理器130的存储器部分或存储器112的部分中设置标志(例如,I位值或多位值)132,从而指示正在执行非交互式任务144。相反地,当非交互式任务144完成或不再被执行时,可清除标志132。在此实施例中,电源管理器130可仅使自身与相应标志132相关联的任务有夫。应理解,上述内容只是ー个说明性实例,所掲示标的物并不限于此。在所说明实施例中,电源管理器130可检测或接收将计算装置102置于降低电源模式(reduced power mode)的请求。计算装置102可能已经在第一电源模式(例如,工作电源模式)下操作。降低电源模式可包含消耗比第一或工作电源模式少的系统资源的电源模式(例如,挂起电源模式或休眠电源模式等)。在此上下文中,“系统资源”包含处理资源(例如,由处理器110提供)、存储器利用(由存储器112提供)、电カ或电消耗(由电池116或外部电源182提供)、网络资源(例如,带宽利用、带宽成本(例如,传送每兆字节可能花费用户190的钱,等等))等。在各种实施例中,电源管理器130可经配置以监视和/或预测计算装置102在给定电源模式(例如,工作电源模式)下消耗或可能消耗的系统资源的量。而且,电源管理器130可监视或能察觉到计算装置102的各种系统资源的水平(例如,电池充电水平、用户190毎月网络使用限制所剰余的带宽量等)。在所说明实施例中,电源管理器130可检测计算装置102正在执行非交互式任务144。电源管理器130可延迟将计算装置102转变到所请求的第二电源模式,直到完成非交互式任务144为止。在此实施例中,计算装置102可保持在第一或工作电源模式中,直到完成非交互式任务144为止。在一些实施例中,如果电源管理器130是要在完成非交互式任务144之前将计算装置102转变到第二或降低电源模式,那么非交互式任务144可能会失败(整体或部分)。举例来说,如果更新任务144正在下载文件(传送186),那么使计算装置102置于挂起电源模式可能会使文件不是不能被下载就是部分下载好的版本被破坏。在此实施例中,一旦计·算装置102重新进入工作电源模式,更新管理器122随即可请求再次传送或下载整个文件。在此实施例中,在挂起电源状态之前用以部分下载中断或失败的更新文件的系统资源(例如,网络带宽、用户190网络使用限制等)可能被浪费。可涵盖其它形式的失败或部分完成的非交互式任务144和此失败或部分完成的后果。应理解,上述内容只是ー个说明性实例,所掲示标的物并不限于此。在所说明实施例中,可延迟将计算装置102转变到所请求的第二电源模式,直到完成非交互式任务144为止。在一些实施例中,非交互式任务144或与非交互式任务144相关联的组件、子系统或程序可向电源管理器130指示非交互式任务144何时完成。在一些实施例中,此情况可包含向电源管理器130发送消息,或在另ー实施例中,写入或清除来自由电源管理器130定期检查的存储器位置的值。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。在一些实施例中,与仅成功完成相反,非交互式任务144的完成结果可能会是完全失败或部分失败。举例来说,非交互式任务144可包含从网络资源(例如,服务器184等)接收文件。在传送186期间,网络资源184可能会变成不可用的(服务器184可能崩溃、离线等),且非交互式任务144可能会因为不能完成传送186而失败。在此实施例中,电源管理器130可认为非交互式任务144已完成,且接着中止延迟计算装置102到所请求的第二电源模式的转变。如上文所描述,非交互式任务144或与非交互式任务144相关联的组件、子系统或程序可向电源管理器130指示非交互式任务144何时已完成,即便非交互式任务144不能成功地完成其所指定的任务。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。在一个实施例中,电源管理器130可经配置以检测正在执行非交互式任务144,并确定计算装置102是否包含足够的系统资源来推迟或延迟第一电源模式与第二电源模式之间的转变。在此实施例中,电源管理器130可包含ー个或ー个以上系统资源阈值或规则134。在简单实施例中,电源管理器130可包含阈值水平或规则132,阈值水平或规则132指示如果计算装置102正在利用外部电源182(例如,基本上无限的电カ等),那么可延迟转变到第二电源模式,但是如果计算装置102正在利用电池116(例如,有限量的电カ等),那么不可延迟转变到第二电源模式。在其它实施例中,电源管理器130可使用更复杂的规则或阈值132。举例来说,电源管理器130可确定网络接ロ是正在利用WLAN连接(例如,可能是不计量或免费的网络连接、中等带宽或通过量的连接等)还是蜂窝式网络连接(例如,计量或昂贵的网络连接、低带宽或通过量的网络连接等)。在此实施例中,电源管理器130可基于以下各者来确定是否延迟计算装置102的转变所提供的系统资源的类型(例如,WLAN对蜂窝式等)和/或系统资源的量(例如,电池116对外部电源184、蜂窝式带宽使用限制等),或其它因素(例如,系统资源的预期消耗速率,例如用户190的蜂窝式带宽使用、蜂窝式带宽使用限制和在蜂窝式带宽使用限制再新之前的时间量;自从请求降低电源模式以来的时间量,等)。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。在一些实施例中,在延迟转变到降低电源模式的时段期间,电源管理器130可积极地监视系统资源水平并将这些系统资源水平与阈值134进行比较。在此实施例中,如果系统资源水平超过或以其它方式跨越阈值水平134,那么电源管理器130可经配置以中止推迟到降低电源模式中的转变,并且改为将计算装置102转变到降低电源模式,不管是否·仍正在执行非交互式任务144。在各种实施例中,此事件(例如,超过系统资源阈值等)可经由术语“越权触发事件”来概括。在此上下文中,越权触发事件136可包含由电源管理器130监视或接收的任何事件,所述事件使电源管理器130中止推迟到降低电源模式的转变。此些越权触发事件136可包含(但不限干)系统资源水平的改变、对第一或第三电源模式的请求、系统错误(例如,电池118丢失/去除、存储器112中的奇偶错误等)、用户190起始的对降低电源模式推迟的越权,等。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。在一些实施例中,在接收到或辨识出越权触发事件134之后,电源管理器130随即可将计算装置转变到降低电源模式,这实质上是瞬时发生的或不存在进ー步的异常延迟。应理解,在电源模式之间转变的过程通常可能会花费ー些时间,例如来将信息(例如,操作状态、存储器内容等)写入到由目标或较新电源模式规定的存储媒体(例如,对于挂起电源模式来说是易失性存储器、对于休眠电源模式来说是非易失性存储器等)。在此实施例中,正常转变过程中所包含的延迟可能发生。然而,在其它实施例中,电源管理器130可使其对越权触发事件134的反应基于将ー个或ー个以上类型的越权触发事件134与相应动作相关联的ー组规则。举例来说,如果越权触发事件134是由系统资源減少到阈值134以下引起的,那么电源管理器130可将计算装置102置于降低电源模式中,如上文所描述。相反地,如果越权触发事件134是由将计算装置置于第一或工作电源模式的请求引起的,那么电源管理器130可忽略或收回将计算装置102置于降低电源模式中的先前请求,使得如果降低电源模式的推迟意指计算装置在第一或工作电源模式中决不离开,那么使计算装置102处于工作电源模式中。在又一实施例中,如果越权触发事件134是由将计算装置置于第三或休眠电源模式的请求引起的,那么电源管理器130可忽略或收回将计算装置102置于第二或挂起电源模式中的先前请求,且改为推迟将计算装置102置于新请求的第三或休眠电源模式中。在此实施例中,电源管理器130可重新评估到第三电源模式的转变的推迟是否可发生。在各种实施例中,电源管理器130可包含用于不同电源模式或电源模式转变(例如,从工作到挂起、从工作到休眠等)的不同阈值或规则集合。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。如下文參看图3所描述,电源管理器130可使其关于是否推迟到所请求的电源模式的转变的决策至少部分基于由与非交互式任务144相关联的组件、子系统或程序提供的信息。举例来说,在各种实施例中,更新管理器122(或在其它实施例中为相应子系统)可向电源管理器130不仅指示正在执行非交互式任务144而且还指示关于所述非交互式任务144的预期执行的信息。在一些实施例中,更新管理器122可向电源管理器130指示完成非交互式任务144将花费多少时间(例如,以秒、处理器110时钟周期等来计),或更新管理器122可指示非交互式任务144的执行预期消耗ー个或ー个以 上系统资源中的多少资源(例如,兆字节带宽、处理器110时钟周期、存储器112使用等)。在各种实施例中,这些值可随标志或值132 —起包含或作为标志或值132的部分。应理解,上述内容只是几个说明性实例,所揭示标的物并不限于此。在一些实施例中,如果关于非交互式任务144的估计或信息改变,那么与非交互式任务144相关联的组件、子系统或程序可更新电源管理器130。举例来说,在一个实施例中,完成非交互式任务144的时间的估计可增加或减小。同样地,完成非交互式任务144将使用的系统资源的量的估计可加以调整或更新。在各种实施例中,电源管理器130可请求此些更新。电源管理器130可接着基于所更新的信息来重新评估推迟转变的决策。在另ー实施例中,与非交互式任务144相关联的组件、子系统或程序可用未经请求的方式来提供更新。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。在此实施例中,如上文所描述,电源管理器130可将所指示的系统资源使用、到完成所用的时间,或关于非交互式任务144的其它所指示信息与ー个或ー个以上阈值134比较。举例来说,更新管理器122可指示更新非交互式任务144预期在10分钟之后完成(例如,循环频率为IGHz的6X IO12个循环)。电源管理器130可确定在接收到的转变到降低电源模式的请求之前,更新非交互式任务144已执行了 8分钟,且因此预期2分钟以上的执行。电源管理器130可接着确定在预定又阈值或规则134内推迟降低电源模式2分钟是否为可接受的。在另ー实施例中,电源管理器130可(例如)通过平均法来计算或估计可能消耗的系统资源的量,且将所述系统资源消耗与预定义阈值或规则134比较。在又一实施例中,更新管理器122可指示更新非交互式任务144预期下载某些量的数据(例如,以兆字节来测量)。此外,电源管理器130可确定在预定义阈值或规则134内此系统资源消耗是否被允许。在一些实施例中,电源管理器130可使所述确定基于所指示的最大系统资源消耗水平。在其它实施例中,电源管理器130可基于由其它因素(例如,确定或请求进入降低电源模式之前的系统资源消耗、固定倍増器(例如,110%)等)修改的所指示的系统资源消耗水平来调整预期的系统资源消耗水平。在一些实施例中,在系统资源被非交互式任务144消耗吋,指示代理(例如,更新管理器122、操作系统142、子系统124等)可更新系统资源指示。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。在此实施例中,越权触发事件136可由电源管理器130确定非交互式任务144所消耗或预期消耗的系统资源(例如,带宽、执行时间、电カ等)的量超过阈值或规则134而创建或引起。应理解,此确定无需仅在接收到对第二电源模式的请求时才发生。此确定可发生在推迟降低电源模式的转变的时段期间。如上文所描述,检测到越权触发事件136可使电源管理器130开始将计算装置102转变到所请求的降低电源模式(例如,挂起电源模式等)。在越权触发事件136发生在确定是否延迟或推迟到降低电源模式的转变期间的情况下,电源管理器130可确定不延迟所述转变。如上文所描述,在各种实施例中,某些越权触发事件134(例如,对重新进入第一电源模式的请求等)的发生可使电源管理器130执行另ー种动作,而不是将计算装置102转变到所请求的降低电源模式(例如,对进入降低电源模式的请求可能被收回等)。在各种实施例中,在到第二或降低电源模式(例如,挂起电源模式等)的转变被延迟或推迟的时段期间,电源管理器130可将计算装置102置于或转变到第三电源模式。在此实施例中,第三电源模式(例如,如果第二电源模式是挂起电源模式,那么第三电源模式在此上下文中被称作“伪挂起电源模式”,等)可包含消耗比第一电源模式(例如,工作电源模式等)少的系统资源但少于所请求的第二电源模式(例如,挂起电源模式等)的电源模式。
·
在此实施例中,电源管理器130可推断出通过请求将计算装置102置于第二电源模式,用户190不希望使用计算装置102的ー些部分或更改计算装置102的部分的性能。在一个实施例中,电源管理器130可部分地或选择性地将计算装置102的部分转变到第二电源模式。到第二电源模式(例如,挂起电源模式)的此部分或选择性转变可被称作第三电源模式(例如,伪挂起电源模式)。在各种实施例中,第三电源模式和选择性地或部分地转变到第二电源模式的计算装置102的部分可以是预定义的。在另ー实施例中,选择性地或部分地转变到第二电源模式的计算装置102的部分可基于非交互式任务144预期消耗的系统资源而动态地确定。在具体实施例中,如果所请求的第二电源模式是挂起电源模式,那么电源管理器130可推断出用户190不再希望与计算装置102交互。因而,电源管理器130可将计算装置置于第三或伪挂起电源模式中,在所述电源模式中,显示器120和音频子系统124等被关闭或被置于等效于(对于那些组件来说)第二或挂起电源模式的电源模式中。然而,执行非交互式任务144所需或预期需要的其它组件(例如,处理器110、存储器112和ー个或ー个以上网络接ロ 114)可保持在第一或工作电源模式中。因而,第三或伪挂起电源模式可包含如下电源模式,在所述电源模式中,计算装置102的第一部分(例如,处理器110等)是在第一或工作电源模式中操作,且计算装置102的第二部分(例如,显示器120等)是用所请求的第二或挂起电源模式来操作。可延迟或推迟将整个计算装置102 (第一和第二部分,如上文所描述)转变到所请求的第二或挂起电源模式中,直到非交互式任务144的完成或越权触发事件136为止,如上文所描述。应理解,上述内容只是ー个说明性实例,所掲示标的物并不限于此。在各种实施例中,ー个或ー个以上非交互式任务144和146可由计算装置102执行。在此实施例中,在接收到进入第二电源模式的请求之后,电源管理器130随即可检测或确定执行任务或进程中的一者或一者以上是否为可造成到第二电源模式的转变的延迟或推迟的任务或进程。如上文所描述,在一个实施例中,此检测可由标志或其它值132辅助。如果至少一个任务(例如,任务144)造成延迟,那么到第二电源模式的转变可被延迟,如上文所描述。在一个实施例中,电源管理器130可使在到第二电源模式的转变过程中不造成延迟的任务或进程(例如,应用程序140且在此实例中为任务146)中止或暂停其相应执行。在此实施例中,可以用与好像计算装置102已进入第二电源模式的情况类似的方式来中止或暂停这些非延迟任务或进程的执行。在一个实施例中,其中ー个以上的非交互式任务可使电源管理器130延迟或推迟到第二电源模式的转变。在一个实施例中,电源管理器130可仅允许所有造成延迟的非交互式任务(例如,任务144和146)执行,直到可用于装置102的系统资源的当前水平落到阈值134以下且产生越权触发事件136为止。接着,如上文所描述,电源管理器130可将计算装置102转变到所请求的第二电源模式,即使非交互式任务144和146中的一者或ー者以上可能尚未完成其执行。相反地,可能不会产生越权触发事件136,且所有非交互式任务可被完全执行,在这一点上,电源管理器103将计算装置102转变到所请求的第二电源模式,如上文所描述。在另ー实施例中,给出阈值或规则134和任务的执行所必需的预期系统资源消耗,电源管理器130可经配置以确定是否延迟非交互式任务144和146全部或选定的几个或无ー者可被执行。电源管理器130可经配置以使(例如,经由到操作系统142的消息等)··未预期在产生越权触发事件136之前完成的ー个或ー个以上任务的执行被中止或暂停。在此实施例中,在延迟计算装置102到所请求的第二电源模式的转变的同时,可执行剩余的非交互式任务。在此实施例中,电源管理器130可经配置以计算ー个或ー个以上“如果...怎样”情形的结果,在所述情形中,测试与相应非交互式任务相关联的所估计或所指示的系统资源消耗,以确定越权触发事件136 (例如,过少系统资源以致不能继续执行等)的产生是否将发生。在此实施例中,电源管理器130可选择执行非交互式任务的组合,这样允许完成最多数目的非交互式任务而不会产生越权触发事件136。然而,在所掲示标的物的框架内,可使用其它规则和选择技木。图2是根据所掲示标的物的系统的实例实施例的执行的一系列时序图。在所说明实施例中,所述系统可包含图I的系统100。在其它实施例中,计算装置或系统可包含其它组件,但可根据所说明或所描述的时序图中的一者或一者以上来执行。时序图202说明,在一个实施例中,可延迟计算装置到第二电源模式(例如,挂起电源模式等)的转变,直到延迟非交互式任务完成为止。在所说明的实施例中,第一电源模式是工作电源模式,第二电源模式是挂起电源模式,且第三电源模式是伪挂起电源模式,如上文所描述。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。泡212说明,在一个实施例中,计算装置可在工作或第一电源模式下操作。泡214说明,在一个实施例中,非交互式任务(例如,软件更新等)可在计算装置仍在工作电源模式内操作的同时启动或起始。在各种实施例中,更新任务的创建可包含向计算装置的电源管理器子系统指示正在执行延迟非交互式任务,如上文所描述。在一些实施例中,电源管理器也可接收或可得到(例如,经由存储器位置中的入口等)完成更新任务所需的系统资源或时间的量的估计,如上文所描述。泡216说明,在一个实施例中,可做出或接收将计算装置转变到或置于第二电源模式(例如,挂起电源模式)的请求。举例来说,用户可通过按下特殊按钮、合上膝上型计算装置的盖子,或在某一时段内忍住不与装置交互等来请求进入挂起电源模式。计算装置可确定或检测到所述装置上正在执行延迟非交互式任务,如上文所描述。在各种实施例中,计算装置可确定装置的系统资源是否足以支持延迟非交互式任务的完全执行,如上文所描述。如果计算装置确定可延迟或推迟到所请求的第二电源模式的转变,直到延迟非交互式任务完成执行为止,那么到第二电源模式的转变可被延迟。泡218说明,在一个实施例中,计算装置可进入第三电源模式(例如,伪挂起电源模式),如上文所描述。举例来说,计算装置的显示器、人工输入装置等可被断电或被置于实质上等效于组件在挂起电源模式中的电源状态的电源模式中。但计算装置的各种其它组件(例如,处理器、存储器、网络接ロ等)可保持在实质上等效于组件在工作电源模式中的电源状态的电源状态中,如上文所描述。 泡220说明,在一个实施例中,在相对平静的时段之后,更新任务可自然地完成其执行并结束,其中在所述时段内,整个计算装置到第二或挂起电源模式的整个转变已被延迟或推迟。泡222说明,在一个实施例中,计算装置可完成其从第一或工作电源模式到第二或挂起电源模式的转变,如上文所描述。·时序图204说明,在一个实施例中,计算装置到第二电源模式(例如,挂起电源模式等)的转变不可被延迟,不管是否在执行延迟非交互式任务。在所说明的实施例中,第一电源模式是工作电源模式,第二电源模式是挂起电源模式,且第三电源模式是伪挂起电源模式,如上文所描述。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。泡212说明,在一个实施例中,计算装置可在工作或第一电源模式下操作。泡214说明,在一个实施例中,非交互式任务(例如,软件更新等)可在计算装置仍在工作电源模式内操作的同时启动或起始。在各种实施例中,更新任务的创建可包含向计算装置的电源管理器子系统指示正在执行延迟非交互式任务,如上文所描述。在一些实施例中,电源管理器也可接收或可得到(例如,经由存储器位置中的入口等)完成更新任务所需的系统资源或时间的量的估计,如上文所描述。泡216说明,在一个实施例中,可做出或接收将计算装置转变到或置于第二电源模式(例如,挂起电源模式)的请求。举例来说,用户可通过按下特殊按钮、合上膝上型计算装置的盖子,或在某一时段内忍住不与装置交互等来请求进入挂起电源模式。计算装置可确定或检测到所述装置上正在执行延迟非交互式任务,如上文所描述。在各种实施例中,计算装置可确定装置的系统资源是否足以支持延迟非交互式任务的完全执行,如上文所描述。如果计算装置确定到所请求的第二电源模式的转变不可被延迟或推迟,直到延迟非交互式任务完成执行为止,那么到第二电源模式的转变可实质上立即发生或与非交互式更新任务无关,如上文所描述。泡230说明,在此实施例中,更新任务可提前終止或使其执行中止。在另ー实施例中,如由第二或挂起电源模式所规定,可暂停或挂起更新任务的执行。然而,在所说明的实施例中,挂起更新任务的执行使更新任务失败或不成功地終止。泡222说明,在一个实施例中,计算装置可完成其从第一或工作电源模式到第二或挂起电源模式的转变,如上文所描述。时序图206说明,在一个实施例中,可延迟计算装置到第二电源模式(例如,挂起电源模式等)的转变,直到越权触发事件中止由非交互式任务的执行造成的延迟为止。在所说明的实施例中,第一电源模式是工作电源模式,第二电源模式是挂起电源模式,且第三电源模式是伪挂起电源模式,如上文所描述。应理解,上述内容只是几个说明性实例,所揭示标的物并不限于此。泡212说明,在一个实施例中,计算装置可在工作或第一电源模式下操作。泡214说明,在一个实施例中,非交互式任务(例如,软件更新等)可在计算装置仍在工作电源模式内操作的同时启动或起始。在各种实施例中,更新任务的创建可包含向计算装置的电源管理器子系统指示正在执行延迟非交互式任务,如上文所描述。在一些实施例中,电源管理器也可接收或可得到(例如,经由存储器位置中的入口等)完成更新任务所需的系统资源或时间的量的估计,如上文所描述。泡216说明,在一个实施例中,可做出或接收将计算装置转变到或置于第二电源模式(例如,挂起电源模式)的请求。举例来说,用户可通过按下特殊按钮、合上膝上型计算装置的盖子,或在某一时段内忍住不与装置交互等来请求进入挂起电源模式。计算装置可确定或检测到所述装置上正在执行延迟非交互式任务,如上文所描述。在各种实施例中,计算装置可确定装置的系统资源是否足以支持延迟非交互式任务的完全执行,如上文所描·述。如果计算装置确定可延迟或推迟到所请求的第二电源模式的转变,直到延迟非交互式任务已完成执行为止,那么可延迟到第二电源模式的转变。泡218说明,在一个实施例中,计算装置可进入第三电源模式(例如,伪挂起电源模式),如上文所描述。举例来说,计算装置的显示器、人工输入装置等可被断电或被置于实质上等效于组件在挂起电源模式下的电源状态的电源模式下。但计算装置的各种其它组件(例如,处理器、存储器、网络接ロ等)可保持在实质上等效于组件在工作电源模式下的电源状态的电源状态下,如上文所描述。泡240说明,在一个实施例中,可能会发生越权触发事件且由计算装置检测到。在此实施例中,在泡214处起始的更新任务可仍在执行。在各种实施例中,越权触发事件可由系统资源的改变(例如,停止加入WLAN和开始加入蜂窝式数据网络等)、超过阈值(例如,根据阈值,完成更新任务可能花费过多时间等)或其它触发事件引起,如上文所描述。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。如上文所描述,在各种实施例中,如果计算装置检测到越权触发事件,那么到第二电源模式的转变可实质上立即发生或与非交互式更新任务无关,如上文所描述。泡230说明,在此实施例中,更新任务可提前终止或使其执行中止。在另ー实施例中,如由第二或挂起电源模式所規定,可暂停或挂起更新任务的执行。然而,在所说明的实施例中,挂起更新任务的执行使更新任务失败或不成功地終止。应理解,上述内容只是ー个说明性实例,所揭示标的物并不限于此。泡222说明,在一个实施例中,计算装置可完成其从第一或工作电源模式到第二或挂起电源模式的转变,如上文所描述。时序图208说明,在一个实施例中,可延迟计算装置到第二电源模式(例如,挂起电源模式等)的转变,直到越权触发事件中止由非交互式任务的执行造成的延迟为止。然而,在所说明的实施例中,越权触发事件不会使计算装置进入或转变到所请求的第二电源模式。在所说明的实施例中,第一电源模式是工作电源模式,第二电源模式是挂起电源模式,且第三电源模式是伪挂起电源模式,如上文所描述。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。泡212说明,在一个实施例中,计算装置可在工作或第一电源模式下操作。泡214说明,在一个实施例中,非交互式任务(例如,软件更新等)可在计算装置仍在工作电源模式下操作的同时启动或起始。在各种实施例中,更新任务的创建可包含向计算装置的电源管理器子系统指示延迟非交互式任务正在执行,如上文所描述。在一些实施例中,电源管理器还可接收或能得到(例如,经由存储器位置中的入口等)完成更新任务所需的系统资源或时间的量的估计,如上文所描述。泡216说明,在一个实施例中,可产生或接收将计算装置转变到或置于第二电源模式(例如,挂起电源模式)中的请求。举例来说,用户可通过按压特殊按钮、合上膝上型计算装置的盖子、或在某一时段内忍住不要与装置交互等来请求进入挂起电源模式。计算装置可确定或检测延迟非交互式任务正在装置上执行,如上文所描述。在各种实施例中,计算装置可确定装置的系统资源是否足以支持延迟非交互式任务的完全执行,如上文所描述。 如果计算装置确定可延迟或推迟到所请求第二电源模式的转变直到延迟非交互式任务已完成执行为止,那么可延迟到第二电源模式的转变。泡218说明,在一个实施例中,计算装置可进入第三电源模式(例如,伪挂起电源模式),如上文所描述。举例来说,可使计算装置的显示器、人工输入装置等断电或置于实质上等效于组件在挂起电源模式中的电源状态的电源模式中。但计算装置的各种其它组件(例如,处理器、存储器、网络接ロ等)可保持在实质上等效于组件在工作电源模式中的电源状态的电源状态中,如上文所描述。泡250说明,在一个实施例中,越权触发事件可能发生且被计算装置检测到。在此实施例中,在泡214起始的更新任务可仍在执行中。在所说明实施例中,越权触发事件可包含重新进入工作电源模式的请求。在各种实施例中,可能发生其它越权触发事件,其中计算装置将不转变或收回转变到挂起电源模式的请求(在泡216中接收的请求)。此些越权触发事件的实例可包含(但不限干)转变到其它电源模式的请求、不可修复的硬件故障(例如,电池的去除或丢失、处理器热事件等)、用以停住(belay)到先前请求的第二电源模式的转变的用户起始的命令等。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。泡252说明,在一个实施例中,计算装置可转变到所请求的工作电源模式。这可包含绝不完全转变到先前所请求的挂起电源模式(泡216)。在一些实施例中,计算装置可仍在工作电源模式内操作,这是因为到先前所请求的挂起电源模式的转变被延迟。在此实施例中,所述计算装置将不会从伪挂起电源模式转变到工作电源模式。如上文所描述,在各种实施例中,如果计算装置检测到越权触发事件,那么到第二电源模式的转变可实质上立即发生或不考虑非交互式更新任务,如上文所描述。泡230说明,在此实施例中,更新任务可能过早终止或使其执行中止。在另ー实施例中,更新任务的执行可暂停或挂起,如由第二或挂起电源模式所指示。然而,在所说明实施例中,挂起更新任务的执行致使更新任务失败或不成功地終止。应理解,上述内容只是ー个说明性实例,所掲示标的物并不限于此。泡222说明,在一个实施例中,计算装置可完成其从第一或工作电源模式到第二或挂起电源模式的转变,如上文所描述。泡220说明,在一个实施例中,在相对平静的时段后(因为泡250的触发事件可能尚未实质上影响更新任务的执行),更新任务可完成其执行且结束。在所说明实施例中,在更新任务的执行期间,首先延迟或推迟计算装置到第二或挂起电源模式的完全转变,且接着由于重新进入工作电源模式的请求而放弃,如上文所描述。图3是根据所掲示标的物的存储器结构的实例实施例的一系列图式。在各种实施例中,存储器结构可存储在计算装置的存储器内。在另ー实施例中,存储器可作为电源管理器的一部分而被包含。在另ー实施例中,存储器结构可存储在电源管理器和计算装置的一个或ー个以上子系统或组件(例如,更新管理器、操作系统等)均可存取的预定存储器位置处。存储器结构302说明,在一个实施例中,存储器可包含标志或实质上I位存储器位置来存储非交互式任务标志312。在此实施例中,非交互式任务标志312可指示非交互式任务正被执行且到降低电源模式的转变应延迟(如果可能的话),如上文所描述。存储器结构304说明,在一个实施例中,存储器可包含多个标志(例如,标志314、314a和314n等),每ー标志经配置以代表不同的非交互式任务。在一个实施例中,每ー标志314、314a等可与计算装置的相应子系统或组件相关联。举例来说,更新管理器可与标志·314相关联,且如果设置标志314那么其指示更新任务正被执行。同样地,标志314a可与应用程序或其它交互进程(例如,视频文件的编码、源代码的编译、大文件经由后台进程的下载等)所起始的非交互式任务相关联。其它标志可与操作系统、文件或数据同步程序(例如,日历、离线电子邮件、文件同步等)、音频播放或流式传输、或计算装置的各种应用程序、子系统或组件等相关联。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。在一些实施例中,多个标志314可与计算装置的同一子系统相关联。举例来说,在一些实施例中,更新管理器可与两个标志314相关联。在具体实施例中,更新管理器可与第ー标志相关联,用于关于操作系统的更新,且更新管理器还可与第二标志相关联,用于关于其它软件文件的应用的更新。应理解,上述内容只是ー个说明性实例,所掲示标的物并不限于此。在各种实施例中,计算装置子系统与标志之间的关联可经由记分牌表格或其它关联存储器结构(未图示)而加以动态地分配和管理。在一些实施例中,存储器结构304还可包含指示多少标志314包含在存储器结构304中的大小或标头字段313。在另ー实施例中,可不包含标头字段313(例如,标志314的数目可以是固定的)或,替代地,可使用終止字段(未图示)来指示存储器结构304的结尾。应理解,上述内容只是几个说明性实例,所掲示标的物并不限于此。存储器结构306说明,在一个实施例中,存储器可包含指示与字段316相关联的非交互式任务预期何时完成其执行的字段或部分316。如上文所描述,可用各种时间值来测量字段316的值,例如,从任务的初始执行开始的秒数、处理器循环的次数、绝对时间(例如,1:00pm等)等。在各种实施例中,存储器结构306可包含多个此些字段316,每一字段与相应非交互式任务相关联。在另ー实施例中,字段316可由多个非交互式任务共享。在此实施例中,额外非交互式任务可将其估计的完成时间添加到存储在字段316中的当前值。举例来说,如果预期在100次处理器循环中完成第一任务,那么可将值100键入到字段316中。可预期第二任务在150次处理器循环后完成,且可将字段316的值调整到250次处理器循环。在各种实施例中,在相关联的任务完成或被执行时可调整(例如,降低等)字段316的值。
存储器结构308说明,在一个实施例中,存储器可包含与ー个或ー个以上非交互式任务或子系统相关联的多个字段。举例来说,标志312可指示相关联的非交互式任务正在或将由计算装置执行。字段316可指示完成非交互式任务所需的估计时间量。字段318可指示相关联非交互式任务的执行将消耗的ー个或ー个以上系统资源的估计。在一些实施例中,多个字段312、316和318可与特定非交互式任务相关联。在另一实施例中,多个字段312、316和318可与特定子系统(例如,更新管理器等)相关联,且因此所有非交互式任务由所述子系统起始。如上文所描述,这些关联可为静态的且为预定的或被动态指派。在各种实施例中,可针对多个关联的起始子系统或关联的非交互式任务而重复或复制存储器结构306和/或308,类似于标志314的存储器结构304的重复。在此实施例中,关联可经动态指派。而且,在此实施例中,当形成或終止延迟非交互式任务时,可将额外存储器位置或元件分配给存储器结构。在此实施例中,存储器结构可包含标头或大小字段313,其指示较小存储器结构(例如,字段312、316和318等)在较大存储器结构中重复或复制的次数。
·
图4是根据所掲示标的物的技术400的实例实施例的流程图。在各种实施例中,可通过例如图I或5的那些系统的系统来使用或产生技术400。此外,可通过所述系统来使用或产生技术400的部分以形成例如图2或3的事件或存储器结构的事件或存储器结构。应理解,所掲示标的物并不限于技术400所说明的动作的次序或数目。框402说明,在一个实施例中,计算装置可在第一电源模式下操作,如上文所描述。在各种实施例中,这个第一电源模式可包含工作电源模式,如上文所描述。在各种实施例中,这个框所说明的动作中的一者或一者以上可通过图I或5的设备或系统、图I的电源管理器来执行,如上文所描述。框404说明,在一个实施例中,计算装置可执行至少ー个非交互式任务或后台进程,如上文所描述。在各种实施例中,这可包含经配置以当作后台进程执行的软件更新活动,如上文所描述。在一些实施例中,执行非交互式任务或后台进程可包含将值写入到至少一个预定存储器位置,其中所述写入值指示非交互式任务正被执行,且不存在越权触发事件,需要推迟转变到降低电源模式直到完成所述非交互式任务执行为止。在各种实施例中,这个框所说明的动作中的一者或一者以上可通过图I或5的设备或系统、图I的更新管理器、子系统、操作系统或应用程序来执行,如上文所描述。框406说明,在一个实施例中,可检测将计算装置置于第二电源模式下的请求,如上文所描述。在各种实施例中,这个第二电源模式可包含挂起电源模式,如上文所描述。在一些实施例中,第二电源模式可消耗比第一电源模式少的系统资源,如上文所描述。在各种实施例中,这个框所说明的动作中的一者或一者以上可通过图I或5的设备或系统、图I的电源管理器来执行,如上文所描述。框408说明,在一个实施例中,可进行关于是否需要延迟或推迟计算装置的转变的确定,如上文所描述。在各种实施例中,这个确定可包含估计完成所请求非交互式任务所需的系统资源的量,以及确定估计的系统资源的量是否超过ー个或ー个以上系统资源阈值,如上文所描述。在一个实施例中,这个确定可包含读取存储器位置以确定值是否存储在存储器位置中,其指示非交互式任务的执行被请求或正在执行,如上文所描述。在一些实施例中,所存储值可包含完成非交互式任务的执行所需的时间量的估计,且确定可包含确定完成非交互式任务所需的时间量的估计是否超过阈值,如上文所描述。在各种实施例中,这个框所说明的动作中的一者或一者以上可通过图I或5的设备或系统、图I的电源管理器来执行,如上文所描述。框410说明,在一个实施例中,可延迟或推迟计算装置到第二电源模式的转变直到非交互式任务的完成或越权触发事件中的任ー者为止,如上文所描述。在一个实施例中,延迟计算装置到第二电源模式的转变可包含中止所请求非交互式任务的执行,且如上文所描述当针对非交互式任务的完成而估计的系统资源的量(參见框408)或非交互式任务所消耗的系统资源的量超过系统资源阈值时,将计算装置置于第二电源模式中。在各种实施例中,延迟计算装置到第二电源模式的转变可包含当超过阈值时将计算装置转变到第二电源模式。另外,如果未超过关于系统资源或完成时间的阈值,那么可执行所请求非交互式任务,且可延迟计算装置到第二电源模式的转变直到所请求非交互式任务的完成或越权触发事件为止,如上文所描述。在各种实施例中,延迟计算装置到第二电源模式的转变可包含检测系统资源的实质改变何时已发生,确定系统资源的实质改变是否为越权触发事件,且如果越权触发事件已经发生,那么将计算装置转变到第二电源模式,如上文所描述。在具体实·施例中,系统资源的实质改变包含计算装置退出第一网络且加入第二网络,如上文所描述。在另ー实施例中,延迟计算装置到第二电源模式中的转变可包含将计算装置置于第三电源模式中,其中第三电源模式消耗比第一电源模式少的系统资源但消耗比第二电源模式多的系统资源,且促进非交互式任务的执行,如上文所描述。在各种实施例中,这个框所说明的动作中的一者或一者以上可通过图I或5的设备或系统、图I的电源管理器来执行,如上文所描述。框412说明,在一个实施例中,计算装置可转变到或经置于第二电源模式中,如上文所描述。在一些实施例中,因为不需要延迟到第二电源模式的转变所以这种情况可能发生,如上文所描述。在另ー实施例中,因为非交互式任务已完成其执行或越权触发事件已经发生所以这种情况可能发生,如上文所描述。在各种实施例中,这个框所说明的动作中的一者或一者以上可通过图I或5的设备或系统、图I的电源管理器来执行,如上文所描述。框414说明,在一个实施例中,可检测将计算装置置于第一(或另一)电源模式下的请求,如上文所描述。在此实施例中,这个请求可在非交互式任务的完成之前发生,如上文所描述。在各种实施例中,可将这个请求视为越权触发事件,如上文所描述。在各种实施例中,这个框所说明的动作中的一者或一者以上可通过图I或5的设备或系统、图I的电源管理器来执行,如上文所描述。框416说明,在一个实施例中,可收回或忽略将计算装置置于第二电源模式下的请求,如上文所描述。在各种实施例中,这个框所说明的动作中的一者或一者以上可通过图I或5的设备或系统、图I的电源管理器来执行,如上文所描述。框418说明,在一个实施例中,可将计算装置置于或转变到第一电源模式中,如上文所描述。在此实施例中,此仅可能在计算装置尚未处于第一电源模式中的情况下进行,例如在第二电源模式的推迟期间将计算装置置于第三电源模式中,如上文所描述。在各种实施例中,这个框所说明的动作中的一者或一者以上可通过图I或5的设备或系统、图I的电源管理器来执行,如上文所描述。
图5展示一般计算机装置500和一般移动计算机装置550的实例,一般计算机装置500和一般移动计算机装置550可供本文描述的技术使用。计算装置500既定表示各种形式的数字计算机,例如膝上型计算机、桌上型计算机、工作站、个人数字助理、服务器、刀片式服务器、主机和其它适当计算机。计算装置550既定表示各种形式的移动装置,例如个人数字助理、蜂窝式电话、智能电话和其它类似计算装置。此处展示的组件、其连接和关系以及其功能意指仅为示范性的,且并不意指限制本文档中描述和/或主张的本发明的实施。计算装置500包含处理器502、存储器504、存储装置506、连接到存储器504和高速扩展端ロ 510的高速接ロ 508、和连接到低速总线514和存储装置506的低速接ロ 512。组件502、504、506、508、510和512中的每ー者使用各种总 线来互连,且可安装在共用母板上或在适当时以其它方式安装。处理器502可处理用于在计算装置500内执行的指令,包含存储在存储器504中或在存储装置506上的用以在外部输入/输出装置(例如,耦合到高速接ロ 508的显示器516)上显示⑶I的图形信息的指令。在其它实施中,在适当时可连同多个存储器和多个类型的存储器来使用多个处理器和/或多个总线。而且,多个计算装置500可与提供必要操作的部分的每ー装置(例如,作为服务器组、一组刀片式服务器或多处理器系统)连接。存储器504将信息存储在计算装置500内。在一个实施中,存储器504是ー个或多个易失性存储器単元。在另ー实施中,存储器504是ー个或多个非易失性存储器単元。存储器504也可能是另ー形式的计算机可读媒体,例如磁盘或光盘。存储装置506能够为计算装置500提供大容量存储。在一个实施中,存储装置506可为或含有计算机可读媒体,例如软盘装置、硬盘装置、光盘装置或磁带装置、快闪存储器或其它类似固态存储器装置、或装置阵列(包含在存储区域网或其它配置中的装置)。计算机程序产品可有形地体现在信息载体中。计算机程序产品还可含有指令,所述指令在被执行时执行ー种或ー种以上方法,例如上文所描述的那些方法。信息载体是计算机或机器可读媒体,例如存储器504、存储装置506、或处理器502上的存储器。高速控制器508管理计算装置500的带宽密集操作,而低速控制器512管理较低带宽密集操作。此些功能分配仅为示范性的。在一个实施中,高速控制器508耦合到存储器504、显示器516 (例如,经由图形处理器或加速器),且耦合到高速扩展端ロ 510,所述高速扩展端ロ 510可接受各种扩展卡(未图示)。在所述实施中,低速控制器512耦合到存储装置506和低速扩展端ロ 514。可包含各种通信端ロ(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端ロ可耦合到ー个或ー个以上输入/输出装置,例如键盘、定点装置、扫描仪,或例如经由网络适配器耦合到例如交換器或路由器等网络连接装置。计算装置500可以许多不同形式来实施,如图中所展示。举例来说,可将其实施为标准服务器520,或在一组此些服务器中实施多次。还可将其实施为机架服务器系统524的一部分。另外,可将其实施在例如膝上型计算机522等个人计算机中。或者,来自计算装置500的组件可与移动装置(未图示,例如装置550)中的其它组件组合。此些装置中的每ー者可含有计算装置500、550中的一者或一者以上,且整个系统可由彼此通信的多个计算装置500、550构成。计算装置550包含处理器552、存储器564、例如显示器554等输入/输出装置、通信接ロ 566和收发器568,以及其它组件。装置550还可具备用以提供额外存储的存储装置,例如微硬盘(microdrive)或其它装置。组件550、552、564、554、566和568中的每ー者使用各种总线来互连,且所述组件中的若干可安装在共用母板上或在适当时以其它方式安装。处理器552可执行计算装置550内的指令,包含存储在存储器564中的指令。可将处理器实施为芯片的芯片组,所述芯片包含单独且多个模拟和数字处理器。处理器可提供(例如)装置550的其它组件的协调,例如用户接ロ的控制、装置550的应用程序运行和装置550所进行的无线通信。处理器552可经由控制接ロ 558和耦合到显示器554的显示器接ロ 556来与用户通信。显示器554可以是例如TFT IXD (薄膜晶体管液晶显示器)或OLED (有机发光二极管)显示器或其它适当显示器技木。显示器接ロ 556可包括用于驱动显示器554向用户呈现图形和其它信息的适当电路。控制接ロ 558可接收来自用户的命令且将其转换以提交给处理器552。另外,可提供外部接ロ 562以与处理器552通信,以便启用装置550与其它装置的近区通信。外部接ロ 562可在一些实施中提供例如有线通信,或在其它实施中提供无·线通信,且还可使用多个接ロ。存储器564将信息存储在计算装置550内。可将存储器564实施为计算机可读媒体、易失性存储器単元或非易失性存储器単元中的一者或一者以上。还可提供扩展存储器574且经由扩展接ロ 572连接到装置550,扩展接ロ 572可包含例如SIMM(单输入行存储器模块)卡接ロ。此扩展存储器574可为装置550提供额外存储空间,或还可存储装置550的应用程序或其它信息。具体来说,扩展存储器574可包含用以进行或补充上文描述的进程的指令,且还可包含安全信息。举例来说,因此,扩展存储器574可提供为装置550的安全模块,且可编程有准许安全使用装置550的指令。另外,可经由SIMM卡提供安全应用程序以及额外信息,例如以不可攻击(non-hackable)方式将识别信息置于SIMM卡上。存储器可包含例如快闪存储器和/或NVRAM存储器,如下文所论述。在一个实施中,计算机程序产品有形地体现在信息载体中。计算机程序产品含有指令,所述指令在被执行时执行ー种或ー种以上方法,例如上文所描述的那些方法。信息载体是计算机或机器可读媒体,例如存储器564、扩展存储器574或处理器552上的存储器,其可例如在收发器568或外部接ロ 562上接收。装置550可以无线方式经由通信接ロ 566通信,通信接ロ 566在必要时可包含数字信号处理电路。通信接ロ 566可提供在各种模式或协议下的通信,例如GSM语音呼叫、SMS、EMS 或 MMS 消息传递、CDMA, TDMA, PDC、WCDMA, CDMA2000 或 GPRS 以及其它。此通信可例如经由射频收发器568而发生。另外,短程通信可例如使用蓝牙、WiFi或其它此收发器(未图示)而发生。另外,GPS(全球定位系统)接收器模块570可提供额外导航和定位相关无线数据给装置550,额外导航和定位相关无线数据在适当时可由在装置550上运行的应用程序使用。装置550还可使用音频编码解码器560而有声地通信,音频编码解码器560可接收来自用户的说话信息且将其转换为有用的数字信息。音频编码解码器560可(例如)经由扬声器(例如,在装置550的听筒中)同样地产生用于用户的可听声音。此声音可包含来自语音电话呼叫的声音,可包含所记录声音(例如,语音消息、音乐文件等),且还可包含在装置550上操作的应用程序所产生的声音。计算装置550可以许多不同形式来实施,如图中所展示。举例来说,可将其实施为蜂窝式电话580。还可将其实施为智能电话582、个人数字助理或其它类似移动装置的部分。可将此处描述的系统和技术的各种实施实现于数字电子电路、集成电路、特殊设计ASIC (专用集成电路)、计算机硬件、固件、软件和/或其组合中。这些各种实施可包含实施在可在可编程系统上执行和/或解译的ー个或ー个以上计算机程序中,所述可编程系统包含至少ー个可编程处理器,其可为专用或通用的,经耦合以从存储系统接收数据和指令且将数据和指令发射到存储系统;至少ー个输入装置;以及至少ー个输出装置。这些计算机程序(还称作程序、软件、软件应用程序或代码)包含用于可编程处理器的机器指令,且可以高级程序和/或面向对象编程语言和/或汇編/机器语言来实施。如本文所使用,术语“机器可读媒体”、“计算机可读媒体”指代用以提供机器指令和/或数据给可编程处理器的任何计算机程序产品、设备和/或装置(例如,磁盘、光盘、存储器、可编·程逻辑装置(PLD)),包含接收机器指令作为机器可读信号的机器可读媒体。术语“机器可读信号”指代用以提供机器指令和/或数据给可编程处理器的任何信号。为了提供与用户的交互,可将此处描述的系统和技术实施在计算机上,所述计算机具有用于向用户显示信息的显示装置(例如,CRT (阴极射线管)或LCD(液晶显示器)监视器),以及用户可通过其将输入提供给计算机的键盘和定点装置(例如,鼠标或跟踪球)。可使用其它种类的装置来提供与用户的交互,以及;例如,提供到用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈或触觉反馈);以及可以任何形式接收来自用户的输入,包含声学、话音或触觉输入。计算系统可包含客户端和服务器。客户端与服务器通常彼此远离且通常经由通信网络而交互。客户端与服务器的关系根据在相应计算机上运行且彼此具有客户端-服务器关系的多个计算机程序而产生。已描述了许多实施例。然而,将理解可在不脱离本发明的精神和范围的情况下进行各种修改。另外,诸图中描绘的逻辑流不需要所展示的特定次序或顺序次序来实现所要的结果。另外,可提供其它步骤,或可从所描述的流中消除多个步骤,且可将其它组件添加到所描述系统或从所描述系统去除。因此,其它实施例是在以下权利要求书的范围内。
权利要求
1.一种方法,其包括 在第一电源模式中操作计算装置; 通过所述计算装置的处理器执行至少一个非交互式任务; 通过所述计算装置的处理器检测将所述计算装置置于第二电源模式中的请求,其中所述第二电源模式消耗比所述第一电源模式少的系统资源;以及 延迟所述计算装置到所述第二电源模式的转变直到所述非交互式任务的完成或越权触发事件中的任一者为止;且 其中延迟所述将所述计算装置置于所述第二电源模式中包含将所述计算装置置于第三电源模式中,其中所述第三电源模式消耗比所述第一电源模式少的系统资源但消耗比所述第二电源模式多的系统资源,且有助于所述非交互式任务的所述执行。
2.根据权利要求I所述的方法,其中所述第一电源模式包含工作电源模式,且其中所述第二电源模式包含挂起到随机存取存储器RAM电源模式。
3.根据权利要求I所述的方法,其中所述非交互式任务包含经配置以作为后台进程执行的软件更新活动。
4.根据权利要求I所述的方法,其中延迟包含 估计完成所述执行非交互式任务所需的系统资源的量; 确定所述估计的系统资源的量是否超过一个或一个以上系统资源阈值;以及如果所述估计的系统资源的量超过所述系统资源阈值,那么中止执行所请求的非交互式任务,且将所述计算装置置于所述第二电源模式中。
5.根据权利要求I所述的方法,其中延迟所述计算装置到所述第二电源模式中的所述转变包含 检测由所述计算装置引起的系统资源的实质改变何时已发生; 确定系统资源的所述实质改变是否是越权触发事件;以及 如果系统资源的所述实质改变是越权触发事件,那么将所述计算装置转变到所述第二电源模式。
6.根据权利要求5所述的方法,其中系统资源的实质改变包含所述计算装置退出第一网络且加入第二网络。
7.根据权利要求I所述的方法,其中执行至少一个非交互式任务包含将值写入到至少一个预定存储器位置,其中所述写入值指示非交互式任务正被执行,且在不存在越权触发事件的情况下,需要推迟转变到降低电源模式直到完成所述非交互式任务执行为止。
8.根据权利要求I所述的方法,其中延迟所述计算装置到所述第二电源模式的所述转变包含 读取存储器位置以确定完成非交互式任务的所述执行所需的时间量的估计; 确定完成所述非交互式任务所需的所述时间量的所述估计是否超过阈值; 如果超过所述阈值,那么将所述计算装置转变到所述第二电源模式;以及如果未超过所述阈值,那么致使执行所述所请求的非交互式任务,且延迟所述计算装置到所述第二电源模式的所述转变直到所述所请求的非交互式任务的所述完成或越权触发事件中的任一者为止。
9.根据权利要求I所述的方法,进一步包含在检测将所述计算装置置于第二电源模式中的请求之后,检测将所述计算装置置于所述第一电源模式中的请求; 如果将所述计算装置置于所述第一电源模式中的所述请求在所述非交互式任务的所述完成或越权触发事件中的任一者之前发生,那么收回将所述计算装置置于第二电源模式中的所述请求。
10.一种设备,其包括 处理器,其经配置以执行至少一个非交互式任务;以及 电源管理器,其经配置以 使所述设备在多个电源模式中的一者下操作, 检测将所述设备从在第一电源模式下操作转变到在第二电源模式下操作的请求,其中所述第二电源模式包含消耗比所述第一电源模式少的系统资源的电源模式,以及 推迟所述设备到所述第二电源模式的所述转变直到所述非交互式任务的完成或越权触发事件的发生中的任一者为止,以及 在推迟所述设备到所述第二电源模式的所述转变的同时,将所述设备置于第三电源模式中,其中所述第三电源模式消耗比所述第一电源模式少的系统资源但消耗比所述第二电源模式多的系统资源,且促进所述非交互式任务的所述执行。
11.根据权利要求10所述的设备,其中所述处理器经配置以向所述电源管理器指示所述非交互式任务的所述完成何时发生。
12.根据权利要求10所述的设备,其中设备经配置以 基于完成所述执行非交互式任务所需的系统资源的原始估计量来确定推迟所述设备到所述第二电源模式的所述转变,直到所述非交互式任务的所述完成或越权触发事件的所述发生中的任一者为止; 提供完成所述执行非交互式任务所需的系统资源的所述量的更新估计; 确定所述更新的系统资源估计量是否超过一个或一个以上系统资源阈值;以及如果所述更新的系统资源估计量超过所述系统资源阈值,那么将所述设备转变到所述第二电源模式,而非推迟所述设备到所述第二电源模式的所述转变直到所述非交互式任务的所述完成或越权触发事件的所述发生中的任一者为止。
13.根据权利要求10所述的设备,其中电源管理器经配置以 检测系统资源的实质改变何时已发生; 确定系统资源的所述实质改变是否是越权触发事件;且如果系统资源的所述实质改变是越权触发事件,那么将所述设备转变到所述第二电源模式。
14.根据权利要求13所述的设备,其中系统资源的实质改变包含所述设备退出无线局域网且加入蜂窝式数据网络。
15.根据权利要求10所述的设备,其中处理器经配置以 将值写入到所述设备所包含的存储器的至少一个预定存储器位置,且其中所述写入值指示非交互式任务正被执行,且在不存在越权触发事件的情况下,需要推迟转变到降低电源模式直到完成所述非交互式任务执行为止。
16.根据权利要求10所述的设备,其中所述电源管理器经配置以 读取所述设备所包含的存储器以确定完成非交互式任务的所述执行所需的时间量的估计;确定完成所述非交互式任务所需的所述时间量的所述估计是否超过阈值; 如果超过所述阈值,那么将所述设备转变到所述第二电源模式;以及如果未超过所述阈值,那么致使执行所请求的非交互式任务,且延迟所述设备到所述第二电源模式的所述转变直到所述所请求的非交互式任务的所述完成或越权触发事件的所述发生中的任一者为止。
17.根据权利要求10所述的设备,其中所述电源管理器经配置以 在延迟所述设备到所述第二电源模式的所述转变的同时,检测将计算装置置于所述第一电源模式中的请求; 如果将所述计算装置置于所述第一电源模式中的所述请求在所述非交互式任务的所述完成或越权触发事件中的任一者之前发生,那么收回将所述计算装置置于第二电源模式中的所述请求。
18.一种用于管理系统资源的计算机程序产品,所述计算机程序产品有形地体现在计算机可读媒体上且包含可执行代码,所述可执行代码在被执行时经配置以使计算设备进行以下动作 在第一电源模式中操作计算装置; 通过所述计算装置的处理器执行至少一个非交互式任务; 检测将所述计算装置置于第二电源模式中的请求,其中所述第二电源模式包含消耗比所述第一电源模式少的系统资源的电源模式;以及 延迟所述计算装置到所述第二电源模式的转变直到所述非交互式任务的完成或越权触发事件中的任一者为止,以及 在推迟所述设备到所述第二电源模式的所述转变的同时,将所述设备置于第三电源模式中,其中所述第三电源模式消耗比所述第一电源模式少的系统资源但消耗比所述第二电源模式多的系统资源,且促进所述非交互式任务的所述执行。
全文摘要
一种推迟挂起涉及计算装置的电源管理。根据一个一般方面,一种方法可包含在第一电源模式中操作计算装置。所述方法还可包含通过所述计算装置的处理器执行至少一个非交互式任务。所述方法还可包含通过所述计算装置的处理器检测将所述计算装置置于第二电源模式中的请求,其中所述第二电源模式消耗比所述第一电源模式少的系统资源。所述方法可进一步包含延迟所述计算装置到所述第二电源模式的转变直到所述非交互式任务的完成或越权触发事件中的任一者为止。
文档编号G06F1/32GK102789305SQ201210167818
公开日2012年11月21日 申请日期2012年5月25日 优先权日2011年5月26日
发明者瑞安·凯恩斯, 瑞安·塔伯恩, 萨弥尔·南达 申请人:谷歌公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1