CN109460258B - 一种启动电子设备的方法及装置 - Google Patents
一种启动电子设备的方法及装置 Download PDFInfo
- Publication number
- CN109460258B CN109460258B CN201710751262.5A CN201710751262A CN109460258B CN 109460258 B CN109460258 B CN 109460258B CN 201710751262 A CN201710751262 A CN 201710751262A CN 109460258 B CN109460258 B CN 109460258B
- Authority
- CN
- China
- Prior art keywords
- snapshot
- setting operation
- started
- memory
- bootstrap
- 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
- 238000000034 method Methods 0.000 title claims abstract description 53
- 230000000694 effects Effects 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 23
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 230000000977 initiatory effect Effects 0.000 description 4
- 230000003213 activating effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Classifications
-
- 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
-
- 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/445—Program loading or initiating
-
- 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/445—Program loading or initiating
- G06F9/44568—Immediately runnable code
- G06F9/44578—Preparing or optimising for loading
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种启动电子设备的方法及装置,涉及移动宽带业务MBB设备启动技术。本文公开的电子设备的启动方法,包括:所述电子设备非首次启动时,根据最近一次记录的设置操作选取有效的快照进行启动,所述有效的快照包括:有效的运行快照、有效的内核快照或有效的引导程序快照。
Description
技术领域
本发明涉及移动宽带业务MBB设备启动技术,特别涉及一种快速启动电子设备的方法及装置。
背景技术
目前,很多产品(UFI、CPE,车载模块)为实现复杂的应用大多都搭载了操作系统,简单的如没有存储管理的uclinux,复杂像手机这样基于完整Linux的android设备。而且随着支持功能的强大,支持业务的复杂,操作系统也趋于越来越大,启动也越来越慢。对于目前UFI,CPE等产品,平均启动时间可能长至十几秒;对于android手机,电视等产品,随着使用时间,其启动时间更长。
而相关技术中针对各种操作系统实现快速启动的方案主要是通过优化启动顺序,裁剪不必要的内核组件,优化代码,或通过增加硬件等手段改善启动时间。例如,在windows8,windows10系统中实现操作系统快速启动,实质上是使计算机进行一种特殊休眠中,这时还会消耗少量电量以保存ram中的休眠信息,启动实质是从这种休眠中唤醒。
一般来说,正常系统启动到一般流程,如图1所示,主要分为以下几个步骤:
步骤101,设备上电后,CPU芯片会自动从一个特定地址开始读第一条指令,并执行该指令。此为硬件自动行为。一般来说,CPU会从内存地址0处始取第一条指令,而程序文件也会存放在内存地址处0处。这样CPU芯片开始执行代码。
步骤102,通常在启动操作系统以前,需要先启动一个引导程序。引导程序的作用是就在存储设备上找到操作系统文件位置,然后把操作系统文件复制到内存中。一般来说,操作系统文件是压缩后保存flash中的,目的是为了节省空间。引导程序找到内核后,会向内核传递控制参数,控制操作系统启动的方式。如设置串口的波特率,是否允许调试,到哪里寻找根文件系统等。
步骤103,之后操作系统开始接管工作,操作系统会全面的初始化各类外设,如串口,网口,WiFi芯片,LCD屏幕等。硬件初始化完成后,开始进行软件运行环境的初始化。设置多进程环境,准备启动用户程序。用户程序都是由操作系统的一个特殊进程Init启动,所以init进程启动表示操作系统初始化完成。
步骤104,现在开始启动用户进程,这一部分需要很多同步工作才能完成。也会消耗一定的时间。举例来说:两个进程sim模块进程和拨号进程,拨号进程需要等待sim模块进程正确获取了sim卡状态后,才可以用这些状态进程联网操作。这两个进程有依赖关系。一个必须等待另一个。而一般来说,越上层的进程,需要等待的进程越多。如:为了完成在webUI上操作设备,必须等所有的进程都初始化完成后,才能正常使用webUI。
分析一下上述步骤102和103对于每个设备启动基本都是一样的过程,每次重启都会走一遍,所花费的时间基本上都是固定的,且认为代码已经最大优化了。对于步骤104,启动用户进程,由于需要进程间同步,会有进程在等待其它进程就绪,有一定的时间花费。
从上述描述可以看出,相关技术中的快速启动主要存在以下问题:
1、通过裁剪内核,优化启动流程来实现快速启动,可以在最大限度上减少不必要的启动步骤,但是遇到设备所必须的模块时,无法裁剪,也没有优化的余地。并且现在设备基本上在研发时,已经尽最大力量进行了裁剪处理。
2、相关技术中的快速启动,仍需要保持一定的电力供应。不适用于设备的冷启动场景。
发明内容
本文提供一种启动电子设备的方法及装置,可以解决相关技术中操作系统启动太慢的问题。
本文公开了一种电子设备的启动方法,包括:
所述电子设备非首次启动时,根据最近一次记录的设置操作选取有效的快照进行启动,所述有效的快照包括:有效的运行快照、有效的内核快照或有效的引导程序快照。
可选地,上述方法还包括:
所述电子设备首次启动时,使用出厂默认存储的运行快照进行启动。
可选地,上述方法还包括:
所述电子设备启动后,接收到设置操作时,分类记录所述设置操作用于下一次启动时有效的快照的选取,所述设置操作的分类包括以下至少之一:
对任何快照均无影响的设置操作;
仅对运行快照有影响的设置操作;
对内核快照有影响的设置操作;
对引导程序快照有影响的设置操作。
可选地,上述方法中,所述根据最近一次记录的设置操作选取有效的快照进行启动,包括:
最近一次记录的设置操作的分类为对任何快照均无影响的设置操作时,选取电子设备中存储的运行快照作为有效的快照,进行启动;或者
最近一次记录的设置操作的分类为仅对运行快照有影响的设置操作时,选择电子设备中存储的内核快照作为有效的快照,进行启动,并在启动后恢复最近一次记录的设置操作,抓取此时的内存快照更新存储为运行快照;或者
最近一次记录的设置操作的分类为对内核快照有影响的设置操作时,选择电子设备中存储的引导程序快照作为有效的快照,进行启动,并在引导程序启动后,用户程序启动前,抓取此时的内存快照更新存储为内核快照,在启动用户程序到设备可用时,恢复最近一次记录的设置操作,抓取此时的内存快照更新存储为运行快照;或者
最近一次记录的设置操作的分类为对引导程序快照有影响的设置操作时,所有快照均失效,按照正常流程启动,在电子设备的引导程序正常运行后,操作系统未运行前,抓取此时的内存快照更新存储为引导程序快照,在引导程序启动后,用户程序启动前,抓取此时的内存快照更新存储为内核快照,在启动用户程序到设备可用时,恢复最近一次记录的设置操作,抓取此时的内存快照更新存储为运行快照。
可选地,上述方法还包括:
所述电子设备接收快照管理操作,按照所述快照管理操作进行对应的处理;
其中,所述快照管理操作的对象包括电子设备本地存储的所有快照,以及远端存储的所有快照。
本文还公开了一种启动电子设备的装置,包括:
存储单元,记录设置操作;
处理单元,在所述电子设备非首次启动时,根据所述存储单元中最近一次记录的设置操作选取有效的快照进行启动,所述有效的快照包括:有效的运行快照、有效的内核快照或有效的引导程序快照。
可选地,上述装置中,所述处理单元,在所述电子设备首次启动时,使用出厂默认存储的运行快照进行启动。
可选地,上述装置中,所述存储单元记录设置操作指:
所述存储单元,在所述电子设备启动后,接收到设置操作时,分类记录所述设置操作用于下一次启动时有效的快照的选取,所述设置操作的分类包括以下至少之一:
对任何快照均无影响的设置操作;
仅对运行快照有影响的设置操作;
对内核快照有影响的设置操作;
对引导程序快照有影响的设置操作。
可选地,上述装置中,所述处理单元,根据最近一次记录的设置操作选取有效的快照进行启动,包括:
最近一次记录的设置操作的分类为对任何快照均无影响的设置操作时,选取电子设备中存储的运行快照作为有效的快照,进行启动;或者
最近一次记录的设置操作的分类为仅对运行快照有影响的设置操作时,选择电子设备中存储的内核快照作为有效的快照,进行启动,并在启动后恢复最近一次记录的设置操作,抓取此时的内存快照更新存储为运行快照;或者
最近一次记录的设置操作的分类为对内核快照有影响的设置操作时,选择电子设备中存储的引导程序快照作为有效的快照,进行启动,并在引导程序启动后,用户程序启动前,抓取此时的内存快照更新存储为内核快照,在启动用户程序到设备可用时,恢复最近一次记录的设置操作,抓取此时的内存快照更新存储为运行快照;或者
最近一次记录的设置操作的分类为对引导程序快照有影响的设置操作时,所有快照均失效,按照正常流程启动,在电子设备的引导程序正常运行后,操作系统未运行前,抓取此时的内存快照更新存储为引导程序快照,在引导程序启动后,用户程序启动前,抓取此时的内存快照更新存储为内核快照,在启动用户程序到设备可用时,恢复最近一次记录的设置操作,抓取此时的内存快照更新存储为运行快照。
可选地,上述装置中,所述处理单元,还接收快照管理操作,按照所述快照管理操作进行对应的处理;
所述快照管理操作的对象包括电子设备本地存储的所有快照,以及远端存储的所有快照。
本申请技术方案可以大大加速软件的启动速度,提供良好的用户体验。并且本申请技术方案通过在本地或云端管理快照,可以为用户提供更优质的服务。
附图说明
图1是现有技术中系统启动流程图;
图2是本发明实施例中启动电子设备的方法流程图;
图3是本发明实施例中电子设备出厂前抓取并存储的各关键点的快照的示意图;
图4是本发明可选实施例中实现移动终端的快速启动流程结构框图;
图5是本发明实施例中通过本地和远程管理设备快照的原理示意图;
图6是采用本发明技术方案进行的一组使用快照启动和相关技术中原流程启动的数据比较示意图;
图7是本发明实施例中启动电子设备的装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文将结合具体实施方式对本发明技术方案作进一步详细说明。需要说明的是,在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
本申请发明人在使用各种虚拟机(例如VMware)的经验中,发现VMware虚拟机有一个快照的功能,因此,基于此功能的原理,发明人提出可以针对设备启动的不同阶段,分别保存不同级别的快照,即将设备启动的阶段中某一时刻的内存(RAM)状态复制一份到flash或其它存储介质中即认为是抓取到的这一时该的内存快照。由于设备内存一般较小,所以即使不压缩,内存快照也比较小,可以认为不会增加系统负荷。这样,系统启动时可根据配置(包括默认配置和用户配置)和需要选用不同级别的快照。对于设备启动后用户的正常操作进行分类,指明其操作结果会造成哪些快照的失败,进而选取前一阶段快照进行启动,最大限度的减小其启动耗时。其基本思想是用空间换时间,增加设备生产者的时间换取减少设备使用者的时间。
基于上述思想,本实施例提供一种快速启动电子设备的方法,如图2所示,主要包括如下操作:
步骤100:确定电子设备(本实施例以MBB设备为例)非首次启动;
步骤200:根据最近一次记录的用户设置操作选取有效的快照进行启动,所述有效的快照包括有效的运行快照、有效的内核快照或有效的引导程序快照;
另外,若确定MBB设备为用户首次启动,则使用出厂默认存储的运行快照进行启动;此后,MBB设备接收到用户发起的设置操作时,也会分类记录设置操作。要注意的是,出厂默认存储的除了运行快照还包括有内核快照和引导程序快照。
按照上述方法启动后,MBB设备接收到用户发起的设置操作时,还会分类记录所述设置操作用于下一次启动时有效的快照的选取。本文中涉及的设置操作的分类至少包括如下任一类或几类:
对任何快照均无影响的设置操作;
仅对运行快照有影响的设置操作;
对内核快照有影响的设置操作;
对引导程序快照有影响的设置操作。
与上述设置操作的分类相应的,选取MBB设备中存储的运行快照作为有效的快照进行启动的过程如下所述;
分类记录中最近一次记录的用户设置操作为仅对运行快照有影响的设置操作时,MBB设备中存储的运行快照失效,此时存储的上一级快照,即内核快照即为有效的快照,按照内核快照进行启动即可。在启动后还需要恢复最近一次记录的用户设置操作,之后抓取正常运行时的内存快照(即将设备恢复用户设备并正常运行中某一时刻的RAM状态复制一份到指定的存储介质,作为这一时刻的内存快照)更新存储为运行快照;
分类记录中最近一次记录的用户设置操作为对内核快照有影响的设置操作时,内核快照失效,其下一级快照(即运行快照)也失效,其上一级快照(即引导程序快照)为有效的快照,按照引导程序快照进行启动即可。另外,在引导程序启动后,用户程序启动前,需要抓取此时的内存快照(即将设备的引导程序启动之后,用户程序启动之前的某一时刻的RAM状态复制一份到指定的存储介质,作为这一时刻的内存快照)更新存储为内核快照,在启动用户程序到设备可用时,恢复最近一次记录的用户设置操作,抓取此时的内存快照更新存储为运行快照;
分类记录中最近一次记录的用户设置操作为对引导程序快照有影响的设置操作时,所有快照均失效,按照正常流程启动。随后,在MBB设备的引导程序正常运行后,操作系统未运行前,抓取此时的内存快照(即将设备的引导程序正常运行之后,操作系统未运行之前的某一时刻的RAM状态复制一份到指定的存储介质,作为这一时刻的内存快照)更新存储为引导程序快照,在引导程序启动后,用户程序启动前,抓取此时的内存快照更新存储为内核快照,在启动用户程序到设备可用时,恢复最近一次记录的用户设置操作,抓取此时的内存快照更新存储为运行快照。
除了上述操作外,MBB设备还可以为用户提供各种快照管理功能,包括将MBB设备本地存储的各快照上传至远端,以及对MBB设备本地存储的或者远端存储的所有快照的管理。具体的,快照管理操作可以包括但不限于如下操作:
新建快照、删除快照、更新快照和选择启动快照。
其中,用户发起的新建快照操作时,新建的快照可以包括运行快照、内核快照和引导程序快照。
下面结合附图说明上述方法的具体实施。
首先以MBB设备为例介绍该电子设备中出厂默认存储的各类快照的实现过程。
MBB设备出厂前,所有的需要的快照(包括首次启动时,使用的出厂默认存储的运行快照,以及出厂默认存储的内核快照、引导程序快照等)都需要在出厂前预先提取。这些快照的获取过程如图3所示,包括如下操作:
在启动流程的几个关键点获取该点的快照。在引导程序正常运行后,操作系统未运行前,抓取此点的内存快照引导程序快照bootloader snap(引导程序快照中包括有引导程序信息);
然后启动Linux操作系统启动后,用户程序启动前,抓取内核快照kernelsnap;
然后等待系统启动用户程序到设备可用,抓取最后的运行快照final snap(运行快照包括运行状态的信息)。这些快照都可以保存在持久化存储器(例如闪存)中。
接着介绍MBB设备出厂后,由用户启动时,MBB设备的工作原理。
用户首次启动MBB设备,使用出厂默认存储的运行快照进行启动后,用户可以自己设置使用各配置参数。这些设置动作(例如,修改密码,修改wifi接入密码,修改APN,接收短信等)是数目有限且效果固定的,所以系统会记录用户的每个设置操作,并将这些设置进行分类存储。例如,A设置会修改内核,导致内核快照失效不可用;而B设置仅修改某个文件配置,根本不会影响任何快照。因此,对于用户设置主要划分为如下四类:
第一类,对任何快照均无影响;
第二类,仅对运行快照有影响;
第三类,对内核快照有影响;
第四类,对引导程序快照有影响。
一般来说,大部分用户操作对各快照均不会产生影响,而只有少数操作会影响内核(即影响内核快照),几乎没有操作对影响引导程序。每次用户的设置都会被记录,且新的记录会直接覆盖旧的记录。这些记录会在设备下次启动作为选取快照的依据。
这样,对于非首次用户启动MBB设备,根据上述用户操作记录来选取合适的快照即可。一般来说引导程序快照和操作系统的内核快照不会受到影响。所以仍可以使用内核快照(即内核快照为有效快照),并在MBB设备恢复启动后设备为用户重置它的所有的偏好(即MBB设备恢复启动后,可以使用快照按照用户设置的先后顺序依次恢复曾经的用户设置)。设备在空闲时,也会重新生成正常工作快照(即运行快照)以覆盖原来的快照,此流程见图4。
可选地,为了方便用户使用这一快速启动功能,可以支持用户创建自己的一个或多个快照,并选择默认启动的快照。并且设备厂商也可以按自己的需求,为用户推送合适的一个或多个快照,以便用户选择。
另外,上述方法还可以通过本地和远程上管理设备快照,即根据用户操作将MBB设备的快照上传至远端。或者,MBB设备接收用户发起的快照管理操作,涉及的快照管理操作可以包括对MBB设备本地存储的快照进行管理,以及对远端存储的快照进行管理。并可以对设备的快照进行本地覆盖等功能,即根据用户操作将最新的远端或本地的快照覆盖在MBB设备本地存储的快照,如图5所示。
采用上述基于快照技术启动设备的方案,其花费时间主要在于两点:快照文件的大小以及快照文件的读取速度。因此,MBB设备如果支持高速DMA的话,可以大大加快快照的恢复速度,即大加快设备的启动速度。图6所示即为采用本发明技术方案进行的一组使用快照启动和相关技术中原流程启动的数据比较。
还要说明的是,本申请技术方案适用于各种MBB设备启动的场合,尤其适合于flash容量充足,操作系统庞大的设备(如Android系统)启动。
本实施例还提供一种快速启动电子设备,例如MBB设备的装置,可实施上述方法,其结构如图7所示,主要包括存储单元和处理单元。
存储单元,记录用户设置操作;
可选地,上述存储单元,在MBB设备启动后,接收到用户发起的设置操作时,可以分类记录设置操作用于下一次启动时有效的快照的选取。
本文中涉及的设置操作的分类包括如下几类:
对任何快照均无影响的设置操作;
仅对运行快照有影响的设置操作;
对内核快照有影响的设置操作;
对引导程序快照有影响的设置操作。
具体地,存储单元记录用户设置操作时,可以采用覆盖记录的方式,即用最新的记录替换上一次记录。
处理单元,在MBB设备非首次启动时,根据存储单元中最近一次记录的用户设置操作选取有效的快照进行启动,所述有效的快照为有效的运行快照、有效的内核快照或有效的引导程序快照。
另外,处理单元,在MBB设备首次启动时,使用出厂默认存储的运行快照进行启动。其中,出厂默认存储的除了运行快照外,还有内核快照和引导程序快照。MBB设备在出厂前,默认存储各种快照的过程可参见上述方法实施例中的相应内容,在此不再赘述。
上述处理单元,根据最近一次记录的用户设置操作选取有效的快照进行启动的过程如下:
最近一次记录的用户设置操作的分类为对任何快照均无影响的设置操作时,选取MBB设备中存储的运行快照作为有效的快照,进行启动;
最近一次记录的用户设置操作的分类为仅对运行快照有影响的设置操作时,选择MBB设备中存储的内核快照作为有效的快照,进行启动,并在启动后恢复最近一次记录的用户设置操作,抓取此时的内存快照(即将设备恢复用户设置并正常运行中某一时刻的RAM状态复制一份到指定的存储介质,作为这一时刻的内存快照)更新存储为运行快照;
最近一次记录的用户设置操作的分类为对内核快照有影响的设置操作时,选择MBB设备中存储的引导程序快照作为有效的快照,进行启动,并在引导程序启动后,用户程序启动前,抓取此时的内存快照即将设备的引导程序启动之后,用户程序启动之前的某一时刻的RAM状态复制一份到指定的存储介质,作为这一时刻的内存快照)更新存储为内核快照,在启动用户程序到设备可用时,恢复最近一次记录的用户设置操作,抓取此时的内存快照更新存储为运行快照;
最近一次记录的用户设置操作的分类为对引导程序快照有影响的设置操作时,所有快照均失效,按照正常流程启动,在MBB设备的引导程序正常运行后,操作系统未运行前,抓取此时的内存快照(即将设备的引导程序正常运行之后,操作系统未运行之前的某一时刻的RAM状态复制一份到指定的存储介质,作为这一时刻的内存快照)更新存储为引导程序快照,在引导程序启动后,用户程序启动前,抓取此时的内存快照更新存储为内核快照,在启动用户程序到设备可用时,恢复最近一次记录的用户设置操作,抓取此时的内存快照更新存储为运行快照。
除了上述操作外,上述装置还具有其他上传快照,通过本地或远端管理快照,以及对设备的快照进行本地覆盖等功能。例如,处理单元,可以根据用户操作将MBB设备的快照上传至远端,还可以接收用户发起的快照管理操作对快照进行管理,快照管理操作的对象包括MBB设备本地存储的所有快照,以及远端存储的所有快照。快照管理操作至少包括新建快照、删除快照、更新快照和选择启动快照等。
从上述实施例可以看出,本申请技术方案将任一时刻虚拟机的状态保存为快照(即在某一时刻通过VMware虚拟机快照功能抓取内存快照作为此刻的运行快照或内核快照或引导程序快照),这样,下次启动虚拟机时可以直接从快照启动,从而立刻恢复到上次快照时的情况,例如,打了一半的游戏,放了一半歌曲,执行到一半的进程,都可以完美的返回,而且用快照的恢复的速度极快,比正常启动虚拟机里的操作快很多。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。
以上所述,仅为本发明的较佳实例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种电子设备的启动方法,包括:
所述电子设备非首次启动时,根据最近一次记录的设置操作选取有效的快照进行启动,所述有效的快照包括:有效的运行快照、有效的内核快照或有效的引导程序快照;
所述根据最近一次记录的设置操作选取有效的快照进行启动,包括:
最近一次记录的设置操作的分类为对任何快照均无影响的设置操作时,选取电子设备中存储的运行快照作为有效的快照,进行启动;或者
最近一次记录的设置操作的分类为仅对运行快照有影响的设置操作时,选择电子设备中存储的内核快照作为有效的快照,进行启动,并在启动后恢复最近一次记录的设置操作,抓取此时的内存快照更新存储为运行快照;或者
最近一次记录的设置操作的分类为对内核快照有影响的设置操作时,选择电子设备中存储的引导程序快照作为有效的快照,进行启动,并在引导程序启动后,用户程序启动前,抓取此时的内存快照更新存储为内核快照,在启动用户程序到设备可用时,恢复最近一次记录的设置操作,抓取此时的内存快照更新存储为运行快照;或者
最近一次记录的设置操作的分类为对引导程序快照有影响的设置操作时,所有快照均失效,按照正常流程启动,在电子设备的引导程序正常运行后,操作系统未运行前,抓取此时的内存快照更新存储为引导程序快照,在引导程序启动后,用户程序启动前,抓取此时的内存快照更新存储为内核快照,在启动用户程序到设备可用时,恢复最近一次记录的设置操作,抓取此时的内存快照更新存储为运行快照。
2.如权利要求1所述的方法,其特征在于,该方法还包括:
所述电子设备首次启动时,使用出厂默认存储的运行快照进行启动。
3.如权利要求1或2所述的方法,其特征在于,该方法还包括:
所述电子设备启动后,接收到设置操作时,分类记录所述设置操作用于下一次启动时有效的快照的选取,所述设置操作的分类包括以下至少之一:
对任何快照均无影响的设置操作;
仅对运行快照有影响的设置操作;
对内核快照有影响的设置操作;
对引导程序快照有影响的设置操作。
4.如权利要求1所述的方法,其特征在于,该方法还包括:
所述电子设备接收快照管理操作,按照所述快照管理操作进行对应的处理;
其中,所述快照管理操作的对象包括电子设备本地存储的所有快照,以及远端存储的所有快照。
5.一种启动电子设备的装置,包括:
存储单元,记录设置操作;
处理单元,在所述电子设备非首次启动时,根据所述存储单元中最近一次记录的设置操作选取有效的快照进行启动,所述有效的快照包括:有效的运行快照、有效的内核快照或有效的引导程序快照;
所述处理单元,根据最近一次记录的设置操作选取有效的快照进行启动,包括:
最近一次记录的设置操作的分类为对任何快照均无影响的设置操作时,选取电子设备中存储的运行快照作为有效的快照,进行启动;或者
最近一次记录的设置操作的分类为仅对运行快照有影响的设置操作时,选择电子设备中存储的内核快照作为有效的快照,进行启动,并在启动后恢复最近一次记录的设置操作,抓取此时的内存快照更新存储为运行快照;或者
最近一次记录的设置操作的分类为对内核快照有影响的设置操作时,选择电子设备中存储的引导程序快照作为有效的快照,进行启动,并在引导程序启动后,用户程序启动前,抓取此时的内存快照更新存储为内核快照,在启动用户程序到设备可用时,恢复最近一次记录的设置操作,抓取此时的内存快照更新存储为运行快照;或者
最近一次记录的设置操作的分类为对引导程序快照有影响的设置操作时,所有快照均失效,按照正常流程启动,在电子设备的引导程序正常运行后,操作系统未运行前,抓取此时的内存快照更新存储为引导程序快照,在引导程序启动后,用户程序启动前,抓取此时的内存快照更新存储为内核快照,在启动用户程序到设备可用时,恢复最近一次记录的设置操作,抓取此时的内存快照更新存储为运行快照。
6.如权利要求5所述的装置,其特征在于,
所述处理单元,在所述电子设备首次启动时,使用出厂默认存储的运行快照进行启动。
7.如权利要求5或6所述的装置,其特征在于,所述存储单元记录设置操作指:
所述存储单元,在所述电子设备启动后,接收到设置操作时,分类记录所述设置操作用于下一次启动时有效的快照的选取,所述设置操作的分类包括以下至少之一:
对任何快照均无影响的设置操作;
仅对运行快照有影响的设置操作;
对内核快照有影响的设置操作;
对引导程序快照有影响的设置操作。
8.如权利要求5所述的装置,其特征在于,
所述处理单元,还接收快照管理操作,按照所述快照管理操作进行对应的处理;
所述快照管理操作的对象包括电子设备本地存储的所有快照,以及远端存储的所有快照。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710751262.5A CN109460258B (zh) | 2017-08-28 | 2017-08-28 | 一种启动电子设备的方法及装置 |
PCT/CN2018/102528 WO2019042256A1 (zh) | 2017-08-28 | 2018-08-27 | 电子设备的启动方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710751262.5A CN109460258B (zh) | 2017-08-28 | 2017-08-28 | 一种启动电子设备的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109460258A CN109460258A (zh) | 2019-03-12 |
CN109460258B true CN109460258B (zh) | 2024-02-13 |
Family
ID=65526228
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710751262.5A Active CN109460258B (zh) | 2017-08-28 | 2017-08-28 | 一种启动电子设备的方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109460258B (zh) |
WO (1) | WO2019042256A1 (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012149844A1 (zh) * | 2011-10-12 | 2012-11-08 | 华为技术有限公司 | 一种虚拟机内存快照生成和恢复方法、装置及系统 |
CN103197934A (zh) * | 2012-01-09 | 2013-07-10 | 联咏科技股份有限公司 | 多媒体装置的启动方法及多媒体装置 |
CN104216776A (zh) * | 2014-08-25 | 2014-12-17 | 成都三零凯天通信实业有限公司 | 一种基于blcr技术的安卓操作系统快速启动方法 |
CN105117246A (zh) * | 2015-08-04 | 2015-12-02 | 晶晨半导体(上海)有限公司 | 电子设备快速启动的方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101916201B (zh) * | 2010-08-06 | 2015-05-27 | 中兴通讯股份有限公司 | 一种基于Android移动终端冷启动的方法和装置 |
CN102207881B (zh) * | 2011-07-07 | 2014-01-22 | 电子科技大学 | 一种基于Android的操作系统快速启动方法 |
CN103309740B (zh) * | 2013-06-05 | 2016-12-28 | 腾讯科技(深圳)有限公司 | 程序启动方法、装置和设备 |
CN105260271A (zh) * | 2015-11-18 | 2016-01-20 | 浪潮(北京)电子信息产业有限公司 | 一种hdfs快照的实现方法及系统 |
CN106095439A (zh) * | 2016-06-12 | 2016-11-09 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
-
2017
- 2017-08-28 CN CN201710751262.5A patent/CN109460258B/zh active Active
-
2018
- 2018-08-27 WO PCT/CN2018/102528 patent/WO2019042256A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012149844A1 (zh) * | 2011-10-12 | 2012-11-08 | 华为技术有限公司 | 一种虚拟机内存快照生成和恢复方法、装置及系统 |
CN103197934A (zh) * | 2012-01-09 | 2013-07-10 | 联咏科技股份有限公司 | 多媒体装置的启动方法及多媒体装置 |
CN104216776A (zh) * | 2014-08-25 | 2014-12-17 | 成都三零凯天通信实业有限公司 | 一种基于blcr技术的安卓操作系统快速启动方法 |
CN105117246A (zh) * | 2015-08-04 | 2015-12-02 | 晶晨半导体(上海)有限公司 | 电子设备快速启动的方法 |
Non-Patent Citations (1)
Title |
---|
阎栋 ; 谈鉴锋 ; 王屏 ; 李浩 ; 白小龙 ; .基于内核级程序快照的软件调试框架.小型微型计算机系统.2013,(第10期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
WO2019042256A1 (zh) | 2019-03-07 |
CN109460258A (zh) | 2019-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101636870B1 (ko) | 최소 부트 이미지의 생성 방법 및 장치 | |
CN109634645B (zh) | 固件升级方法及终端 | |
EP2998861B1 (en) | Implementing and deleting method and device for intelligent terminal multi-operation system | |
US20140317369A1 (en) | Snapshot creation from block lists | |
WO2020140634A1 (zh) | 存储空间优化方法、装置、计算机设备及存储介质 | |
EP2375323A1 (en) | Firmware image update and management | |
KR101673299B1 (ko) | 운영 시스템 복구 방법 및 장치, 그리고 단말기기 | |
CN105871587A (zh) | 日志上传方法及装置 | |
CN109408122B (zh) | 一种设备启动方法、电子设备和计算机存储介质 | |
CN108874459B (zh) | 基于虚拟化技术的快速启动方法和装置 | |
CN110704161B (zh) | 虚拟机创建方法、装置及计算机设备 | |
CN107643898A (zh) | 终端升级方法及装置 | |
CN104572354A (zh) | 基于恢复服务的操作系统备份和恢复的方法及其设备 | |
CN105700918A (zh) | 一种系统升级方法及装置 | |
CN112015448A (zh) | 一种基于空中下载技术的系统升级方法及装置 | |
CN103902336A (zh) | 操作系统启动控制的方法及装置 | |
CN113485755B (zh) | 设备驱动程序验证方法、装置、设备及存储介质 | |
CN109460258B (zh) | 一种启动电子设备的方法及装置 | |
CN112214353A (zh) | 固件恢复方法、装置、计算机设备和存储介质 | |
CN116028267A (zh) | 双系统安全手机重置方法、装置、服务器及存储介质 | |
WO2017096889A1 (zh) | 系统升降级的方法和装置 | |
CN113778485A (zh) | 电子芯片的系统运行方法、装置、电子芯片和存储介质 | |
CN115480835A (zh) | 程序启动方法和设备、存储介质 | |
CN106569912A (zh) | 一种移动终端恢复出厂设置的方法及系统 | |
CN113515291A (zh) | 设备在线升级方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |