CN101263456B - 用于快速恢复的方法和装置 - Google Patents
用于快速恢复的方法和装置 Download PDFInfo
- Publication number
- CN101263456B CN101263456B CN200680033757.4A CN200680033757A CN101263456B CN 101263456 B CN101263456 B CN 101263456B CN 200680033757 A CN200680033757 A CN 200680033757A CN 101263456 B CN101263456 B CN 101263456B
- Authority
- CN
- China
- Prior art keywords
- disposal system
- recovery
- content
- descriptor
- phase
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4418—Suspend and resume; Hibernate and awake
Abstract
处理系统在从休眠模式转变成活动模式时将第一阶段恢复内容和第二阶段恢复内容加载到该处理系统的易失性存储中。第一阶段恢复内容可包括在处理系统转变成休眠模式前使用中的第一程序的上下文数据。第二阶段恢复内容可包括在处理系统转变成休眠模式前使用中的另一个程序的上下文数据。处理系统可在所有的第二阶段恢复内容被加载到易失性存储之前提供所述第一程序的用户界面。描述并要求保护了其它实施例。
Description
技术领域
本发明一般涉及数据处理领域,尤其涉及用于使处理系统从休眠状态迅速恢复的方法和相关装置。
背景
高级配置与电源接口(ACPI)是开放的工业规范,该规范描述了用于诸如膝上型、桌上型和服务器计算机之类的处理系统的配置和电源管理的工业标准接口。可从www.acpi.info/spec.htm获得日期为2004年9月2目的ACPI规范的版本3.0。ACPI规范描述了各种休眠状态和全局功率状态。然而,本发明不限于遵守ACPI的系统,而可有利地在任何适当的处理系统中使用。
为了本公开的目的,处理系统可处于以下三种功率状态之一:活动、休眠或关闭。也可将休眠状态称为睡眠状态或休眠模式。
在关闭状态中,系统断电,且该系统中不包含用于从早期的活动状态恢复的过程的系统上下文。为了从关闭状态转变到活动状态,引导固件必须初始化硬件并引导OS。
在活动状态中,系统调度并执行线程。系统一般基本实时地响应于外部事件——该响应会由于诸如处理系统的工作量和性能极限之类的因素而遭受延迟。然而,系统的各种性能和功率特性可在活动状态内动态调节。例如,在处理系统处于活动状态时,系统内的各个设备的功率状态可动态地变化。也可将活动状态称为活动模式。
当处于休眠状态时,处理系统不执行用户模式线程,且系统消耗的功率比活动状态状态低。系统看起来似乎关闭了,因为各外部设备或指示器(例如,显示器、某些发光二极管(LED)等)可能断电。在某些情况下,处理系统在休眠状态下可不消耗功率或基本不消耗功率。然而,在休眠状态下,处理系统保存属于活动状态下执行的进行的数据(即,系统上下文)。处理系统一般从休眠状态转变成活动状态比从关闭状态转变成活动状态更快。例如,在某些实现中,处理系统无需再引导操作系统(OS)就可从休眠状态转变成活动状态。
恢复是从休眠状态转变成活动状态。
常规的处理系统可花费超过60秒用于恢复。例如,带有3.4千兆字节(GB)的随机存取存储器(RAM)的处理系统可花费约150秒用于从不通电的休眠模式转变成活动模式。这段时间的大部分可能专用于将系统上下文从硬盘驱动器恢复到RAM。随着平均处理系统中的存储量增加,恢复平均处理系统所需的时间量也增加。如果有人期望使用处理系统,则他等待该处理系统恢复通常既没有乐趣也没有价值。正如本发明指出的,减少恢复处理系统所需的时间量是有优势的。
发明内容
本发明提供了用于使处理系统从休眠状态迅速恢复的方法和相关装置。
在一个方面,本发明公开了一种用于快速恢复的方法。该方法包括:当将处理系统从休眠模式转变成活动模式时,将第一阶段恢复内容和第二阶段恢复内容加载到所述处理系统的易失性存储中;其中所述第一阶段恢复内容包括在所述处理系统转变成休眠模式之前使用中的第一程序的上下文数据;以及其中所述第二阶段恢复内容包括在所述处理系统转变成休眠模式之前使用中的另一个程序的上下文数据;在所有的所述第二阶段恢复内容已被加载到所述易失性存储之前提供所述第一程序的用户界面;当将所述处理系统从休眠模式转变成活动模式时,检索恢复描述符;以及至少部分地基于所述恢复描述符,确定将由所述处理系统中的操作系统OS执行的初始化操作。
在另一个方面,本发明公开了一种用于快速恢复的装置。该装置包括:当将处理系统从休眠模式转变成活动模式时,用于将第一阶段恢复内容和第二阶段恢复内容加载到所述处理系统的易失性存储中的装置,其中所述第一阶段恢复内容包括在所述处理系统转变成休眠模式之前使用中的第一程序的上下文数据,并且其中所述第二阶段恢复内容包括在所述处理系统转变成休眠模式之前使用中的另一个程序的上下文数据;用于在所有的所述第二阶段恢复内容已被加载到所述易失性存储之前提供所述第一程序的用户界面的装置;用于当将所述处理系统从休眠模式转变成活动模式时检索恢复描述符的装置;以及用于至少部分基于所述恢复描述符,确定将由所述处理系统中的操作系统OS执行的初始化操作的装置。
附图简述
本发明的特征和优点将从所附权利要求书、以下一个或多个示例实施例的详细描述以及对应的附图变得显而易见,附图中:
图1是描述其中可实现本发明的示例实施例的某些方面的适当的数据处理环境的框图;
图2是根据本发明的一个示例实施例示出可进行用于快速恢复数据处理系统的各种操作的时间线;
图3是根据本发明的一个示例实施例描述可用于支持处理系统的快速恢复的各种数据构造的框图;以及
图4、5和6是根据本发明的一个示例实施例描述用于支持快速恢复的过程的各方面的流程图。
详细描述
图1是描述其中可实现本发明的示例实施例的某些方面的适当的数据处理环境12的框图。数据处理环境12包括处理系统20,处理系统20包括各种硬件组件80和软件组件82。硬件组件可包括例如经由一个或多个系统总线24或其它通信路径或介质通信上耦合到各种其它组件的一个或多个处理器或中央处理单元(CPU)22。
正如本文中所使用的,术语“处理系统”和“数据处理系统”(DSP)旨在广泛地包括单个机器或在通信上耦合共同工作的多个机器或设备的系统。示例处理系统包括但不限于分布式计算系统、超级计算机、高性能计算系统、计算群集、大型计算机、小型计算机、客户服务器系统、个人计算机(PC)、工作站、服务器、便携式计算机、膝上型计算机、平板计算机、个人数字助理(PDA)、电话、手持式设备、诸如音频和/或视频设备之类的娱乐设备以及用于处理或发送信息的其它设备。
处理系统20可至少部分地由从常规输入设备的输入来控制,常规输入设备诸如键盘、以及象是鼠标之类的指示设备等。处理系统20还可响应于从其它处理系统或其它输入源或信号接收的指示。处理系统20可例如通过网络接口控制器(NIC)32、调制解调器或其它通信端口或耦合来利用与一个或多个远程数据处理系统70的一个或多个连接。处理系统可通过诸如局域网(LAN)、广域网(WAN)、内联网和因特网等物理和/或逻辑网络72来互连。涉及通信的网络72可利用各种有线和/或无线的短距离或长距离载波和协议,包括射频(RF)、卫星、微波、电气和电子工程师协会(IEEE)802.11、802.16、蓝牙、光学、红外线、电缆、激光等。
在处理系统20中,处理器22可通信地耦合到一个或多个易失性或非易失性数据存储设备,诸如随机存取存储器(RAM)26、闪存26、,象是集成驱动电子设备(IDE)或小型计算机系统接口(SCSI)硬盘驱动器之类的大容量存储设备28、和/或象是软盘、光学存储、磁带、只读存储器(ROM)、记忆棒、数字视频盘、生物存储等其它设备或介质。为了本公开的目的,术语“ROM”可一般用于指诸如可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪速ROM、闪存等非易失性存储。处理器22还可通信上耦合到其它的组件,诸如视频控制器、SCSI控制器、网络控制器、通用串行总线(USB)控制器、诸如键盘、鼠标、照相机之类的输入设备等。处理系统22还可包括一个或多个网桥或集线器34,诸如存储器控制器集线器、输入/输出(I/O)控制器集线器、PCI根桥接器等,用于通信上耦合至系统组件。正如本文所使用的,术语“总线”包括可由两个以上的设备共享的路径以及点对点路径
诸如NIC 32之类的部分组件可被实现为带有用于与总线通信的接口(例如,PCI连接器)的适配卡。或者,可利用诸如可编程或非可编程逻辑设备或阵列、专用集成电路(ASIC)、嵌入式计算机、智能卡等组件来将NIC 32和其它设备实现为嵌入式控制器。
本文中可参考或结合诸如指令、函数、过程、数据结构、应用程序、配置设置等数据来描述本发明。当数据由机器存取时,机器可通过执行任务、定义抽象数据类型或低电平硬件上下文和/或执行其它操作来响应,这在下文将更详细地描述。可将数据存储在易失性和/或非易失性数据存储中。为了本公开的目的,术语“程序”一般用于覆盖宽范围的软件构造,包括应用程序、例程、模块、驱动程序、子程序、进程和其它类型的软件组件。
例如,数据存储设备28和/或闪存26可包括多个指令集,当该指令集被执行时,可进行各种操作。一般可将这些指令集称为软件。
如图1所示,在示例实施例中,程序或软件组件82可包括系统固件40和OS 50。系统固件40可包括用于管理引导过程诸一个或多个例程,如引导固件48。为了本公开的目的,术语“系统固件”包括用于平台的引导固件以及可在调用OS引导代码后工作的任何额外的平台固件。正如以下更详细地描述的,系统固件40和操作系统50可包括各自的恢复管理例程42和52,用于使处理系统20能够从休眠状态快速地恢复到活动状态。
图2是根据本发明的一个示例实施例示出可进行用于快速恢复数据处理系统的各种操作的时间线。仍然参考图1,图2的时间线在时间t0开始,此刻系统20处于活动状态。在时刻t1,OS 50可确定处理系统20应转变成休眠模式。可响应于诸如预定的不活动时间、用户输入选择休眠模式等条件来作出这一确定。
在时刻t2,OS 50将当前系统上下文保存到非易失性存储并创建恢复描述符,该描述符将被保存在非易失性存储中并在随后的操作中用于快速恢复处理系统20。正如以下详细描述的,可将系统上下文保存在两个或多个部分中,而恢复描述符可包括在恢复处理系统20时将由OS 50所使用的数据。恢复描述符还可包括在恢复处理系统20时将由系统固件40使用的数据。
例如,OS 50可提供带有数据以标识恢复过程的不同阶段各种不同的内容集的恢复描述符。这些阶段可包括仅用于恢复在时刻t1活动的进程子集的系统上下文的第一阶段,以及用于恢复在时刻t1活动的其余进程的系统上下文的第二阶段(或多个二级阶段)。
图3是根据本发明的一个示例实施例描述可用于支持处理系统的快速恢复的各种数据构造的框图。具体地,图3描述处理系统20的硬盘28,其各个分区(例如,分区p1和p2)包含将用于恢复处理系统20的数据(例如,系统上下文)。可将该内容称为恢复文件98。在一个示例实施例中,恢复文件98包括第一阶段内容94和第二阶段内容96,它们分别将在处理系统20的恢复期间在连续的第一和阶段加载步骤中加载。如以下更详细地描述的,在另一个实施例中,可将第一阶段内容和第二阶段内容存储在不同的存储设备中。然而,为了简化起见,本文所使用的术语“恢复文件”包括任何恢复数据的集合,即使该集合的所有部分并不驻留在同一物理文件中,甚至不在同一存储设备上。硬盘28还可包括带有指向诸如p1、p2等分区的指针的分区表46以及其它数据。
图3还描述了驻留于闪存26中的系统固件40,它带有恢复描述符92作为固件变量,并连同其它固件变量90(例如,标识用于用户界面的语言的固件变量、指定初级或二级引导设备的固件变量等)一起保存在闪存中。在某些实施例中,用于处理系统20的系统固件遵守日期为2003年11月26日的可扩展固件接口(EFI)规范,版本1.10,(下文中称为“EFI规范”)。可从www.intel.com/technology/efi获得EFI规范。在这些实施例中,恢复描述符92可类似于诸如EFI配置表之类的固件构造。在某些实施例中,恢复描述符的结构由系统固件预定义。在其它实施例中,OS使用系统附件来创建恢复描述符。
除固件变量外,可将其它数据存储在闪存26中,诸如用于系统固件40的代码图像44。在可选实施例中,可将恢复描述符存储在任何适当的预先确定的非易失性位置(例如,驻留在硬盘驱动器的系统分区上的文件中)。类似地,根据本发明,恢复描述符不限于本文所示的特定结构,而在可选实施例中,可使用存储在任何适当的非易失性存储设备中的任何适当的数据结构或多种数据结构的组合。可选实施例还可使用单一数据结构来保存恢复描述符和第一阶段内容两者。
现在转到图2示出的时间线,在该示例实施例中,在创建恢复描述符92之后,OS 50使处理系统20在时刻t3刷新RAM 26,以保证当前的上下文被适当保存。然后,在时刻t4,OS 50使处理系统20部分或完全地断电。因此,处理系统20在时刻t4进入休眠状态。处理系统20于是保持休眠状态不确定的时间段,从几秒到几个月或几年。
在时刻t5,处理系统20检测到起动事件,例如,响应于用户按下处理系统20的电源按钮。系统固件40于是检索恢复描述符92并至少部分基于OS 50保存在恢复描述符92中的信息确定怎样响应于起动事件。例如,恢复描述符92可包括指示系统固件40跳过一个或多个特定设备的初始化的数据,从而仅初始化RAM 26的特定部分等。指示应由OS执行哪些恢复操作的恢复描述符92中的数据可被称为恢复描述符握手。在各实施例中,恢复描述符握手可向OS分配不必在执行第一阶段加载之前执行的任何操作或操作的组合。系统固件40于是可根据恢复描述符92中的数据初始化处理系统20,而系统固件40随后可将控制传递给OS 50的引导代码。
因此处理系统20可缩短固件控制的初始化过程,以实现较快的返回到OS上下文。初始化操作可经由通过诸如固件变量或某些其它通信路径之类的预先确定的管道通信的握手或合约从系统附件40卸载到OS 50。
在时刻t6,OS 50可检索恢复描述符92并起动第一阶段加载过程用于恢复来自先前活动状态的部分上下文。在示例实施例中,在第一阶段加载期间,OS 50将第一阶段内容94从硬盘28加载到RAM 26,且第一阶段内容94包括仅针对在处理系统最后处于活动状态时存在于处理系统20中的进程子集的上下文。例如,第一阶段内容94可包括仅针对最后活动的用户程序(例如,接收用户输入或具有系统焦点的最后程序)的上下文数据。第一阶段数据可包括针对最后的活动用户程序的分页或非分页数据,或仅包括非分页数据。
在另一个实施例中,第一阶段内容94可包括在处理系统20最后活动时没有出存储器页面的所有程序的上下文数据。在可选实施例中,可将系统上下文的其它子集保存在第一阶段内容中并在第一阶段加载中恢复。例如,第一阶段数据除包括任何上述子集外还可包括所有的非分页OS数据。还可将非分页OS数据称为非分页内核数据。
或者,可将第一阶段内容94保存到闪存26中。因此OS可从闪存26将第一阶段内容恢复到RAM 26。此外,OS 50可提供恢复描述符92,它带有数据以指示系统固件40应跳过通常执行的初始化步骤以支持与硬盘28的通信。OS 50可在第一阶段加载完成后执行这些初始化步骤。
如时刻t7所指示的,一旦第一阶段加载过程完成,处理系统生成用户界面并准备好接收来自用户的输入并执行用户模式线程。例如,处理系统20可提示用户输入证书,并在接收和验证这些证书之后,处理系统20可提供在处理系统20进入休眠模式之前用户使用的最后应用程序的用户界面。
在图2中,将t5和t7之间的时间标记为持续时间d1。因此,在示例实施例中,持续时间d1是处理系统20从不通电的休眠模式中恢复所需的时间量。
OS 50于是可起动例如作为后台任务的平台上下文的第二阶段加载。在示例实施例中,第一阶段内容少于第二阶段内容,且第一阶段加载比第二阶段加载占用的时间要少。
在时刻t8,处理系统20可完成第二阶段加载,然后可完成恢复过程。将t7和t8之间的时间标记为持续时间d2,并将t5和t8之间的时间标记为持续时间d3。因此持续时间d3等于持续时间d1加持续时间d2。在示例实施例中,处理系统20在持续时间d1之后准备好使用。相反,持续时间d3(即,t5和t8之间的总时间)可类似于根据常规的恢复过程将处理系统从休眠模式转变成活动模式所需的时间量。然而,采用常规方法恢复的处理系统直到所有的系统上下文已被加载时才可用。相反,根据示例实施例,使用处理系统20的人在他或她开始使用处理系统20进行有价值的工作之前不需要等待很长时间,这是因为上下文按多个阶段恢复,且处理系统在生成用户界面之前不必等待完成所有的这些阶段。
图4、5和6是根据本发明的一个示例实施例描述用于支持快速恢复的过程的各方面的流程图。图4中描述的过程以处理系统20检测到起动事件开始,例如如上关于图2和时刻t5所述。响应于起动事件,引导固件48开始对处理系统20进行初始化,如框110所述。作为该初始化过程的一部分,如框112所述,系统固件40确定处理系统20是否正从休眠状态恢复。如果处理系统20未从休眠状态恢复,则系统固件40利用硬引导或冷引导过程(即,从关闭状态转变成活动状态的过程)来完成处理系统20的初始化。如框144所述,系统固件40随后可将控制传递给OS 50用于其余的引导过程。
然而,如果处理系统20正从休眠状态恢复,则系统固件40接着确定处理系统是正从通电休眠状态还是从不通电休眠状态恢复,如框120所述。如果处理系统20从通电休眠状态恢复,则系统固件40可或多或少地采用常规方法来从通电休眠中恢复以完成处理系统20的初始化,如框122所指示。系统固件40于是可将控制传递给OS 50用于其余的引导过程,如框144所述。
然而,如框130所指示的,如果处理系统20正从不通电休眠状态恢复,则系统固件40可确定OS 50在准备进入休眠状态时是否保存了恢复描述符。如果系统固件40没有找到恢复描述符,则系统固件40可提出异常和/或可进行差错处理,如框132所述。例如,系统固件40可执行诸如提供输出以向用户或远程管理员通知该差错、保存标识该差错的日志条目、回到硬引导或冷引导过程或这些或其它操作的任何适当组合等操作。
如果恢复描述符存在,则系统固件40读取恢复描述符(例如,恢复描述符92),如框140所述。如框142所示并如上所述,系统固件40于是可根据由OS 50保存的恢复描述符92中信息完成其初始化过程部分。例如,如果恢复描述符92指示OS 50将初始化某些设备或部分存储器,则系统固件40可通过不对该设备或该部分存储器进行初始化来节省时间。在一个实施例中,恢复描述符92列出将由除系统固件40外的组件执行的初始化操作。在其它的实施例中,恢复描述符92使用其它技术来指示哪些初始化操作将由系统固件40执行。在任一种情况下,恢复描述符92可描述平台初始化的最短路径以支持第一阶段内容的快速恢复。如框144所指示的,在进行任何要求的初始化操作之后,系统固件40于是可将控制传递给OS 50的引导代码。
图5中描述的过程在系统固件40检测到起动事件后开始。在框210,系统固件40可根据图4中所描述的过程进行系统初始化。在框212,根据图4的框144所示的操作,OS 50可从系统固件40接收控制。在框214,OS 50可从非易失性存储中检索恢复描述符92。例如,在示例实施例中,OS 50从永久固件变量(即,由系统固件提供的变量,该变量随后可从系统固件中检索,即使时在保存该变量的时间和检索该变量的时间之间处理系统断电的情况下)中检索恢复描述符92。
如框220所述,OS 50于是可确定处理系统20是否从休眠状态恢复。如果处理系统20没有从休眠状态恢复,则OS 50可进行硬引导或冷引导,如框222所指示的。如框222所述,如果处理系统20从休眠状态恢复,则OS 50可确定处理系统20从通电休眠状态还是从不通电休眠状态恢复,如框230所述。如果处理系统20从通电休眠状态恢复,则OS 50可执行或多或少的常规通电恢复,如框232所指示的。
然而,如果处理系统20从非通电休眠状态恢复,则过程可从框230进入框234,该框描述了OS 50使处理系统20执行第一阶段的上下文加载。在某些实施例中,数据处理系统可响应于检测的恢复描述符进行两阶段(或多阶段)加载过程。再次参考图3,在示例实施例中,当执行第一阶段加载时,OS 50可将第一阶段内容从诸如硬盘28之类的非易失性存储加载到RAM 26。如上所解释的,第一阶段内容94可包括在处理系统20进入休眠模式前接收用户输入的最后程序、具有系统焦点的最后程序、所有没有出存储器页面的程序、或存在于处理系统20中的程序的某些其它子集的系统上下文。
如离开框234的双路径所指示的,在加载第一阶段内容后,OS 50可开始第二阶段加载操作,同时还提供用户界面以允许在第二阶段加载完成前使用处理系统20。例如,如框236所指示的,在加载第一阶段内容94之后,OS 50可开始执行用户模式线程,例如向用户呈现界面。如果第一阶段内容包括接收用户输入的最后程序的上下文,则OS 50可在恢复用于该程序的上下文之后将控制返回给该程序,从而使用户能够恢复该程序的使用,好像处理系统20从未转变成休眠模式一样。此外,如框238所指示,处理系统20随后可接收诸如用户输入之类的输入。于是处理系统20在二级加载过程完成前为用户提供交互。因此,人们可以在整个系统上下文(即,在处理系统20进入休眠模式前存在的所有过程或程序的上下文数据)恢复前使用处理系统20。
如框240和242所指示的,在提供用户界面和接受用户交互的同时或基本同时,OS 50可执行所需的任何进一步的初始化操作并可加载第二阶段内容96。这些初始化操作可以是由恢复描述符92分配给OS的职责。例如,恢复描述符92可包括指示OS 50应初始化RAM 26的一个或多个特定部分的数据。恢复描述符92中指示哪些恢复操作应由OS执行和哪些由系统固件执行的数据被称为恢复描述符握手。在各实施例中,恢复描述符握手可向OS分配在执行第一阶段加载前不需要执行的任何操作或操作的组合。这些操作的其它例子可包括但不限于一个或多个特定设备的初始化等。
二级加载过程可将其余系统上下文的一些或全部(例如,来自恢复文件98的第二阶段内容96)恢复到RAM 26。当已恢复所有的第二阶段内容时,恢复过程可结束。在可选实施例中,多个二级或补充阶段可用于在第一阶段加载后加载附加内容。
一旦系统完成硬引导,完成从通电休眠状态的唤醒或完成从不通电休眠状态的唤醒,则过程可从图5通过页面连接符A进入图6的框250。处理系统20于是可确定是否有功率状态转变请求以进入不通电的休眠状态。例如,可响应于用户选择休眠选项或响应于经过预定时间量而没有用户输入来作出这一确定。
当处理系统20确定应进入不通电休眠模式时,OS 50可使处理系统将内核数据的分页池刷新到诸如硬盘28之类的非易失性存储,如框252所指示的。刷新操作可确保所有的回写磁盘高速缓存已刷新。如框254所指示的,OS 50还可将非分页数据(或当前上下文的任何其它合适子集)复制到相同或不同的非易失性存储设备中。
在一个实施例中,OS 50可将所有的分页数据视为第二阶段内容,并且OS 50可将该数据保存到硬盘28。另一方面,可将所有的非分页数据视为第一阶段内容,且OS 50可将该数据保存到闪存26中。在其它的实施例中,处理系统可包括三个或更多个不同的非易失性存储设备,而诸如恢复描述符、第一阶段内容和第二阶段内容之类的项可分别存储在不同的设备上。可将任何适当的方法用于保存第二阶段内容。例如,OS 50可在第二阶段内容96中创建日志以标识分页数据的现有位置或者OS 50可将分页内容合并到第二阶段内容96。
在示例实施例中,如框256所示,OS 50使用要用于恢复处理系统20的信息来填充并保存恢复描述符92。例如,OS 50可在恢复描述符92中保存诸如一个或多个以下各项的信息:
·描述OS 50将执行的初始化操作的数据,该操作可能包括在常规系统中引导固件在引导OS之前通常执行的操作。
·描述第一阶段加载内容的属性的数据,诸如该内容的位置、该内容的大小、包含该内容的设备的类型等。
·在恢复操作期间系统固件40将控制传递给OS 50时由系统固件40使用的信息,例如,如图5的框212所述。
在某些实施例中,OS可使用由系统固件提供的设备来在非易失性存储中保存恢复描述符。例如,如上所述,可将恢复描述符数据保存在固件变量中(例如,如图3所述的变量92)。
某些实施例可使用类似于以下的代码段中描述的结构以实现恢复描述符。
这一恢复描述符可具有INIT_MASK部分用于定位第一阶段内容。例如,INIT_MASK部分可存储标识以下内容的数据:(a)第一阶段内容是否存储到闪存中;(b)用于包含第一阶段内容的设备的设备路径(例如,离开总线#1、外围组件互连(PCI)设备7、功能0、分区0);(c)待恢复的不同存储器范围/片断的数量等。RESOURCE_DESCRIPTOR部分可用于存储标识以下内容的数据:(a)包含第一阶段内容的设备的类型(例如,硬盘驱动器、闪存等);(b)该设备上的第一阶段内容的开始位置(例如,闪存设备的字节偏移量或硬盘驱动器的相关扇区的LBA);(c)第一阶段内容的大小等。恢复描述符中的其它信息可包括标识待恢复的数据不同区域(例如,范围在1:22 MB的存储器,范围在40:32 MB的存储器等)的数据。在其它实施例中,可采用具有不同结构的恢复描述符。
当从休眠模式转变到活动模式时,在引导到OS 50之前,系统固件40可使用恢复描述符中指示将恢复哪些存储器区域的信息,以确定哪些存储器区域将由系统固件40恢复。例如,系统固件40可初始化待恢复的存储器区域,并可跳过其它存储器区域的初始化。因为系统固件40可仅初始化RAM 26的子集,所以引导固件可更迅速地完成其初始化过程。
恢复描述符92可包括另外的结构以存储标识哪些初始化操作将由系统固件40跳过并由OS 50执行的信息。例如,INIT_MASK结构可包括用于指示系统固件40将初始化存储器的全部还是存储器的子集的一个或多个比特,用于指示某些设备是要由系统固件40初始化还是由OS 50初始化的数据等。在可选实施例中,替换机制可用于指示哪些初始化操作将被系统固件跳过并由OS执行。
在框258,OS 50引起RAM 26的内容刷新以恢复文件98。该刷新是为了保证易失性组件(例如,存储器、高速缓存、CPU状态)的存储内容被完全刷新到非易失性存储。在示例实施例中,第一阶段内容94(参见图3)包括根据框252刷新到磁盘的内核数据,而第二阶段内容96包括根据框258刷新到恢复文件98的数据。同样,在框254引用的部分非分页数据可被保存到第一阶段内容94中,而其余的可被保存到第二阶段内容96中。例如,第一阶段内容94可从OS和具有焦点的应用程序中获得有关的非分页数据,而其余的非分页数据则可以进入第二阶段内容96。
OS 50于是可使处理系统50自断电,如框260所指示的。图4-6的过程可根据需要重复,例如,在处理系统20开始其下一初始化过程时在框11O处开始。
因此,根据以上描述,本发明的实施例可使处理系统能够比采用常规的恢复技术的处理系统快得多地从非通电休眠状态重新启动。例如,再次参考图2,与仅在持续时间d3之后才可进入活动模式的常规系统相比,根据本公开的系统可在持续时间d1后进入活动模式并开始执行用户模式线程。例如,基于每秒16兆字节(MB)的数据吞吐率的闪存,包含54.5MB的第一阶段内容的闪存,且该54.5MB第一阶段内容由用于最后的活动应用程序的22.4MB上下文数据和用于非分页核心上下文的32MB上下文数据组成,已设计出带有3.4GB RAM的可在小于4秒的时间中完成第一阶段加载而恢复到可用状态的处理系统。
此外,因为根据本公开,处理系统可以非常快速地从非通电休眠状态转变到活动状态,所以用户、卖方或系统管理员可在常规系统中要求通电休眠模式的情况下将处理系统配置成采用非通电休眠模式。甚至可将处理系统设计成仅支持(或配置成采用)非通电休眠模式。例如,本发明的实施例可使处理系统从非通电休眠模式恢复与从通电休眠模式恢复一样快。当然,非通电休眠模式要求极少或不要求功率来保存状态,而通电休眠模式要求很大的功率来保存状态。因此,采用不通电休眠模式来代替一个或多个通电休眠模式相对于常规系统就可节省大量电能。这一电能节省可转化为其它优点,诸如电池供电系统有效待机电源持续时间的延长。
此外,因为握手机制允许OS与系统固件在不通电休眠状态下通信,所以OS可动态地调节或再分配固件和OS之间的任务或责任,以实现改进的性能。例如,OS可接受初始化某些系统存储、某些系统设备等的职责。
鉴于本文描述并说明的原理和示例实施例,人们将认识到所述的实施例可在不背离这些原理的情况下在配置和细节方面进行修改。例如,尽管一个实施例在上文中被描述为采用硬盘和闪存作为非易失性存储,但是可选实施例可以只采用硬盘、闪存、某些其它类型的非易失性存储或非易失性存储技术的任何适当组合。
同样,尽管上述的讨论集中在特定的实施例,但也可预期其它的配置。即使在本文中使用诸如“在一个实施例中”、“在另一个实施例中”等的表达,这些短语表示一般引用实施例的可能性,而不打算将本发明限于特定的实施例结构。正如本文所使用的,这些术语可以引用可结合到其它实施例中的相同或不同的实施例。
类似地,尽管参考以特定顺序执行的特定操作描述了示例过程,但可将众多的修改应用到这些过程以导出本发明的众多可选实施例。例如,可选实施例可包括采用的操作比所有公开操作少的过程、采用附加操作的过程、采用相同操作但按不同顺序的过程以及其中本文公开的各个操作被结合、细分或以其他方式改变的过程。
本发明的选择实施例还包括用于执行本发明的操作的机器可访问介质编码指令。这种实施例也可被称为程序产品。这种机器可访问介质可包括但不限于诸如软盘、硬盘、CD-ROM、ROM以及RAM之类的存储介质;以及诸如天线、导线、光纤、微波、无线电波以及其它电磁或光载波。因此,指令或其它数据可在传输环境或网络上以分组、串行数据、并行数据、传播信号等形式发送,并可在分布式环境中使用并本地和/或远程地存储,用于由单或多处理器机器来访问。
还应理解本文描述的硬件和软件组件表示适当自主的功能元件,使得每一个元件都可基本独立于其它元件而设计、构造或更新。在可选实施例中,可将很多组件实现为硬件、软件或硬件和软件的组合用于提供本文描述和示出的功能性。用于执行本发明的操作的硬件、软件或硬件和软件的组合还可被称为逻辑或控制逻辑。
鉴于可容易地从本文所述的示例实施例导出的很多种有用的变换,本详细描述仅仅是说明性的,而不应理解为对本发明的限制。因此,本发明所要求的是所附权利要求的范围和精神内的所有实现以及这些实现的等价技术方案。
Claims (13)
1.一种用于快速恢复的方法,包括:
当将处理系统从休眠模式转变成活动模式时,将第一阶段恢复内容和第二阶段恢复内容加载到所述处理系统的易失性存储中;
其中所述第一阶段恢复内容包括在所述处理系统转变成休眠模式之前使用中的第一程序的上下文数据;以及
其中所述第二阶段恢复内容包括在所述处理系统转变成休眠模式之前使用中的另一个程序的上下文数据;
在所有的所述第二阶段恢复内容已被加载到所述易失性存储之前提供所述第一程序的用户界面;
当将所述处理系统从休眠模式转变成活动模式时,检索恢复描述符;以及
至少部分地基于所述恢复描述符,确定将由所述处理系统中的操作系统OS执行的初始化操作。
2.如权利要求1所述的方法,其特征在于:
所述第一阶段恢复内容包括足够的上下文数据,以允许所述处理系统在所有的所述第二阶段恢复内容已被加载到所述易失性存储之前提供所述第一程序的用户界面。
3.如权利要求1所述的方法,其特征在于,所述至少部分地基于所述恢复描述符,确定将由所述处理系统中的OS执行的初始化操作的操作包括:
确定所述OS被分配执行以下操作构成的组中的至少一个初始化操作:
初始化所述处理系统的易失性存储的至少一部分;以及
初始化所述处理系统中的一个设备。
4.如权利要求1所述的方法,其特征在于,所述检索恢复描述符的操作包括从非易失性存储器检索所述恢复描述符。
5.如权利要求1所述的方法,其特征在于,所述恢复描述符包括关于所述第一阶段恢复内容的信息。
6.如权利要求1所述的方法,其特征在于,还包括:
在准备将所述处理系统从活动模式转变成休眠模式时,将所述恢复描述符保存到非易失性存储。
7.如权利要求1所述的方法,其特征在于,还包括:
在准备将所述处理系统从活动模式转变成休眠模式时,利用固件变量来将所述恢复描述符保存到非易失性存储。
8.如权利要求1所述的方法,其特征在于,还包括:
在准备将所述处理系统从活动模式转变成休眠模式时,将所述恢复描述符保存到非易失性存储,将所述第一阶段恢复内容保存到非易失性存储,以及将所述第二阶段恢复内容保存到非易失性存储。
9.一种用于快速恢复的装置,包括:
当将处理系统从休眠模式转变成活动模式时,用于将第一阶段恢复内容和第二阶段恢复内容加载到所述处理系统的易失性存储中的装置,其中所述第一阶段恢复内容包括在所述处理系统转变成休眠模式之前使用中的第一程序的上下文数据,并且其中所述第二阶段恢复内容包括在所述处理系统转变成休眠模式之前使用中的另一个程序的上下文数据;
用于在所有的所述第二阶段恢复内容已被加载到所述易失性存储之前提供所述第一程序的用户界面的装置;
用于当将所述处理系统从休眠模式转变成活动模式时检索恢复描述符的装置;以及
用于至少部分基于所述恢复描述符,确定将由所述处理系统中的操作系统OS执行的初始化操作的装置。
10.如权利要求9所述的装置,其特征在于,所述用于至少部分基于所述恢复描述符,确定将由所述处理系统中的OS执行的初始化操作的装置包括:
用于确定所述OS被分配执行由以下操作构成的组中的至少一个初始化操作的装置:
用于初始化所述处理系统的易失性存储的至少一部分的装置;以及
用于初始化所述处理系统中的一个设备的装置。
11.如权利要求9所述的装置,其特征在于,还包括:
在准备将所述处理系统从活动模式转变成休眠模式时,用于将所述恢复描述符保存到非易失性存储的装置。
12.如权利要求9所述的装置,其特征在于,还包括:
在准备将所述处理系统从活动模式转变成休眠模式时,用于利用固件变量来将所述恢复描述符保存到非易失性存储的装置。
13.如权利要求9所述的装置,其特征在于,还包括:
在准备将所述处理系统从活动模式转变成休眠模式时,用于将所述恢复描述符保存到非易失性存储的装置,用于将所述第一阶段恢复内容保存到非易失性存储的装置,以及用于将所述第二阶段恢复内容保存到非易失性存储的装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/229,126 US7523323B2 (en) | 2005-09-15 | 2005-09-15 | Method and apparatus for quick resumption |
US11/229,126 | 2005-09-15 | ||
PCT/US2006/030523 WO2007040806A1 (en) | 2005-09-15 | 2006-08-03 | Method and apparatus for quick resumption |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110308278.1A Division CN102360301B (zh) | 2005-09-15 | 2006-08-03 | 用于快速恢复的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101263456A CN101263456A (zh) | 2008-09-10 |
CN101263456B true CN101263456B (zh) | 2011-12-07 |
Family
ID=37636093
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200680033757.4A Active CN101263456B (zh) | 2005-09-15 | 2006-08-03 | 用于快速恢复的方法和装置 |
CN201110308278.1A Active CN102360301B (zh) | 2005-09-15 | 2006-08-03 | 用于快速恢复的方法和装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110308278.1A Active CN102360301B (zh) | 2005-09-15 | 2006-08-03 | 用于快速恢复的方法和装置 |
Country Status (7)
Country | Link |
---|---|
US (3) | US7523323B2 (zh) |
EP (1) | EP1924909B1 (zh) |
CN (2) | CN101263456B (zh) |
AT (1) | ATE415654T1 (zh) |
DE (1) | DE602006003912D1 (zh) |
HK (1) | HK1166389A1 (zh) |
WO (1) | WO2007040806A1 (zh) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7480791B2 (en) | 2005-09-15 | 2009-01-20 | Intel Corporation | Method and apparatus for quick resumption where the system may forego initialization of at least one memory range identified in the resume descriptor |
US7523323B2 (en) * | 2005-09-15 | 2009-04-21 | Intel Corporation | Method and apparatus for quick resumption |
US9274807B2 (en) | 2006-04-20 | 2016-03-01 | Qualcomm Incorporated | Selective hibernation of activities in an electronic device |
US7900074B2 (en) * | 2006-06-02 | 2011-03-01 | Apple Inc. | Method and apparatus for quickly reanimating devices from hibernation |
US8504850B2 (en) * | 2008-09-08 | 2013-08-06 | Via Technologies, Inc. | Method and controller for power management |
US8499174B2 (en) * | 2008-09-08 | 2013-07-30 | Via Technologies, Inc. | Method and controller for power management |
US8213618B2 (en) | 2008-12-30 | 2012-07-03 | Intel Corporation | Protecting content on client platforms |
CA2693930C (en) * | 2009-02-23 | 2016-04-19 | Panasonic Electric Works Co., Ltd. | Monitoring and control device |
JP5289153B2 (ja) * | 2009-04-14 | 2013-09-11 | キヤノン株式会社 | 情報処理装置及びその制御方法、並びにコンピュータプログラム |
US9588803B2 (en) | 2009-05-11 | 2017-03-07 | Microsoft Technology Licensing, Llc | Executing native-code applications in a browser |
US20110107020A1 (en) * | 2009-10-30 | 2011-05-05 | Duan Binghua | Hibernation solution for embedded devices and systems |
JP2011107925A (ja) * | 2009-11-17 | 2011-06-02 | Ubiquitous Corp | プログラム、制御方法、並びに制御装置 |
US9323921B2 (en) | 2010-07-13 | 2016-04-26 | Microsoft Technology Licensing, Llc | Ultra-low cost sandboxing for application appliances |
US8903705B2 (en) | 2010-12-17 | 2014-12-02 | Microsoft Corporation | Application compatibility shims for minimal client computers |
US8370667B2 (en) * | 2010-12-22 | 2013-02-05 | Intel Corporation | System context saving based on compression/decompression time |
WO2012087566A2 (en) * | 2010-12-23 | 2012-06-28 | Intel Corporation | Method, apparatus and system to save processor state for efficient transition between processor power states |
JP5780769B2 (ja) * | 2011-01-26 | 2015-09-16 | キヤノン株式会社 | データ処理装置、その制御方法およびプログラム、並びに記憶媒体 |
US8694764B2 (en) | 2011-02-24 | 2014-04-08 | Microsoft Corporation | Multi-phase resume from hibernate |
US9891939B2 (en) | 2011-03-03 | 2018-02-13 | Microsoft Technology Licensing, Llc | Application compatibility with library operating systems |
US8601248B2 (en) * | 2011-03-28 | 2013-12-03 | Western Digital Technologies, Inc. | Disk drive booting from volatile semiconductor memory when exiting power save mode |
US9495183B2 (en) | 2011-05-16 | 2016-11-15 | Microsoft Technology Licensing, Llc | Instruction set emulation for guest operating systems |
CN102356384B (zh) | 2011-08-23 | 2013-04-24 | 华为技术有限公司 | 一种检测数据可靠性的方法和装置 |
US9389933B2 (en) | 2011-12-12 | 2016-07-12 | Microsoft Technology Licensing, Llc | Facilitating system service request interactions for hardware-protected applications |
US9413538B2 (en) | 2011-12-12 | 2016-08-09 | Microsoft Technology Licensing, Llc | Cryptographic certification of secure hosted execution environments |
WO2013101081A1 (en) | 2011-12-29 | 2013-07-04 | Intel Corporation | Methods and apparatus for trusted boot optimization |
US9274709B2 (en) * | 2012-03-30 | 2016-03-01 | Hewlett Packard Enterprise Development Lp | Indicators for storage cells |
CN102937923B (zh) * | 2012-10-24 | 2016-04-06 | 浪潮通用软件有限公司 | 一种自动保存用户界面状态的方法 |
TWI475368B (zh) * | 2012-11-21 | 2015-03-01 | Giga Byte Tech Co Ltd | 電源控制系統及其方法 |
JP2014106546A (ja) * | 2012-11-22 | 2014-06-09 | Mitsubishi Electric Corp | レジューム方法及び情報処理装置 |
WO2014122694A1 (ja) * | 2013-02-08 | 2014-08-14 | 三菱電機株式会社 | 情報処理装置およびプログラム |
CN103699203A (zh) * | 2013-11-21 | 2014-04-02 | 苏州斯普锐智能系统有限公司 | 一种降低电子设备能耗的方法 |
US9934047B2 (en) * | 2014-03-20 | 2018-04-03 | Intel Corporation | Techniques for switching between operating systems |
US10452561B2 (en) | 2016-08-08 | 2019-10-22 | Raytheon Company | Central processing unit architecture and methods for high availability systems |
CN106569879B (zh) * | 2016-10-28 | 2020-02-11 | 青岛海信移动通信技术股份有限公司 | 唤醒外设的方法及移动终端 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1530796A (zh) * | 2003-03-12 | 2004-09-22 | 联想(北京)有限公司 | 一种加快操作系统的引导方法 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5696897A (en) * | 1994-01-31 | 1997-12-09 | Sun Microsystems, Inc. | Method and apparatus for a multi-layer system quiescent suspend and resume operation |
US5778443A (en) * | 1994-12-14 | 1998-07-07 | International Business Machines Corp. | Method and apparatus for conserving power and system resources in a computer system employing a virtual memory |
US6393584B1 (en) * | 1995-04-26 | 2002-05-21 | International Business Machines Corporation | Method and system for efficiently saving the operating state of a data processing system |
US6493828B1 (en) * | 1998-08-31 | 2002-12-10 | Sony Corporation | Information processing apparatus, information processing method, and program storage medium |
US6347370B1 (en) * | 1998-12-30 | 2002-02-12 | Intel Corporation | Method and system for pre-loading system resume operation data on suspend operation |
WO2001037066A1 (fr) * | 1999-11-16 | 2001-05-25 | Fujitsu Limited | Processeur d'informations et support lisible par ordinateur |
US6609182B1 (en) * | 2000-01-20 | 2003-08-19 | Microsoft Corporation | Smart hibernation on an operating system with page translation |
JP4580528B2 (ja) * | 2000-09-25 | 2010-11-17 | 株式会社東芝 | コンピュータシステムおよびそのレジューム処理方法 |
US6766474B2 (en) * | 2000-12-21 | 2004-07-20 | Intel Corporation | Multi-staged bios-based memory testing |
US6546472B2 (en) * | 2000-12-29 | 2003-04-08 | Hewlett-Packard Development Company, L.P. | Fast suspend to disk |
JPWO2002095556A1 (ja) * | 2001-05-18 | 2004-09-09 | 富士通株式会社 | 待機モードを有する装置、プログラム、及び待機モードを有する装置の制御方法 |
US7299346B1 (en) * | 2002-06-27 | 2007-11-20 | William K. Hollis | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing |
US20040143696A1 (en) * | 2003-01-21 | 2004-07-22 | Francis Hsieh | Data storage system for fast booting of computer |
US20040158701A1 (en) * | 2003-02-12 | 2004-08-12 | Dell Products L.P. | Method of decreasing boot up time in a computer system |
CN1285990C (zh) * | 2003-03-12 | 2006-11-22 | 联想(北京)有限公司 | 保存并快速恢复计算机系统工作状态的方法 |
US20040230784A1 (en) * | 2003-05-12 | 2004-11-18 | Cohen Eugene M. | Concurrent program loading and execution |
US7225448B2 (en) | 2003-08-14 | 2007-05-29 | Lenovo (Singapore) Pte. Ltd. | System and method for hibernating application state data on removable module |
US7181609B2 (en) * | 2003-08-15 | 2007-02-20 | Intel Corporation | System and method for accelerated device initialization |
US7240189B2 (en) * | 2003-09-24 | 2007-07-03 | Texas Instruments Incorporated | Fast resume to normal operation of a computer in a power saving mode |
US20050216721A1 (en) * | 2004-03-24 | 2005-09-29 | Zimmer Vincent J | Methods and apparatus for initializing a memory |
JP2005316855A (ja) * | 2004-04-30 | 2005-11-10 | Toshiba Corp | 情報処理装置、その起動方法およびその起動プログラム |
KR101051703B1 (ko) * | 2004-08-09 | 2011-07-25 | 삼성전자주식회사 | 서스펜드/리쥼 기능을 갖는 집적 회로 카드 및 집적 회로카드 시스템 |
US20060265437A1 (en) * | 2005-05-23 | 2006-11-23 | Coulson Richard L | Contiguous boot and resume start-up files |
US7523323B2 (en) * | 2005-09-15 | 2009-04-21 | Intel Corporation | Method and apparatus for quick resumption |
US7987336B2 (en) * | 2008-05-14 | 2011-07-26 | International Business Machines Corporation | Reducing power-on time by simulating operating system memory hot add |
-
2005
- 2005-09-15 US US11/229,126 patent/US7523323B2/en active Active
-
2006
- 2006-08-03 CN CN200680033757.4A patent/CN101263456B/zh active Active
- 2006-08-03 AT AT06789443T patent/ATE415654T1/de not_active IP Right Cessation
- 2006-08-03 DE DE602006003912T patent/DE602006003912D1/de active Active
- 2006-08-03 WO PCT/US2006/030523 patent/WO2007040806A1/en active Application Filing
- 2006-08-03 EP EP06789443A patent/EP1924909B1/en active Active
- 2006-08-03 CN CN201110308278.1A patent/CN102360301B/zh active Active
-
2009
- 2009-04-07 US US12/384,673 patent/US8407489B2/en active Active
-
2012
- 2012-07-13 HK HK12106918.2A patent/HK1166389A1/zh unknown
-
2013
- 2013-02-11 US US13/764,245 patent/US8631259B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1530796A (zh) * | 2003-03-12 | 2004-09-22 | 联想(北京)有限公司 | 一种加快操作系统的引导方法 |
Non-Patent Citations (1)
Title |
---|
全文. |
Also Published As
Publication number | Publication date |
---|---|
US20090271641A1 (en) | 2009-10-29 |
EP1924909B1 (en) | 2008-11-26 |
WO2007040806A1 (en) | 2007-04-12 |
US20130151876A1 (en) | 2013-06-13 |
EP1924909A1 (en) | 2008-05-28 |
US8631259B2 (en) | 2014-01-14 |
CN102360301B (zh) | 2015-02-18 |
CN102360301A (zh) | 2012-02-22 |
HK1166389A1 (zh) | 2012-10-26 |
ATE415654T1 (de) | 2008-12-15 |
US20070061556A1 (en) | 2007-03-15 |
DE602006003912D1 (de) | 2009-01-08 |
CN101263456A (zh) | 2008-09-10 |
US7523323B2 (en) | 2009-04-21 |
US8407489B2 (en) | 2013-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101263456B (zh) | 用于快速恢复的方法和装置 | |
CN101263455B (zh) | 用于使处理系统从休眠状态迅速恢复的方法和装置 | |
CN101320314B (zh) | 用于快速改变数据处理系统的功率状态的方法和设备 | |
CN101283330B (zh) | 从关闭状态快速引导操作系统的方法和系统 | |
CN101650660B (zh) | 从中央存储装置引导计算机系统 | |
US8195624B2 (en) | Shared file system management between independent operating systems | |
CN101246389A (zh) | 提供从休眠状态瞬时接通恢复的计算系统节电方法和装置 | |
CN101364189A (zh) | 在操作系统协助下实现运行时间处理器迁移的方法和装置 | |
US9645625B2 (en) | System and method for power management of computing devices in a virtual desktop infrastructure | |
CN102135893A (zh) | 将操作系统集成到bios芯片及启动服务器上操作系统的方法 | |
US7600111B2 (en) | Method of restarting a computer platform | |
US10996876B2 (en) | Systems and methods for dynamically modifying memory namespace allocation based on memory attributes and application requirements | |
US11340882B2 (en) | Systems and methods for enforcing update policies while applying updates from bootable image file | |
US11243757B2 (en) | Systems and methods for efficient firmware update of memory devices in BIOS/UEFI environment | |
US20100005235A1 (en) | Computer system | |
US20130275739A1 (en) | Electronic apparatus, method of controlling the same, and computer-readable recording medium | |
US6918045B2 (en) | System, method and computer program product for selecting a power management mode in an information handling system | |
US20220043697A1 (en) | Systems and methods for enabling internal accelerator subsystem for data analytics via management controller telemetry data | |
Kumar et al. | Efficient operating system switching using mode bit and hibernation mechanism | |
US20130282992A1 (en) | Object-aware storage | |
CN104915236A (zh) | 嵌入式生物认证平台处理系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |