一种计算机系统休眠方法和一种计算机系统的制作方法

文档序号:6464495阅读:156来源:国知局
专利名称:一种计算机系统休眠方法和一种计算机系统的制作方法
技术领域
本发明主要涉及计算机领域,尤其涉及一种计算机系统休眠方法和一种计 算机系统。
背景技术
目前的操作系统(OS),以微软的操作系统windows为代表,开机和关机 过程很慢,为了解决开关机慢的问题,业界采用了S3, S4的方式。
S4的方式相当于挂起到硬盘,也就是我们所说的进入"休眠"状态,该 过程将内存中所有的数据保存到硬盘,在恢复的时候只需将硬盘中的备份数据 加载到内存中,启动时间比S5短,并且可以完全恢复至关机前的状态,不需 要重新打开文件或运行程序。但随着目前内存的配置越来越高,以及系统运行 过程中对内存的需求日益增加,导致系统在进入"休眠"时需要备份到硬盘中 的数据越来越大,并由此导致采用S4作为关机的方式要等待的时间很长。这 也是目前系统使用中很痛苦的一个事情。

发明内容
本发明的一目的在于提供一种计算机系统休眠方法,以解决现有技术在进 入休眠模式时,由于需要将内存中的全部数据拷贝至硬盘导致的拷贝时间长、 关机慢的问题。
本发明的另一目的在于提供一种计算机系统,以解决现有的计算机系统在 进入休眠模式时,由于需要将内存中的全部数据拷贝至硬盘导致的拷贝时间 长、关机慢的问题。
为解决上述问题,本发明公开了一种计算机系统休眠方法,所述方法包括
获得所述计算机系统进入休眠模式的指令;获得所述计算机系统进入休眠模式的指令;
基于所述指令,将自最后一次内存备份的时刻起内存中变化的数据拷贝到
非易失性存储器,所述最后一次内存备份于所述获得计算机系统进入休眠模式
的指令之前执行;
当所述将自最后一次内存备份的时刻起内存中变化的数据拷贝到非易失 性存储器完成后,所述计算机系统进入休眠模式。 优选的,所述内存备份执行至少一次。 优选的,所述内存备份之前还包括-.
将所述内存划分为多个块区;所述多个块区中的每个块区具有一标志位, 所述标志位用于标识所述块区中的数据是否需要备份; 所述内存备份包括
当所述标志位标识为需要备份状态时,将与所述包含所述需要备份状态的 标志位对应的块区的数据拷贝到所述非易失性存储器;拷贝结束后,将所述被 拷贝的块区的标志位标识为无需备份状态;
若检测到所述多个块区中存在块区数据发生变化的块区,标识所述数据发 生变化的块区的标志位为需要备份状态;
为需要备份状态的块区的数据。
优选的,所述内存备份之前还包括
在所述非易失性存储器中设置内存数据镜像区;
所述内存备份包括
比较内存中的数据与所述内存数据镜像区中的数据是否相同,若不相同, 将所述内存相对于所述内存数据镜像区的差异数据拷贝到所述内存数据镜像
数据与所述内存数据镜像区相比所获得的差异数据。
优选的,所述最后一次内存备份是通过统计所述计算机系统的用户的使用 习惯,获取所述用户发出进入休眠模式指令时间的前一时刻作为所述最后一次 内存备份的执行时刻。
所述自最后一》为解决上述问题,本发明还公开了一种计算机系统,包括中央处理单元、
内存和非易失性存储器,所述系统还包括
休眠指令获取单元,用于获得所述计算机系统进入休眠模式的指令; 内存备份单元,用于将内存中的数据备份到非易失性存储器; 休眠控制单元,用于将自内存备份单元最后一次执行内存备份的时刻起内 存中变化的数据拷贝到非易失性存储器,所述内存备份单元最后一次执行内存 备份于所述休眠指令获取单元获得计算机系统进入休眠模式的指令之前执行; 休眠单元,用于将所述计算机系统设置为休眠模式 优选的,所述系统还包括
内存备份控制单元,用于控制所述内存备份单元执行至少一次内存备份。 优选的,所述系统还包括
分区单元,用于将内存划分为多个块区;所述多个块区中的每个块区具有 一标志位,所述标志位用于标识所述块区中的数据是否需要备份;
所述内存备份单元还包括
第一拷贝单元,用于当块区的标志位标识为需要备份状态时,将包含所述 需要备份状态的标志位对应的块区的数据拷贝到非易失性存储器;以及拷贝结 束后,将所述被拷贝的块区的标志位标识为无需备份状态;
检测单元,用于检测分区单元所划分出的多个块区中是否存在块区数据发 生变化的块区,若4企测出,标识所述数据发生变化的块区的标志位为需要备份 状态;
所述休眠控制单元向非易失性存储器所拷贝的自内存单元最后一次内存 备份的时刻起内存中变化的数据是当前标志位标识为需要备份状态的块区的 数据。
优选的,所述非易失性存储器中包括内存数据镜像区; 所述内存备份单元还包括
比较单元,用于比较内存中的数据与所述内存数据镜像区中的数据是否相 同,若不相同,通知第二拷贝单元拷贝数据;
第二拷贝单元,用于将所述内存相对于所述内存数据镜像区的差异数据拷
贝到所述内存数据镜像区;所述休眠控制单元向非易失性存储器所拷贝的自内存单元最后一次内存 备份的时刻起内存中变化的数据是所述内存中当前数据与所述内存数据镜像 区相比所获得的差异数据。
优选的,所述系统还包括
执行时刻获取单元,用于通过统计系统用户的使用习惯,获得该用户发出 进入休眠模式指令时间的前一时刻作为所述内存备份单元执行最后 一次内存 备份的执行时刻。
现有技术在计算机系统进入休眠模式时,通常是一次性将内存中的数据拷 贝到硬盘中,待需要恢复时再将硬盘中备份的内容加载到内存。随着内存的配
置越来越高,系统运行时占用的内存越来越大,常常超过1G甚至更多,因此
采用上述方法备份内存中的数据需要花费大量的时间,用户往往难以忍受。而 本发明的一实施例在系统收到休眠指令后,只需将系统内存中自上一时刻起发 生变化的数据拷贝至硬盘,因此,大大减少了进入休眠模式时需要拷贝到硬盘 中的数据量,有效减少了拷贝数据的时间,降低了用户的等待时间。


图la本发明实施例1中内存数据备份的步骤流程图lb为本发明实施例2系统进入休眠模式的步骤流程图2为本发明系统实施例的结构框图。
具体实施例方式
本发明所述方法概括而言,包括以下步骤 1]获得所述计算机系统进入休眠模式的指令。
2]基于所述指令,将自最后一次内存备份的时刻起内存中变化的数据拷 贝到非易失性存储器,所述最后一次内存备份于所述获得计算机系统进入休眠 模式的指令之前执行。
3]当所述将自最后一次内存备份的时刻起内存中变化的数据拷贝到非易 失性存储器完成后,所述计算机系统进入休眠模式。
其中,所述非易失性存储器通常为系统内的硬盘,但也可以是其他存储器,如闪存、磁带等。
以上简要介绍了本发明所述方法,下面结合附图和具体的实施例对本发明
做进一步详细描述
首先,参见图la对计算机系统在发出休眠指令之前如何执行内存备份进 行说明
步骤IOI,将内存划分为多个块区。
对内存划分块区的目的是为了便于管理和操作。在实施时,既可以按照内 存页的方式划分块区,也可以直接对内存物理地址划分块区。
对内存数据的访问通常有两种方式, 一种是通过虚拟地址访问内存中的数 据,另一种是通过直4妄内存访问(Direct Memory Access, DMA)读耳又内存物 理块区中的数据。
内存地址包括物理地址和虚拟地址。对程序来"i兌,可见的只有虛拟地址, 物理地址是透明的,程序操作的所有内存地址都是虚拟地址。当程序对某个内 存地址操作时,中央处理单元(CPU)的内存管理单元(Memory Management Unit, MMU)会自动#4居系统预先设定的映射表找到该虚拟地址对应的物理 地址,并把对虚拟地址的操作应用到对应的物理内存地址。内存管理单元对虚 拟地址和物理地址的映射以页为长度单位。
但由于DMA方式无需占用CPU资源,也无需占用OS资源,而且省略了 中间的虚拟地址到物理地址的转换,因此,相对于虚拟地址访问方式不但消耗 资源少而且具有较快的访问速度。因此,本例优选的,将内存划分为多个物理 块区,以DMA方式访问内存^t据。
步骤102,对块区设置相应的状态标识。
将内存划分为多个物理块区,在每一个块区中设置一个标志位,该标志位 用以标识该物理块区的数据是否需要备份,例如,用"0"表示需要,'T,表 示不需要。
步骤103,初始化块区的状态标识。
该步骤为可选步骤。可将各物理块区中的标志位的初始值设置为"0",这 样一来,当执行第一次内存备份时可将内存中当前全部数据拷贝到硬盘。另外, 也可将初始值设置为"0",之后,若检测到某个块区的数据发生变化,则将该
9块区的标志位置为"0"。
步骤104,执行内存备份。
所述内存备份就是将标志位为需要备份状态的块区的数据拷贝至非易失
性存储器,即将标志位为"0"的物理块区的数据拷贝至非易失性存储器。
拷贝结束后,将所述被拷贝的块区的标志位置为无需备份状态"1"。 在获得计算机系统进入休眠模式指令之前,可按预定规则执行一次或多次
内存备4分。例如
(1 )按一定时间间隔重复执行内存备份操作。所述时间间隔既可以是固 定时间间隔,如每隔1小时触发一次备份操作,也可以非固定时间间隔,如任 意选定几个时间点作为所述备份操作的触发点。
(2)判断系统当前可用资源是否超出预置阀值,若未超出,则触发执行 内存备份操作。所述系统当前可用资源既可以是硬盘资源,也可以是CPU资 源、总线资源等,至于选择何种资源作为此处判断的依据,以及如何设定所述 阀值的大小,则可由本领域技术人员在实施本发明时根据需要自行设定,只要 此刻执行内存数据备份不影响当前系统运行即可,本发明对此不作限制,例如, 若系统当前CPU可用资源超过70 % ,则执行内存数据备份。
另外,也可将多种规则组合使用,例如,当到达触发时间点后,继续判断 当前系统可用资源是否超出预置阀值,若超出,则执行内存备份。
在该步骤中,若所述内存备份操作执行了多次,则其中最后一次即本发明 所述的最后一次内存备份。
步骤105,若^^测到块区的数据发生改变,更新该块区的状态标识。
若检测到某个块区的数据发生了改变,例如该块区中增加了新的数据、 数据被修改或被删除等,则将该块区中标志位的值设置为需要备份状态"0"。
以上对计算机系统如何在发出休眠指令之前执行内存备份进行了说明,下 面,结合上文和图lb对计算机系统如何进入休眠模式进行说明 步骤106,获得计算机系统进入休眠模式的指令。
步骤107,将自最后一次内存备份的时刻起内存中变化的数据拷贝到非易 失性存储器。自最后一次内存备份的时刻起内存中变化的数据,对本例而言,就是通过
判断内存物理块区的标志位来找出相应的物理块区若所述标志位值为"0", 则表示该物理块区的数据发生了变化,需要进行备份,若为"1",则无需备份。
将标志位值为"0"的物理块区中的数据拷贝至硬盘。
步骤108,系统进入^f木眠冲莫式。
以上介绍了本发明的实施例1,本发明的实施例2与上述实施例的区别在 于不是通过设置内存块区的状态标志位来判断哪些内存数据需要备份,而是通 过比较系统当前内存中的数据与硬盘内存数据镜像区中数据的差异来判断需 要备份的内存数据。实施例2描述如下
步骤201,在硬盘中设置内存数据镜像区。
步骤203,在获得计算机系统进入休眠模式指令之前,按预定规则执行一 次或多次内存备份。
该步骤中的内存备份具体包括比较内存中的数据与硬盘中内存数据镜像 区中的数据是否相同,若不相同,将所述内存相对于所述内存数据镜像区的差 异数据拷贝到所述内存数据镜像区。
在比较内存中的数据与硬盘中内存数据数据镜像区中的数据时,可采用二 进制按位比较的方式以便提高比较的速度。
步骤204,若获得计算机系统进入休眠模式指令,执行下面的步骤。
步骤205,将内存中当前数据与内存数据镜像区相比所获得的差异数据拷 贝到内存数据镜像区。
步骤206,系统关机。
与实施1相比,由于不必在系统运行期间设置监控器以及动态更新备份状 态表,因此,可减少运行期间对系统资源的占用。并且由于采用数据二进制按 位比较、拷贝的方式,因此可大大提高比较和拷贝的速度。
以下为本发明实施例3。首先,描述系统收到进入休眠模式指令之前内存 备份的步骤流程
步骤301,设置备份状态表用以记录与各内存数据对应的状态标识。备份状态表可以表现为多种形式,例如可以是一个tXt文件或内存中的一 块数据等。
如表1所示,以内存页为例给出所述备份状态表的示例说明
内存页备份状态
Page A0
PageB0
PageC1
PageD0
表1
其中,所述备份状态"0"表示该内存页对应的数据需要备份,"1"表示
该内存页对应的数据无需备份。
若采用DMA方式访问内存数据,所建立的备份状态表如表2所示
内存块备份状态
0000~00110
0100-01110
1000- 10111
1100-11110
表2
其中,OOOO表示内存的物理地址。
在实施本发明时,可采用上述任何一种访问方式或其它访问方式来访问内 存数据。为便于说明,在下面的描述中,我们均以虛拟地址访问和内存页来描 述本发明。
步骤302,初始化备份状态表。
将备份状态表中各内存页的备份状态初始化为'T'。
步骤303,监控器监控各内页中的数据,若该内存页中的数据发生改变, 则执行步骤1031。
步骤3031,更新所述备份状态表中该内存数据对应的备份标记。
可针对各内存页设置一个或分别设置多个监控器来监控各内存页对应的 内存数据是否发生改变,若改变,则将该内存页在备份状态表中对应的备份标
12记设置为"0"。
监控器可不受干扰地独立运行,例如可采用多线程的方式运行监控器,以 保证监控的有效性和及时性。
步骤304,按一定时间间隔触发判断系统当前可用资源是否超出预置阀 值,若超出,执行下步骤305;否则,重复执行步骤304。
步骤305,根据备份状态表将需要备份的内存页的数据拷贝到非易失性存
将备份状态表中备份状态为"0"的内存页所对应的数据拷贝至硬盘特定
以下为实施例3中系统进入休眠模式的步骤流程
步骤306,触发进入休眠模式。
用户向系统发出进入休眠模式的指令。
步骤307,操作系统进入休眠准备。
步骤308,内存数据备份。
根据备份状态表将需要备份的内存页的数据拷贝到非易失性存储器中。 步骤309,操作系统将控制权交给BIOS。 步骤310, BIOS控制硬件关机。 系统进入休眠模式。
实施例4与上述实施例区别在于通过统计一段时间内用户向系统发出休 眠指令的时间点来获取最后一次内存备份的触发时间点。
大多数用户在使用计算机系统时往往具有一定的规律性,例如在相对固定 的时间开机、关机等。系统按照自主学习的方式,统计用户在一段时间内的动 作,例如在中午12点后不再操作计算机系统,使系统处于空闲状态;在18 点左右向系统发出休眠指令等。通过统计这些有规律的动作获取休眠指令的触 发时间点,而且该触发时间点还可根据系统自主学习不断地进行修正。然后, 在所述触发时间点之前设置一个或多个时间点来触发内存备份。
通过上述方法尽可能地减少了系统休眠之前执行内存数据备份的次数,使得因内存备份对系统的影响降至最低。最优的情况下,只需在休眠指令发出前 执行一次内存备份即可。
实施例4未详尽之处请参见上述实施例,这里不再赘述。需要说明的是,
发明时可根据实际需要对其进行任意组合。例如通过系统自主学习获取休眠 指令执行点并在该执行点之前设置一个备份点;然后通过DMA方式直接将系 统当前内存数据全部拷贝至硬盘特定区域;在备份状态表中设置各内存块的备 份状态;通过监控器监控系统当前各内存块的数据是否改变,若改变,更新备 份状态表中内存块对应的备份状态;判断是否能够触发内存备份,若可以触发, 根据备份状态表将需要备份的内存块的数据拷贝至硬盘中,以及更新被拷贝的 内存块在备份状态表中对应的备份标记为无需备份"1";监控器继续监控系统 当前各内存块;若获得系统休眠指令,根据备份状态表将当前需要备份的内存 块拷贝至硬盘中;系统进入休眠模式。
下面结合具体的应用环境对本发明所述方法做进一步阐述
在具有STR功能的主板上安装了微软公司的windows xp操作系统后,在 系统区根目录下会有一个hiberfil.sys的文件,它的大小和物理内存容量一样, 这个文件就是xp休眠时所占用的硬盘空间的文件(windows xp默认休眠功能 是处于打开状态的)。电脑处于休眠状态时,内存中的所有内容将被保存到硬 盘的hiberfil.sys文件,随后电脑会被关闭。电脑在返回打开状态之后,系统会 从这个文件中,将所有数据加载到内存,以便将关闭电脑前所有打开的程序和 文档还原到系统桌面。
以下介绍在OS中进入休眠模式的具体实现方法
步骤501,设置并初始化备份状态表。
步骤502,触发定时备份。
在OS中设置定时中断,其间隔时间可以自行设定。 步骤503,判断系统是否空闲,若忙,则等待并重新执行步骤503,否则 执行步骤504。
中断服务程序,4企查系统空闲状态,比如可以通过检查进程System Idle操作系统核心虚拟出来的(多任务操作系统都存在该进程)。例如,在没有可
用的进程时,系统处于空运行状态,此时就是System Idle Process SYSTEM在 运行,故它占用97%CPU资源,说明此时的整机系统负荷很轻。
的hiberfil.sys文"f牛。
需备份,直到检测出该内存页的数据发生变化后,再重新将该内存页的状态标 记置为需要备份。
以下为计算机系统触发进入休眠模式的步骤流程
步骤505,触发进入S4。
用户发出进入休眠状态的指令。
步骤506, OS进入S4准备。
步骤507,将当前系统内存中需要备份的数据拷贝置硬盘。 根据备份状态表将标记为未备份的内存页的数据拷贝至硬盘中的 hiberfil.sys文件。
步骤508, OS将控制权交给BIOS。 步骤509,硬件关机。
以上通过几个实施例描述了本发明所述的一种计算机系统休眠方法,下面 结合附图对本发明所述的一种计算机系统进行描述
如图2所示,是本发明公开的一种采用英特尔架构(Intel Architecture, IA)的计算机系统。
所述计算机系统包括中央处理单元610、内存620、非易失性存储器630。 其中在硬盘中设置了内存数据镜像区,用来存放系统内存的备份数据。以 windows xp系统为例,该内存镜像分区就是xp系统区根目录下的hiberfil.sys 文件。
所述系统还包括
休眠指令获取单元640,用于获得所述计算机系统进入休眠模式的指令; 内存备份单元650,用于将内存中的数据备份到非易失性存储器630;内存备份单元650,用于将内存中的数据备份到非易失性存储器630;
休眠控制单元660,用于将自内存备份单元650最后一次执行内存备份的 时刻起内存中变化的数据拷贝到非易失性存储器630,所述内存备份单元650 最后一次执行内存备份于所述休眠指令获取单元640获得计算机系统进入休 眠模式的指令之前执行;
休眠单元670,用于将所述计算机系统设置为休眠模式
优选的,所述系统还包括
内存备份控制单元680,用于控制所述内存备份单元650执行一次或多次 内存备份。
优选的,所述系统还包括
分区单元690,用于将内存划分为多个块区;所述多个块区中的每个块区 具有一标志位,所述标志位用于标识所述块区中的数据是否需要备份; 所述内存备份单元650还包括
第一拷贝单元651,用于当块区的标志位标识为需要备份状态时,将包含 所述需要备份状态的标志位对应块区的数据拷贝到非易失性存储器;以及拷贝 结束后,将所述被拷贝的块区的标志位标识为无需备份状态;
检测单元652,用于检测分区单元所划分出的多个块区中是否存在块区数 据发生变化的块区,若检测出,标识所述数据发生变化的块区的标志位为需要 备份状态;
所述休眠控制单元660向非易失性存储器630所拷贝的自内存单元最后一 次内存备份的时刻起内存中变化的数据是当前标志位为需要备份状态的块区 的数据。
优选的,所述内存备份单元650还包括
比较单元653,用于比较内存中的数据与所述内存数据镜像区中的数据是 否相同,若不相同,通知第二拷贝单元拷贝数据;
第二拷贝单元654,用于将所述内存相对于所述内存数据镜像区的差异数 据拷贝到所述内存数据镜像区;
所述休眠控制单元660向非易失性存储器630所拷贝的自内存单元620 最后一次内存备份的时刻起内存中变化的数据是所述内存中当前数据与所述内存数据镜像区相比所获得的差异数据。
优选的,所述系统还包括
执行时刻获取单元710,用于通过统计系统用户的使用习惯,获得该用户
发出进入休眠模式指令时间的前一时刻作为所述内存备份单元执行最后一次
内存备份的执行时刻。
本发明系统实施例未详尽之处请参见上述实施例有关内容。 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发
明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发
明的保护范围之内。
1权利要求
1、一种计算机系统休眠方法,其特征在于,所述方法包括获得所述计算机系统进入休眠模式的指令;基于所述指令,将自最后一次内存备份的时刻起内存中变化的数据拷贝到非易失性存储器,所述最后一次内存备份于所述获得计算机系统进入休眠模式的指令之前执行;当所述将自最后一次内存备份的时刻起内存中变化的数据拷贝到非易失性存储器完成后,所述计算机系统进入休眠模式。
2、 根据权利要求1所述的方法,其特征在于,所述内存备份执行至少一次。
3、 根据权利要求1或2所述的方法,其特征在于,所述内存备份之前还 包括将所述内存划分为多个块区;所述多个块区中的每个块区具有一标志位, 所述标志位用于标识所述块区中的数据是否需要备份; 所述内存备份包括当所述标志位标识为需要备份状态时,将与所述包含所述需要备份状态的 标志位对应的块区的数据拷贝到非易失性存储器;拷贝结束后,将所述被拷贝 的块区的标志位标识为无需备份状态;若检测到所述多个块区中存在块区数据发生变化的块区,标识所述数据发 生变化的块区的标志位为需要备份状态;为需要备份状态的块区的数据。
4、 根据权利要求1或2所述的方法,其特征在于,所述内存备份之前还 包括在所述非易失性存储器中设置内存数据镜像区; 所述内存备份包括比较内存中的数据与所述内存数据镜像区中的数据是否相同,若不相同, 将所述内存相对于所述内存数据镜像区的差异数据拷贝到所述内存数据镜像区;所述自最后一次内存备份的时刻起内存中变化的数据是所述内存中当前 数据与所述内存数据镜像区相比所获得的差异数据。
5、 根据权利要求i所述的方法,其特征在于,所述最后一次内存备份是 通过统计所述计算机系统的用户的使用习惯,获取所述用户发出进入休眠模式 指令时间的前一时刻作为所述最后一次内存备份的执行时刻。
6、 一种计算机系统,包括中央处理单元、内存和非易失性存储器,其特 征在于,所述系统还包括休眠指令获取单元,用于获得所述计算机系统进入休眠模式的指令; 内存备份单元,用于将内存中的数据备份到非易失性存储器; 休眠控制单元,用于将自内存备份单元最后一次执行内存备份的时刻起内 存中变化的数据拷贝到非易失性存储器,所述内存备份单元最后一次执行内存 备份于所述休眠指令获取单元获得计算机系统进入休眠模式的指令之前执行; 休眠单元,用于将所述计算机系统设置为休眠模式
7、 根据权利要求6所述的系统,其特征在于,所述系统还包括 内存备份控制单元,用于控制所述内存备份单元执行至少一次内存备份。
8、 根据权利要求6或7所述的系统,其特征在于,所述系统还包括 分区单元,用于将内存划分为多个块区;所述多个块区中的每个块区具有一标志位,所述标志位用于标识所述块区中的数据是否需要备份; 所述内存备份单元还包括第一拷贝单元,用于当块区的标志位标识为需要备份状态时,将包含所述 需要备份状态的标志位对应的块区的数据拷贝到非易失性存储器;以及拷贝结 束后,将所述被拷贝的块区的标志位标识为无需备份状态;检测单元,用于检测分区单元所划分出的多个块区中是否存在块区数据发 生变化的块区,若检测出,标识所述数据发生变化的块区的标志位为需要备份 状态;所述休眠控制单元向非易失性存储器所拷贝的自内存单元最后一次内存 数据。
9、 根据权利要求6或7所述的系统,其特征在于,所述非易失性存储器 中包括内存数据镜像区;所述内存备份单元还包括比较单元,用于比较内存中的数据与所述内存数据镜像区中的数据是否相 同,若不相同,通知第二拷贝单元拷贝数据;第二拷贝单元,用于将所述内存相对于所述内存数据镜像区的差异数据拷 贝到所述内存数据镜像区;所述休眠控制单元向非易失性存储器所拷贝的自内存单元最后一次内存 备份的时刻起内存中变化的数据是所述内存中当前数据与所述内存数据镜像 区相比所获得的差异数据。
10、 根据权利要求6所述的系统,其特征在于,所述系统还包括 执行时刻获取单元,用于通过统计系统用户的使用习惯,获得该用户发出进入休眠模式指令时间的前一时刻作为所述内存备份单元执行最后一次内存 备份的执行时刻。
全文摘要
本发明公开了一种计算机系统休眠方法和一种计算机系统,所述方法包括获得所述计算机系统进入休眠模式的指令;基于所述指令,将自最后一次内存备份的时刻起内存中变化的数据拷贝到非易失性存储器,所述内存备份于所述获得计算机系统进入休眠模式的指令之前执行;当所述将自最后一次内存备份的时刻起内存中变化的数据拷贝到非易失性存储器完成后,所述计算机系统进入休眠模式。通过实施本发明,可大大减少系统在进入休眠模式时需要从内存拷贝到硬盘的数据量,进而有效降低用户的等待时间。
文档编号G06F1/32GK101620460SQ200810116070
公开日2010年1月6日 申请日期2008年7月2日 优先权日2008年7月2日
发明者李众庆 申请人:联想(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1