一种用于终端设备的启动方法和系统与流程

文档序号:11176981阅读:590来源:国知局
一种用于终端设备的启动方法和系统与流程

本发明涉及操作系统技术领域,特别是涉及一种用于终端设备的启动方法和系统。



背景技术:

由于操作系统的复杂度和种类不断增加,其系统内核与基于其上的软件平台的复杂度与量级也不断增长。大型的系统内核与软件平台因需要大量的初始化流程与文件加载,往往会造成系统启动的延迟。

为解决上述问题,诸如休眠功能与挂起到硬盘之类的方法已经被提出。休眠功能与硬盘挂起方法能通过在关闭系统时在非易失性介质如磁盘、闪存中存储随机存取存储器(ram)与cpu的状态信息来赋予系统快速启动的功能;被存储的状态信息在系统重启时会被还原至原来的位置,其中,被存储的状态信息通称为快照。

休眠的原理是将系统当前状态保存在硬盘中的一个休眠文件里,接着所有设备关闭,重启时自动调用硬盘保存的文件,恢复到关机前的状态,但恢复速度较慢;挂起是将当前状态全部加载至内存,硬盘停止供电,虽然此种方法恢复速度较快,但如果断电,则系统状态全部丢失,只能进行重启。

因此,如何既能保证系统信息的安全性,又能保证系统重启的速度,是本领域技术人员目前需要解决的技术问题。



技术实现要素:

本发明的目的是提供一种用于终端设备的启动方法和系统,既能保证系统信息的安全性,又能保证系统重启的速度。

为解决上述技术问题,本发明提供了如下技术方案:

一种用于终端设备的启动方法,包括:

预先根据目标终端设备的系统状态信息生成对应的快照;

将所述快照分离成若干快照块;

将各所述快照块存储至预设非易失性存储器;

判断当前处于关闭状态的所述目标终端设备是否要进行系统重启;

若是,则将存储在所述预设非易失性存储器中的快照块加载至预设的易失性存储器中;

对所述目标终端设备进行系统重启。

优选地,所述将各所述快照块存储至预设非易失性存储器,包括:判断各所述快照块是否符合预设的压缩条件;若是,则对符合预设的压缩条件的快照块进行压缩;将各压缩后的快照块以及不符合预设的压缩条件的快照块均存储至预设非易失性存储器;

相应地,所述将存储在所述预设非易失性存储器中的快照块加载至预设的易失性存储器中,包括:将存储在所述预设非易失性存储器中的快照块加载至预设的易失性存储器中,并对加载至所述预设的易失性存储器中的被压缩的各快照块进行解压缩。

优选地,所述将存储在所述预设非易失性存储器中的快照块加载至预设的易失性存储器中,并对加载至所述预设的易失性存储器中的被压缩的各快照块进行解压缩,包括:

将存储在所述预设非易失性存储器中的快照块加载至预设的易失性存储器中;

实时判断所述预设的易失性存储器中是否存储有已加载完毕的快照块;

若是,则判断已加载完毕的快照块是否是被压缩的快照块;

若是,则实时对该被压缩的快照块进行解压缩。

优选地,所述判断各所述快照块是否符合预设的压缩条件,包括:

判断各所述快照块的压缩时间和加载时间之和是否小于该快照块的截止时间;

判断各所述快照块的压缩比率是否处于预设的阈值范围内。

优选地,所述将存储在所述预设非易失性存储器中的快照块加载至预设的易失性存储器中,包括:

判断存储在所述预设非易失性存储器中的各所述快照块是否包含系统重启所必要的数据;

若是,则将该快照块加载至预设的易失性存储器中。

一种用于终端设备的启动系统,包括:

快照生成模块,预先根据目标终端设备的系统状态信息生成对应的快照;

快照分离模块,用于将所述快照分离成若干快照块;

非易失存储模块,用于存储各所述快照块;

判断模块,用于判断当前处于关闭状态的所述目标终端设备是否要进行系统重启;

易失存储模块,用于在所述判断模块判定当前处于关闭状态的所述目标终端设备要进行系统重启时,加载存储在所述非易失存储模块中的快照块;

启动模块,用于根据所述易失存储模块加载的快照块对所述目标终端设备进行系统重启。

优选地,所述非易失存储模块包括:第一判断单元,用于判断各所述快照块是否符合预设的压缩条件;压缩单元,用于在所述第一判断单元判定各所述快照块符合预设的压缩条件时,对符合预设的压缩条件的快照块进行压缩;第一存储单元,用于存储各压缩后的快照块以及不符合预设的压缩条件的快照块;

相应地,所述易失存储模块包括:加载单元,用于将存储在所述非易失存储模块中的快照块加载至第二存储单元;所述第二存储单元,用于存储所述加载单元加载的快照块;解压单元,用于对所述第二存储单元中的被压缩的各快照块进行解压缩。

优选地,所述易失存储模块还包括:

第二判断单元,用于实时判断所述第二存储单元中是否存储有已加载完毕的快照块;

第三判断单元,用于在所述第二判断单元判定所述第二存储单元中存储有已加载完毕的快照块时,判断已加载完毕的快照块是否是被压缩的快照块;

其中,所述解压单元用于在所述第三判断单元判定已加载完毕的快照块是被压缩的快照块时,实时对该被压缩的快照块进行解压缩。

优选地,所述第一判断单元包括:

第一判断子单元,用于判断各所述快照块的压缩时间和加载时间之和是否小于该快照块的截止时间;

第二判断子单元,用于判断各所述快照块的压缩比率是否处于预设的阈值范围内。

优选地,所述易失存储模块还包括:

第四判断单元,用于判断存储在所述非易失性存储模块中的各所述快照块是否包含系统重启所必要的数据;

其中,所述加载单元还用于在所述第四判断单元判定存储在所述非易失性存储模块中的各所述快照块包含系统重启所必要的数据时,将该快照块加载至所述第二存储单元。

与现有技术相比,上述技术方案具有以下优点:

本发明所提供的一种用于终端设备的启动方法,包括:预先根据目标终端设备的系统状态信息生成对应的快照;将快照分离成若干快照块;将各快照块存储至预设非易失性存储器;判断当前处于关闭状态的目标终端设备是否要进行系统重启;若是,则将存储在预设非易失性存储器中的快照块加载至预设的易失性存储器中;对目标终端设备进行系统重启。通过生成快照来保存终端设备的系统状态信息,将快照存储在非易失性存储器中,避免了断电造成系统状态信息的丢失,保障了系统信号的安全性,而当需要进行系统重启时,将非易失性存储器中的快照加载到易失性存储器,以将被存储的系统状态信息被还原至原来的位置,实现快速的重启,既保证了系统信息的安全性,又保证了系统重启的速度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一种具体实施方式所提供的用于终端设备的启动方法流程图;

图2为本发明一种具体实施方式所提供的快照分离示意图图;

图3为本发明一种具体实施方式所提供的用于终端设备的启动系统结构示意图。

具体实施方式

本发明的核心是提供一种用于终端设备的启动方法和系统,既能保证系统信息的安全性,又能保证系统重启的速度。

为了使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。

在以下描述中阐述了具体细节以便于充分理解本发明。但是本发明能够以多种不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广。因此本发明不受下面公开的具体实施的限制。

请参考图1和图2,图1为本发明一种具体实施方式所提供的用于终端设备的启动方法流程图;图2为本发明一种具体实施方式所提供的快照分离示意图图。

本发明的一种具体实施方式提供了一种用于终端设备的启动方法,包括:

s11:预先根据目标终端设备的系统状态信息生成对应的快照。

在本实施方式中,快照所包含的系统状态信息包含了目标终端设备的处理器、内存和io设备等所有与终端有关的信息。可以根据目标终端设备第一次启动后的系统状态信息生成快照。

s12:将快照分离成若干快照块。

在本发明的一种实施方式中,快照可以被分为多个页,每个快照块包含了一个或多个页,如图2所示,一个快照可以被分为多个快照块,在本实施方式中,将快照分为n+1个快照块,n为大于0的整数,并对各快照块进行编号,编号从block#0到block#n。

s13:将各快照块存储至预设非易失性存储器。

所谓的非易失性存储器指的是硬盘和磁盘等存储设备,非易失性存储器即便在断电的情况下也不会因为断电丢失自身保存的数据。以实现系统状态信息存储的安全性。

s14:判断当前处于关闭状态的目标终端设备是否要进行系统重启。

s15:若是,则将存储在预设非易失性存储器中的快照块加载至预设的易失性存储器中。

在本实施方式中,易失性存储器指的是内存等存储器。

s16:对目标终端设备进行系统重启。

根据易失性存储器中的快照块来实现对目标终端设备的重启。

本实施方式所提供的用于终端设备的启动方法,通过生成快照来保存终端设备关闭前的系统状态信息,将快照存储在非易失性存储器中,避免了断电造成系统状态信息的丢失,保障了系统信号的安全性,而当需要进行系统重启时,将非易失性存储器中的快照加载到易失性存储器,以将被存储的系统状态信息被还原至原来的位置,实现快速的重启,既保证了系统信息的安全性,又保证了系统重启的速度。

在本发明的一种实施方式中,将各快照块存储至预设非易失性存储器,包括:判断各快照块是否符合预设的压缩条件;若是,则对符合预设的压缩条件的快照块进行压缩;将各压缩后的快照块以及不符合预设的压缩条件的快照块均存储至预设非易失性存储器;

相应地,将存储在预设非易失性存储器中的快照块加载至预设的易失性存储器中,包括:将存储在预设非易失性存储器中的快照块加载至预设的易失性存储器中,并对加载至预设的易失性存储器中的被压缩的各快照块进行解压缩。

在本实施方式中,为了进一步提高目标终端设备的重启速度,对快照块进行了压缩,以提高将快照块加载至易失性存储器中的效率。进一步地,判断各快照块是否符合预设的压缩条件,包括:判断各快照块的压缩时间和加载时间之和是否小于该快照块的截止时间;判断各快照块的压缩比率是否处于预设的阈值范围内。即根据各快照块的解压缩时间、加载时间、截止时间和块压缩比率等因素来决定是否压缩各快照块。若解加压缩时间过长则会降低快系统重启的效率。

若快照块在系统启动初期被加载,可以通过比较当前快照块的压缩时间和上一快照块的加载时间而决定是否压缩当前快照块,若当前快照块的压缩时间大于上一快照块的加载时间则不必压缩该快照块,否则,可以进行压缩。也可以同时比较压缩率和快照预设的阈值共同决定是否压缩当前快照块。进一步地,还可以通过比较快照块的压缩时间和加载时间之和和该快照块的截止时间而决定是否压缩,若压缩时间和加载时间之和没超过截止时间,则可以压缩该快照块。

在本实施方式中,为了进一步提高启动效率,进一步地,将存储在预设非易失性存储器中的快照块加载至预设的易失性存储器中,并对加载至预设的易失性存储器中的被压缩的各快照块进行解压缩,包括:将存储在预设非易失性存储器中的快照块加载至预设的易失性存储器中;实时判断预设的易失性存储器中是否存储有已加载完毕的快照块;若是,则判断已加载完毕的快照块是否是被压缩的快照块;若是,则实时对该被压缩的快照块进行解压缩。可以同时进行一个快照块的加载和另一快照块的解压缩,例如,如图2所示的n+1个快照块均为被压缩的快照块,将block#0加载至易失性存储器中,在后续的循环过程中,在加载block#1的同时对block#0进行解压缩,并依此对后续的快照块以并行的方式进行处理。当然,在本实施方式中,可以根据需要来对部分或全部快照块进行压缩,若加载的当前快照块并未被压缩,直接进行加载即可。

需要说明的是,所谓的加载时间指的是快照块由非易失性存储器到易失性存储器的时间。各快照块的截止时间指的是对应快照块需要进行完全加载的时间,在本实施方式中,快照块需要在自身对应的截止时间之内完全加载,从而使终端设备从关机状态运行至正常作业状态。各快照块的压缩比率表明了各快照块需要被削减的容量大小的程度。

在本发明的一种实施方式中,将存储在预设非易失性存储器中的快照块加载至预设的易失性存储器中,包括:判断存储在预设非易失性存储器中的各快照块是否包含系统重启所必要的数据;若是,则将该快照块加载至预设的易失性存储器中。

在本实施方式中,可以根据当前快照块是否包含了系统启动时需要加载的数据页等信息决定当前快照块是否为一个必要快照块。若当前快照块没有包含系统启动时需要加载的数据页等信息,则当前快照块就是一个非必要快照块,则甚至无需加载至易失性存储器中,这样可以减少加载的快照块的数量,从而减少加载时间。

