《在操作上下文之间切换.pdf》由会员分享,可在线阅读,更多相关《在操作上下文之间切换.pdf(19页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103999040 A (43)申请公布日 2014.08.20 C N 1 0 3 9 9 9 0 4 0 A (21)申请号 201180076030.5 (22)申请日 2011.10.28 G06F 9/22(2006.01) (71)申请人英特尔公司 地址美国加利福尼亚州 (72)发明人 M.罗思曼 V.J.齐默 C.K.沈 T.M.侯 Y.H.钱 Y.芮 J.J.王 (74)专利代理机构中国专利代理(香港)有限公 司 72001 代理人杨美灵 马永利 (54) 发明名称 在操作上下文之间切换 (57) 摘要 从计算装置的待机电源状态呼出多个操作上 下文。操。
2、作上下文运行在计算装置的一个或多个 操作系统上。当诸如借助通过用户发起的动作或 热键的激活来选择期望操作上下文时,从待机电 源状态引导支持期望操作上下文的操作系统。 (85)PCT国际申请进入国家阶段日 2014.06.27 (86)PCT国际申请的申请数据 PCT/US2011/058192 2011.10.28 (87)PCT国际申请的公布数据 WO2013/062564 EN 2013.05.02 (51)Int.Cl. 权利要求书2页 说明书7页 附图9页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书2页 说明书7页 附图9页 (10)申请公布号 CN 103。
3、999040 A CN 103999040 A 1/2页 2 1. 一种在操作上下文之间切换的方法,包括: 在配置有可执行指令的一个或多个处理器的控制下, 使计算装置处于待机电源状态; 确定多个操作系统之一来从所述待机电源状态启动;以及 从所述待机电源状态启动运行在所确定的操作系统上的期望操作上下文。 2. 如权利要求1所述的方法,其中所述确定所述操作系统基于所述计算装置上的用户 动作。 3. 如权利要求1所述的方法,其中所述确定包含从之前的操作系统切换到不同的操作 系统。 4. 如权利要求1所述的方法,其中从所述待机电源状态启动包含:检测引导操作系统 和引导所述确定的操作系统时的错误。 5.。
4、 如权利要求1所述的方法,其中所述使处于、确定和启动是平台和操作系统不可知 的。 6. 如权利要求1所述的方法,还包括:将数据保存到存储器以执行所述启动。 7. 如权利要求1所述的方法,还包括:为数据预留存储器以启动所述多个操作系统。 8. 一种计算装置,包括: 一个或多个处理器; 存储器控制器,其配置到所述一个或多个处理器;以及 存储器,其配置到所述一个或多个处理器和存储器控制器,其中所述存储器包含一个 或多个操作系统,使得当所述计算装置处于待机电源状态时,支持期望操作上下文的操作 系统从所述待机电源状态启动。 9. 如权利要求8所述的计算装置,其中所述存储器控制器运行来自存储器的操作,同 。
5、时所述计算装置处于待机电源状态。 10. 如权利要求8所述的计算装置,其中所述存储器包含被分配成从待机电源状态启 动所述操作系统的随机存取存储器。 11. 如权利要求8所述的计算装置,其中所述存储器包含随机存取存储器,并且数据被 保存到随机存取存储器以从待机电源状态启动所述操作系统。 12. 如权利要求8所述的计算装置,其中所述存储器包含系统管理代码以检测启动操 作系统,以及启动用于所述期望操作上下文的适当操作系统时的错误。 13. 如权利要求8所述的计算装置,还包括:发起启动操作上下文的装置和外设所连接 到的输入/输出接口。 14. 如权利要求8所述的计算装置,还包括:基本输入/输出系统(B。
6、IOS),其支持所述 待机电源状态,并且其中所述期望操作系统被启动。 15. 如权利要求14所述的计算装置,其中所述BIOS包含从其启动所述期望操作系统 的各种阶段。 16. 至少一个计算机可读存储介质,其上具有计算机可读指令,所述指令当由计算装 置执行时使所述计算装置执行包括如下操作的操作: 使计算装置处于待机电源状态; 将数据位置保存在存储器中以从所述待机电源状态启动支持多个操作上下文的一个 权 利 要 求 书CN 103999040 A 2/2页 3 或多个操作系统;以及 从所述待机电源状态启动支持期望操作上下文的操作系统。 17. 如权利要求16所述的计算机可读存储介质,其中所述使所述。
7、计算装置处于待机电 源状态以及启动所述操作系统是基于所述计算装置的用户动作。 18. 如权利要求16所述的计算机可读存储介质,其中所述将数据位置保存在存储器中 包含保存来自之前实现的操作系统的数据。 19. 如权利要求16所述的计算机可读存储介质,其中所述启动包含:从分配成引导所 述一个或多个操作系统的保存的存储器读取。 20. 如权利要求16所述的计算机可读存储介质,还包括:确定在引导所述操作系统和 启动另一操作系统时的系统错误。 权 利 要 求 书CN 103999040 A 1/7页 4 在操作上下文之间切换 背景技术 0001 存在用于通过暂停计算机执行而节能并用于实现多重引导计算装置。
8、的机构。在现 有技术系统中,一次通常引导单个操作系统(OS)。如果需要第二OS,则计算装置断电并且 固件重新引导。可存在掌控引导过程的标准,诸如基本输入/输出系统(BIOS)引导规范和 /或可扩展固件接口(EFI)引导管理器。 0002 而且,可存在掌控计算装置的电源管理的标准和规范。例如,美国能源之星评级规 定对于机器(计算装置)的示范要求是仅耗散100瓦特。高级配置与电源接口即ACPI(见 http:/www.acpi.info)是由英特尔公司、微软公司、东芝公司和惠普公司联合开发的工业 规范以标识用于管理电源的标准。休眠状态和转变由ACPI规范定义。例如,存在定义如何 构建硬件以支持S4。
9、休眠状态或休止(hibernate)状态的ACPI规范。在S4休眠状态,计算 装置进入深度休眠以节能。在S4休眠状态,计算机装置的OS获取所有其存储器内容并将 它们存储成盘文件(硬盘)。另一状态是被视为待机状态的S3休眠状态。在S3,内容被保 留在系统随机存取存储器(RAM)中。小量电力被提供给系统RAM和芯片集以捕捉或侦听唤 醒事件,诸如膝上型计算机盖打开或激活热键。相比之下,对于S4休眠状态,一切都掉电。 0003 计算装置可使用多个操作上下文,其中应用运行在相同或不同OS上。例如,用户 可玩运行在第一OS(诸如Windows OS)上的游戏。玩游戏是一个操作上下文。用户然后 期望使用运行。
10、在第二OS(诸如Linux OS)上的触摸垫。触摸垫应用是另一操作上下文。在 操作上下文之间跳转可涉及诸如关上膝上型计算装置的盖或激活计算装置上的指定热键 的事件。鉴于在操作上下文之间跳转涉及关闭和打开不同OS,操作上下文之间的时间可能 是相当大的。将高度期望以最小延迟在操作上下文之间跳转。要理解到,运行在计算装置 上的虚拟机器可提供操作上下文之间的最小延迟。运行虚拟机器需要相当大的计算资源和 计算装置功率。当计算装置具有有限资源(包含功率资源)时,这可能变成问题。当计算 装置是小形状因子装置(诸如平板计算机或超级本)时,特别是这种情况。因此,将期望能 够以最小延迟、计算资源和功率在操作上下文。
11、之间跳转。 附图说明 0004 具体实施方式参考附图进行描述。在附图中,附图标记最左边的数位标识附图标 记第一次出现的附图。附图通篇使用相同的数字来引用相似的特征和组件。 0005 图1是用于在操作上下文之间切换的示例流程图。 0006 图2是用于当在操作上下文之间切换时运行操作系统的示例流程图。 0007 图3是用于当在操作上下文之间切换时发起和运行系统管理(模式)中断或SMI 处理机的示例流程图。 0008 图4是用于当在操作上下文之间切换时保存切换的操作系统上下文的示例流程 图。 0009 图5是用于当在操作上下文之间切换时重新开始目标切换上下文的示例流程图。 0010 图6是用于当在操。
12、作上下文之间切换时跳到操作系统重新开始向量的示例流程 说 明 书CN 103999040 A 2/7页 5 图。 0011 图7是用于当在操作上下文之间切换时在基本输入/输出系统(BIOS)中实现的 预先可扩展固件接口(Pre-EFI或PEI)中从休眠状态唤醒的示例流程图。 0012 图8是用于当在操作上下文之间切换时在基本输入/输出系统(BIOS)中实现的 驱动器执行环境(DXE)中从休眠状态唤醒的示例流程图。 0013 图9是实现在操作上下文之间切换的计算装置的示例架构的框图。 0014 图10是实现在操作上下文之间切换的示例存储器的框图。 具体实施方式 0015 在计算装置中在操作上下文。
13、之间切换利用低功率状态,诸如待机或S3休眠状态。 使用低功率状态可允许在最小时间内在操作上下文之间跳转和/或呼出(call up)操作上 下文。 0016 概述 本文描述的是允许在计算装置中在(例如变化的)操作上下文之间切换、实现低功率 状态的方法、计算装置和计算机可读存储介质。通常,待机状态(例如S3状态)用于单个 过程和单个实例;然而,本文描述的是将待机或S3状态用于N个操作上下文的方法、计算装 置和计算机可读存储介质。例如,待机状态或S3状态可用于以时间有效和响应方式切换操 作上下文。操作可以是平台不可知的或OS不可知的,并使用计算装置的基本输入/输出系 统(BIOS)实现。 0017 。
14、在如下详细描述中,阐述了众多特定细节,以便提供本发明的透彻理解。然而,本 领域技术人员将理解,没有这些特定细节也可实践本发明。在其它实例中,众所周知的方 法、过程、组件和电路未详细描述,以免使本发明模糊不清。 0018 随后的详细描述的一些部分依据对计算机存储器内的数据位或二进制数字信号 的操作的算法和符号表示给出了。这些算法描述和表示可以是数据处理领域的技术人员用 于向本领域技术人员传达它们工作的实质的技术。 0019 除非特别声明,否则根据如下讨论显然的是,要认识到,在说明书通篇利用诸如 “处理”、“计算”、“算出”、“确定”等术语的讨论是指计算机或计算系统或类似的电子计算装 置的动作和/。
15、或过程,其操控在计算系统的寄存器和/或存储器内表示为物理(诸如电子) 量的数据和/或将它们变换成计算系统的存储器、寄存器或其它此类信息存储或传送装置 内的类似地表示为物理量的其它数据。本文所使用的术语“一个”被定义为一个或多于一 个。本文所使用的术语“多个”被定义为两个或多于两个。本文所使用的术语“另一个”被 定义为至少第二个或更多个。本文所使用的术语包含和/或具有被定义为包括但不限于包 括。本文所使用的术语耦合被定义为以任何期望的形式例如机械、电气、数字、直接、通过软 件、通过硬件等可操作地连接。应该理解,本发明可以用在各种各样的应用中。 0020 一些实施例可结合各种装置和系统使用,例如个。
16、人计算机(PC)、台式计算机、移动 计算机、膝上型计算机、笔记本计算机、平板计算机、服务器计算机、手持计算机、手持装置、 个人数字助理(PDA)装置、手持PDA装置、板上装置、板下装置、混合装置、车载装置、非车载 装置、移动或便携装置、消费装置、非移动或非便携装置、无线通信站和/或无线通信装置。 此类装置在本文被统称为“计算装置”。 说 明 书CN 103999040 A 3/7页 6 0021 计算装置实现低功率状态,例如,计算装置使用ACPI规范,并且能够进入S3休眠 状态或待机状态。计算装置包含一个或多个OS,包括“全”OS、专用OS、OS/应用等。运行在 计算装置上的应用可运行在它们自。
17、己的操作上下文上。每个OS和操作上下文是可兼容的, 或者利用低功率状态(例如待机或S3状态)。操作上下文或OS可通过用户动作(诸如关 上膝上型计算装置上的盖和/或激活计算装置上的热键)来呼出(call up)或者从一个OS/ 操作上下文切换到另一个。要理解到,其它触发事件可实现为或者预先编程为和/或集成 为计算装置的一部分,和/或由用户编程。 0022 所描述的方法和过程可实现为计算装置的基本输入/输出系统(BIOS)的一部分。 而且,计算装置实现具体BIOS引导规范和/或可扩展固件接口(EFI)引导管理器规范。方 法和过程还可利用定义的系统管理模式(SMM)操作,包含SMM中断(SMI)操作。
18、,并且具体地 说是SMI处理机。SMI处理机具体针对当引导OS时检测和寻址“错误”。 0023 示例过程 现在参考附图。图1示出了用于在操作上下文之间切换的示例过程100。在块102,假 定接通计算装置电源,尽管计算装置可处于几种休眠状态之一。确定计算装置是否处于待 机状态,例如S3休眠状态。具体地说,在块104,确定计算装置是否从待机或S3休眠状态重 新开始。 0024 如果计算装置未从待机或S3休眠状态重新开始,在块104的“否”分支之后,则在 块106计算装置为目标OS预留资源,其中目标OS被定义为计算装置用于具体操作上下文 的OS。在块108,为OS切换上下文预留资源。例如,OS可从W。
19、indows OS切换到Linux OS。 在块110,发起期望OS。 0025 如果计算装置来自于待机或S3休眠状态,在块104的“是”分支之后,则在块112 确定是否已经设置了OS切换标志。具体地说,在块112,该确定针对OS是否被切换或改变 以支持期望的操作上下文。如果确定使用与之前相同的OS,在112的“否”分支之后,则在 块114执行从待机或S3状态的正常重新开始。则在块110,发起OS。 0026 如果计算装置100要改变或切换OS,在块112的“是”分支之后,则计算装置从一 个OS中的待机或S3状态跳转到运行在另一OS上的操作上下文。因此,另一OS需要被唤 醒或被引导。 0027。
20、 在块116,为了维护目的,清除OS切换标志。在块118,执行更新以引导目标。对 于每个OS,预留存储器以便相应的OS从那儿引导。从期望OS的相应存储器位置执行重新 开始。在块120,为目标OS预留资源。在块122,从引导模式向目标/切换的OS的全引导 执行改写。在块124,在计算装置的BIOS,执行引导以发起不同OS或目标OS。在块126,引 导目标OS,并且在块110,发起OS。 0028 图2示出了用于当在操作上下文之间切换时运行操作系统的过程200。过程200 遵循过程100。在块110,发起OS。在块202,确定是否触发事件(诸如关上膝上型计算机 上的盖或者已经按下了热键)发起了到运。
21、行不同操作上下文(即运行在不同OS上的另一 操作上下文)的不同OS的切换。如果确定不存在到不同OS的切换,在块202的“否”分支 之后,则流程200跳转回块110。否则,在块202的“是”分支之后,在块204设置OS切换标 志。在块206,触发待机状态或S3状态。通过触发S3状态,在块208,调用或发起SMI处理 机(下面在有关图3的讨论中进一步描述)。SMI处理机具体针对当引导OS时检测和寻址 说 明 书CN 103999040 A 4/7页 7 “错误”。 0029 执行块110还涉及在块210确定是否已经设置了OS切换标志。在块210的“否” 分支之后,流程200跳转回块110。如果已经。
22、设置了OS标志,在块210的“是”分支之后,则 流程200跳转回206以触发待机或S3状态。 0030 图3示出了示例过程300以发起系统管理(模式)中断或SMI处理机。通过触发 待机或S3状态,在块208发起SMI处理机。过程300(包含诸如调用SMI处理机的块)可 基于高级配置与电源接口即ACPI标准。在块302,S3寄存器被保存到存储器(即RAM)用 于源OS,包含保存上下文信息。待机或S3状态与深度休眠状态或S4状态相比,允许计算装 置变成正常运转并且比在深度休眠状态或S4状态更快速地运行。换句话说,为了到达该操 作状态,当与深度休眠状态或S4状态比较时,在待机或S3状态,初始化是最小。
23、的。 0031 在块304,确定是否切换OS。如果确定未切换OS,在块304的“否”分支之后,则在 块306过程继续。如果OS被切换,在块304的“是”分支之后,则在块308保持或保存OS切 换上下文(下面在有关图4的讨论中进一步描述)。 0032 在块310,进行关于是否引导目标OS的确定。如果未引导目标OS,在块310的“否” 分支之后,则在块312设置用于OS的自动唤醒。如果那个目标OS被引导,在块310的“是” 分支之后,则在块314,重新开始目标OS切换上下文(下面在有关图5的讨论中进一步描 述)。 0033 在块316,执行跳到目标OS的重新开始向量(下面在有关图6的讨论中进一步描。
24、 述)。当切换上下文时,有效地从计算装置的初始重新设置向量开始软件代码流程。运行 BIOS代码,并且作为用于待机或S3状态的正常重新开始代码路径的一部分,代替运行目标 OS的加载程序(即有效加载OS),执行跳到OS重新开始向量,其存储在存储器中的位置。此 类代码可由OS从现有待机或S3状态唤醒它自己所用的手段实现。当BIOS尝试唤醒回OS 时,可运行该代码。在块318,运行目标OS。这可包含运行期望的操作上下文。 0034 图4示出了当在操作上下文之间切换时保存切换的操作系统上下文的示例过程 400。在块308之后,按定义的ACPI要求,在块402,保存ACPI表中的值的拷贝。在块404, 保。
25、存或保持为源OS上下文预留的指定存储器以便随后使用或参考。在具体实现中,指定存 储器(即RAM)中的特定区域。例如,指定RAM中“N”MB以下的存储器。过程400然后跳转 回在块310确定是否引导目标OS。 0035 图5示出了当在操作上下文之间切换时重新开始目标切换上下文的示例过程 500。在块314之后,在块502,进行关于保存的待机或S3状态寄存器的重新开始。在块504, 呼出并重新开始所保存的ACPI表。在块506,呼出并实现指定存储器(即例如在块404所 保存的存储器)。 0036 图6是当在操作上下文之间切换时跳到重新开始操作系统重新开始向量的示例 过程600。过程600可实现为B。
26、IOS内的逻辑。此类逻辑可用于管理处于待机模式的多个 OS。BIOS控制或确定启动哪个OS重新开始向量。因此,如果切换上下文,则当前重新开 始向量与先前重新开始向量切换。为了执行切换,当前重新开始向量的位置可被写到临时 存储区,并且恢复对于新目的地OS活动的老重新开始向量,并建立那个向量作为当前重新 开始向量,并且最终使用老重新开始向量。这可提供在各种重新开始向量之间安全地来来 回回而不丢失上下文的能力。在某些实现中,预留的存储器区域可实现成将这个数据保持 说 明 书CN 103999040 A 5/7页 8 在BIOS上下文内。BIOS是理解上下文切换的计算平台的实体。在块316(其中跳到O。
27、S的 重新开始向量)之后,在块602,对于当呼出时SMM重新开始到的存储器区域的拷贝执行保 存。具体地说,执行的保存是老重新开始向量数据连同与从那儿切换的OS关联的任何其它 必要数据。这可避免数据丢失,并且启用在将来恢复和切换回的能力。在块604,如果之前 未执行,则对于之前OS将重新开始到的较早存储器区域执行恢复。使用的存储器区域可被 视为在BIOS内私用预留的存储器存储区,使得分配充分的空间来预留“N”个上下文,并且 避免必须改写其它操作上下文,因为每个操作上下文有效地具有为每个预留的“插槽”。例 如,如果存在两个操作上下文,则可存在用于操作上下文1的插槽1和用于操作上下文2的 插槽2。因。
28、此,当从操作上下文1切换到操作上下文2时,与操作上下文1关联的活动信息 可保存到插槽#1。可从插槽#2读取用于活动当前活动设置的数据,诸如插槽#2的重新开 始向量。在块606,执行自举过程,其包含用允许跳到备选OS重新开始向量的代码替换存 储器区域。具体地说,在块606,相应私用存储区或“插槽”中的数据被用于建立当前行为。 因此,私用存储区或“插槽”可被视为数据的“备份”。真实配置数据(例如当前重新开始信 息)用来自此类备份的数据编程。诸如“mwait”的命令可用于设置电源状态的应用过程。 在块608,发起重新开始指令以摆脱SMI处理机过程。SMI处理机过程可由各种事故发起; 然而,在这个示例。
29、中,SMI处理机过程如进入待机或S3状态、触发SMI的ACPI S状态转变所 定义的发起。因此,在块602是SMI处理机进入时,并且块608是对SMI处理机的退出。在 块610,操作在上面描述的块318继续。 0037 BIOS过程 如所讨论的,实现可使用计算装置的BIOS执行。一般而言,BIOS执行从“上电”到转接 到计算装置OS的动作。BIOS操作可包含各种阶段。BIOS的一部分是统一可扩展固件接口 或UEFI或EFI。Pre-EFI或PEI是计算装置BIOS初始化的早期阶段。驱动器执行环境或 DXE发生在计算装置中BIOS初始化的后半段。DXE在启动OS的BIOS中之处。 0038 在待。
30、机或S3状态,重新开始OS能以比较快的方式发生,因为许多初始化由于保存 到存储器(即RAM)而不需要再次发生。在待机或S3状态,启动可以在PEI阶段。DXE当 OS被引导至少一次时实现,并且是每个OS的全BIOS初始化的一部分。OS引导被实现至少 一次以到达待机或S3状态。 0039 一般而言,当在PEI或者在S3流程或者模式引导时,确定引导目标OS是否是之前 目标。例如,从Windows OS进入S3模式,并且从Windows OS回来。如果情况是真,则重 新开始正常流程。如果情况不是真,则执行到备选流程或OS重新开始向量的切换。确定是 否启动另一OS,并跳转到待机状态或S3状态。如果确定不。
31、是真,则过程进入DXE和正常引 导流程,并在DXE中启动OS。 0040 图7是用于当在操作上下文之间切换时在Pre-EFI或PEI中从休眠状态唤醒的示 例过程700。过程700可由BIOS实现。在块702,发起上电,或者发起从较早的BIOS流程 唤醒。在块704,进行关于是否从待机或S3状态重新开始引导模式的确定。 0041 如果从待机或S3状态的引导模式未重新开始,在块704的“否”分支之后,则在块 706,执行非待机或S3状态。在块708,确定引导目标是否来自第二或其它OS。在块708的 “否”分支之后,接着是现有或第一OS引导流程。在块712,设置转接块(hand off block)。
32、以 指示引导目标是现有或第一OS。在块714,继续BIOS过程。在块708的“是”分支之后,在 说 明 书CN 103999040 A 6/7页 9 块716,执行非待机状态或非S3流程。在块718,设置转接块以指示引导目标是第二或其它 OS。在块714,继续BIOS。 0042 如果从待机状态或S3状态的引导模式重新开始,在块704的“是”分支之后,则在 块720,接着是S3流程。在块722,进行关于该引导目标是否来自之前引导目标的确定。在 块722的“是”分支之后,在块724,接着是正常重新开始流程。在块722的“否”分支之后, 执行到备选OS重新开始向量的切换。在块728,确定是否从待机。
33、或S3状态引导OS。在块 728的“否”分支之后,执行块708。在块728的“是”分支之后,在块730,保存上下文,并且 跳到备选OS重新开始向量。 0043 图8是用于当在操作上下文之间切换时在DXE中从休眠状态唤醒的示例过程800。 过程800可由BIOS实现。在块802,执行引导选项流程。在块804,进行关于是否启用OS 切换BIOS选项的确定。在块804的“否”分支之后,在块806,确定来自PEI阶段的转接块 是否指示切换。在块806的“是”分支之后,在块808,引导选项被修改成指向含有备选OS 的存储器存储区。在块806的“否”分支之后,在块810,BIOS过程继续。如果启用了OS切。
34、 换BIOS选项,在块804的“是”分支之后,则应用代码以禁用发起热键或触发调用操作上下 文的小应用程序。在块810,BIOS过程继续。 0044 示例计算装置 图9示出了实现操作上下文之间切换的示例计算装置900。如上面所讨论的,计算装置 900可包含各种装置,诸如平板计算机、膝上型计算机等。 0045 计算装置900包含一个或多个处理器、处理器902。处理器902可以是单个处理单 元或若干处理单元,它们全都可包含单个或多个计算单元或多个核。处理器902可实现为 一个或多个微处理器、微计算机、微控制器、数字信号处理器、中央处理单元、状态机、逻辑 电路和/或基于操作指令操纵信号的任何装置。在其。
35、它能力之中,处理器902可配置成提 取和执行存储在存储器904或其它计算机可读存储介质中的计算机可读指令或处理器可 存取指令。 0046 存储器904是用于存储由处理器902执行以执行上面描述的各种功能的指令的计 算机可读存储介质的示例。例如,存储器904一般可包含易失性存储器和非易失性存储器 (例如RAM、ROM等)。存储器904在本文可被称为存储器或计算机可读存储介质。存储器 904能够存储计算机可读、处理器可执行程序指令作为可由处理器902执行的计算机程序 代码,作为配置用于执行在本文的实现中描述的操作和功能的具体机器。 0047 存储器904可包含一个或多个操作系统906,并且可存储一。
36、个或多个应用908。操 作系统906可以是为个人计算机、音频/视频装置等实现的各种已知和将来操作系统之一。 应用908可包含预先配置的/安装的和可下载的应用。此外,存储器904可包含数据910。 操作系统906和应用908可定义上面所描述的操作上下文。 0048 存储器904具体地说包含随机存取存储器或RAM 912,上面描述的过程将信息存储 到那儿的同时处于待机或S3状态。而且,BIOS 914包含在存储器904中。BIOS 914可存储 在只读存储器(ROM)中。 0049 计算装置900包含存储器控制器916。当处于待机或S3状态时,存储器中的操作 可使用存储器控制器916运行。RAM 。
37、912可保持在自刷新模式,允许RAM 912保持最小上下 文以保持计算装置通电。因此,当处理器902和计算装置的其它装置唤醒时,存储器正在等 说 明 书CN 103999040 A 7/7页 10 待。这允许待机状态或S3状态相比应用908正在运行时是低功耗状态。 0050 计算装置还可包含连接到各种内部和外部装置的输入/输出918以及外设,诸如 监视器、键盘、指点装置等。各种已知和将来接口可包含在输入/输出918中。具体地说, 输入/输出918可提供对可发起到现有或不同操作上下文的转变的预先安装的或用户编程 的热键的访问。 0051 本文描述的示例计算装置900仅仅是适合于一些实现的示例,而。
38、不打算暗示对于 可实现本文描述的过程、组件和特征的环境、架构和框架的使用或功能性的范围的任何限 制。 0052 一般而言,参考附图描述的任何功能都可使用软件、硬件(例如固定逻辑电路)或 这些实现的组合来实现。程序代码可存储在一个或多个计算机可读存储器装置或其它计算 机可读存储装置中。从而,本文描述的过程和组件可由计算机程序产品实现。 0053 如上面所提到的,计算机存储介质包含用任何方法或技术实现的易失性和非易失 性、可拆卸和不可拆卸介质,以便存储信息,诸如计算机可读指令、数据结构、程序模块或其 它数据。计算机存储介质包含但不限于RAM、ROM、EEPROM、闪速存储器或其它存储器技术、 CD。
39、-ROM、数字多功能盘(DVD)或其它光学存储装置、盒式磁带、磁带、磁盘存储装置或其它 磁存储装置或可用于存储由计算装置访问的信息的任何其它介质。 0054 示例存储器分配 参考图10,RAM 912可被分配,或者具有为上面相对于过程讨论的信息/数据预留的部 分。TSEG 1000是SMM定义用于初始化CPU或处理器902的存储器中的区段。TSEG 1000含 有与SMM关联的SMM代码和逻辑。预留的OS切换上下文1002是作为BIOS的开销以完成 附加保存和恢复与可来回切换的多个操作上下文关联的信息而预留的区域。OS1存储器页 面1004和OS2存储器页面1006是用于具体OS的部分。要理解。
40、到,可实现其它OS,并且RAM 912中的部分预留用于此类OS。可兼容地址范围1010是访问具体OS的地址。RAM 912的 部分可预留用于与切换操作上下文相关的其它数据和信息1008。其余RAM 1012指示未用 于所描述过程的RAM 912的部分。 0055 已经在具体实施例的上下文中描述了根据本发明的实现。这些实施例意在是阐明 性的而非限制性的。许多改变、修改、添加和改进是有可能的。于是,可为在本文中作为单 个实例描述的组件提供多个实例。各种组件、操作和数据存储区之间的界限某种程度上是 任意的,并且具体操作在特定的阐明性配置上下文中阐明了。功能性的其它分配可被想到, 并且可落入随后的权利。
41、要求书的范围内。最后,在各种配置中作为分立组件给出的结构和 功能性可实现为组合的结构或组件。这些以及其它改变、修改、添加和改进可落入在如下权 利要求书中所定义的本发明的范围内。 说 明 书CN 103999040 A 10 1/9页 11 图 1 说 明 书 附 图CN 103999040 A 11 2/9页 12 图 2 说 明 书 附 图CN 103999040 A 12 3/9页 13 图 3 说 明 书 附 图CN 103999040 A 13 4/9页 14 图 4图 5 说 明 书 附 图CN 103999040 A 14 5/9页 15 图 6 说 明 书 附 图CN 103999040 A 15 6/9页 16 图 7 说 明 书 附 图CN 103999040 A 16 7/9页 17 图 8 说 明 书 附 图CN 103999040 A 17 8/9页 18 图 9 说 明 书 附 图CN 103999040 A 18 9/9页 19 图 10 说 明 书 附 图CN 103999040 A 19 。