例如block#0是一个必要快照块,比较block#0的解压缩时间与block#n的加载时间,也就是上个block的加载时间,若block#0的解压缩时间小于block#n的加载时间,则进一步决定是否将block#0以一个高于预先设定的速率进行压缩,若确定将block#0以一个高于预先设定的速率进行压缩,则决策完毕,block#0可以被压缩。

快照块的加载和解压缩可能同步进行。例如,block#0在时间t被加载,block#1在时间(t+1)被加载,如果block#0是一个压缩快照块,则block#1的加载和block#0的解压缩可能同时进行;再例如,如果block#1不是压缩快照块,block#1的解压缩可能不被运行;相同的,如果block#1是一个压缩快照块,block#2的加载和block#1的解压缩可能在时间(t+2)同时进行。

需要说明的是,这种同步处理方式需要终端配置多个处理器。例如,如果终端配置了两个处理器且两个处理器独立运行,则一个处理器可以被设置为处理快照块的加载,另一个处理器被设置为处理快照块的解压缩。

请参考图3,图3为本发明一种具体实施方式所提供的用于终端设备的启动系统结构示意图。

相应地,本发明一种实施方式还提供了一种用于终端设备的启动系统,包括:快照生成模块31,预先根据目标终端设备的系统状态信息生成对应的快照;快照分离模块32,用于将快照分离成若干快照块;非易失存储模块33,用于存储各快照块;判断模块34,用于判断当前处于关闭状态的目标终端设备是否要进行系统重启;易失存储模块35,用于在判断模块判定当前处于关闭状态的目标终端设备要进行系统重启时,加载存储在非易失存储模块33中的快照块;启动模块36,用于根据易失存储模块35加载的快照块对目标终端设备进行系统重启。

进一步地,非易失存储模块包括:第一判断单元,用于判断各快照块是否符合预设的压缩条件;压缩单元,用于在第一判断单元判定各快照块符合预设的压缩条件时,对符合预设的压缩条件的快照块进行压缩;第一存储单元,用于存储各压缩后的快照块以及不符合预设的压缩条件的快照块;相应地,易失存储模块包括:加载单元,用于将存储在非易失存储模块中的快照块加载至第二存储单元;第二存储单元,用于存储加载单元加载的快照块;解压单元,用于对第二存储单元中的被压缩的各快照块进行解压缩。

易失存储模块还包括:第二判断单元,用于实时判断第二存储单元中是否存储有已加载完毕的快照块;第三判断单元,用于在第二判断单元判定第二存储单元中存储有已加载完毕的快照块时,判断已加载完毕的快照块是否是被压缩的快照块;其中,解压单元用于在第三判断单元判定已加载完毕的快照块是被压缩的快照块时,实时对该被压缩的快照块进行解压缩。

第一判断单元包括:第一判断子单元,用于判断各快照块的压缩时间和加载时间之和是否小于该快照块的截止时间;第二判断子单元,用于判断各快照块的压缩比率是否处于预设的阈值范围内。

易失存储模块还包括:第四判断单元,用于判断存储在非易失性存储模块中的各快照块是否包含系统重启所必要的数据;其中,加载单元还用于在第四判断单元判定存储在非易失性存储模块中的各快照块包含系统重启所必要的数据时,将该快照块加载至第二存储单元

本实施方式所提供的用于终端设备的启动系统,通过生成快照来保存终端设备关闭前的系统状态信息,将快照存储在非易失性存储器中,避免了断电造成系统状态信息的丢失,保障了系统信号的安全性,而当需要进行系统重启时,将非易失性存储器中的快照加载到易失性存储器,以将被存储的系统状态信息被还原至原来的位置,实现快速的重启,既保证了系统信息的安全性,又保证了系统重启的速度。

综上所述,本发明所提供的用于终端设备的启动方法和系统,当目标终端设备需要重启时,从非易失性存储器中调用快照的形式至易失性存储器中,既保证了速度,又保证了安全性;将快照分离为若干快照块,并对快照块进行相应的压缩和解压缩,进一步提高快照的存放效率,对快照块的必要性判断以及加载和解压缩的时机的判断和处理,进一步提高了终端设备的重启速度。

以上对本发明所提供的一种用于终端设备的启动方法和系统进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1