装置和数据保存处理方法与流程

文档序号:11233949阅读:359来源:国知局
装置和数据保存处理方法与流程

本文中讨论的实施例涉及装置和数据保存处理方法。



背景技术:

诸如智能电话或智能手表的智能装置的闲置模式的时段比智能装置运行的时间长。例如,智能手表在有限的时机运行,例如当智能电话向智能手表通知事件时或者当用户改变设置时,并且在剩余时段中智能手表处于闲置模式。图12是用于说明智能手表的操作的图。

如图12所示,例如,当处于ble(蓝牙(商标)低能量)待机闲置模式的智能手表8接收到来自智能电话9的事件时,智能手表8通过使用例如振动或led灯向用户通知该事件。智能手表8根据用户的操作来执行例如传送电子邮件消息的操作,然后返回到闲置模式。

如上所述,智能装置的闲置模式的时段是长的,并且因此降低闲置模式期间的功耗能够延长电池的运行时间。因此,已存在一种用于使智能装置的模式从闲置模式变换成休眠模式的技术。图13是用于说明通过使用休眠来降低功耗的图。

如图13所示,虽然在智能装置处于活跃模式时功耗增加,但活跃模式的时段比闲置模式的时段短。因此,通过使用休眠来降低闲置模式下的功耗使得能够降低智能装置的功耗。在图13中,“闲置模式下的功率(旧)”表示在不执行休眠的情况下闲置模式下的功耗,而“闲置模式下的功率(新)”表示在执行休眠的情况下闲置模式下的功耗。

为了使智能装置的模式变换成休眠模式,需要保存中央处理单元(cpu)和存储器的数据,并且在智能装置进入活跃模式时恢复所保存的数据。图14是用于说明根据模式变换进行数据保存和数据恢复的图。

如图14所示,智能手表8在从活跃模式变换到休眠模式之前执行数据保存处理,在从休眠模式恢复之前执行数据恢复处理。因此,对于休眠,重要的是尽可能地缩短用于保存数据的时间和用于恢复数据的时间。图15是用于说明减小用于保存数据的时间的技术的图。

如图15所示,为了缩短保存数据的时间,处于活跃模式的智能手表8在存储装置7中定期地创建存储器中的数据的副本。在保存处理中,智能手表8仅仅将相对于最新副本改变的数据保存在存储装置7中。通过如上所述仅仅将相对于最新副本改变的数据保存在存储装置7中,智能手表8能够缩短用于保存数据的时间。

对于数据恢复,已存在一种技术,其中在从开启模式变换到关断模式时,根据每个处理单元划分处理数据,并且随后保存处理数据,并且在从关断模式变换到开启模式时,仅仅恢复用于要重新启动的处理的处理数据,由此缩短恢复时间。

还存在另一种技术,其中在合适的时间将处于闲置模式的装置的装置状态写入非易失性存储器中,并且在执行中断处理时,仅仅存储没有被存储的装置的状态,由此缩短存储状态所花费的时间。

还存在另一种技术,其中根据从上次写入起所逝去的时间或者根据随机存取存储器(ram)中的数据的重要性来定期地将存储在ram中的数据写入闪存中,这使得能够更长时间地使用闪存。还存在另一种技术,其中将闪存中的更新数据划分为不太频繁改变的高位数据(higherdata)和频繁改变的低位数据(lowerdata),并且当针对高位数据存储相同数据时,不执行写入,这缩短了用于执行写入的时间并且抑制寿命缩短。

专利文献1:日本公开专利公布第2009-104320号

专利文献2:日本公开专利公布第11-134075号

专利文献3:日本公开专利公布第10-133940号

专利文献4:日本公开专利公布第2014-215628号

在活跃模式下在存储装置中定期地创建存储器中的数据的副本以便缩短保存数据的时间的常规技术的问题在于:存储装置中的写入次数增加,并且因而诸如闪存的存储装置的寿命缩短。

因此,本发明的实施例的一个方面的目的在于降低在活跃模式下用于数据保存的写入频率,以抑制存储装置的寿命缩短。



技术实现要素:

根据实施例的方面,一种装置包括预复制单元,该预复制单元在非易失性存储装置中创建由切换到后台的应用(application)所使用的存储器区域的副本;以及保存单元,在变换到休眠模式时,该保存单元在非易失性存储装置中创建下述存储器区域的副本:该存储器区域由正常应用所使用并且排除副本已被预复制单元创建的存储器区域。

附图说明

图1是用于说明根据第一实施例的数据保存和数据恢复的图;

图2是根据第一实施例的智能装置的功能配置的图;

图3是示例性存储器管理表的图;

图4是由预复制创建器所执行的处理的流程的流程图;

图5是由未复制区域保存单元执行的处理的流程的流程图;

图6是由待保存区域选择单元执行的处理的流程的流程图;

图7是用于说明根据第二实施例的数据保存和数据恢复的图;

图8a是用于说明交换和休眠的第一图;

图8b是用于说明交换和休眠的第二图;

图9是根据第二实施例的智能装置的功能配置的图;

图10是由未复制区域保存单元执行的处理的流程的流程图;

图11是执行根据第一实施例和第二实施例的数据保存处理程序的计算机的硬件配置的图;

图12是用于说明智能手表的操作的图;

图13是用于说明通过使用休眠来降低功耗的图;

图14是用于说明数据存储和数据恢复的图;以及

图15是用于说明缩短用于保存数据的时间的技术的图。

具体实施方式

将参照附图来说明本发明的优选实施例。注意,实施例不限制本文中公开的技术。

[a]第一实施例

首先,将描述由根据第一实施例的智能装置执行的数据保存和数据恢复。图1是用于说明由根据第一实施例的智能装置执行的数据保存和数据恢复的图。图1图示了作为示例性智能装置的智能手表。

如图1所示,活跃模式下的根据第一实施例的智能装置1在应用的模式改变时将数据保存在休眠区域中。应用是指由智能装置1执行的应用。休眠区域是在智能装置1变换成休眠模式时其中保存cpu和存储器的数据的区域并且是位于存储装置7中的区域。存储装置7是在写入次数方面具有限制的非易失性存储装置,并且例如是闪存。

当应用从前台切换到后台时,智能装置1将由该应用使用的存储器区域的数据保存在休眠区域中。前台是指其中将应用输出的画面显示在显示装置上的模式,而后台是指其中应用输出的画面未被显示在显示装置上的模式。应用使用的存储器区域的数据包含应用的程序代码。

后台应用驻留在存储器中,但是未被执行。因此,在从智能装置1启动时起的时间变长时,在休眠模式下存在由该应用占据的大量存储器区域。除非应用被切换或者应用被强制终止,否则在休眠模式下由该应用占据的存储器区域不会改变。相应地,预先保存由后台应用使用的存储器区域的数据并且不对其进行更新,因而在变换成休眠模式时不需要数据保存。

因此,在变换成休眠模式时,智能装置1在保存处理中仅仅将未被保存的数据共同保存在休眠区域中。在智能装置1从休眠模式恢复时,智能装置1在恢复处理中恢复休眠区域中的数据。

以这种方式,在应用从前台切换到后台时,智能装置1将由该应用使用的存储器区域的数据保存在存储装置7中。因此,相比于定期性地保存存储器的数据的情况,智能装置1能够减少在存储装置7中写入的次数。

接下来将描述根据第一实施例的智能装置1的功能配置。图2是根据第一实施例的智能装置1的功能配置的图。如图2所示,智能装置1包括终端模式控制器2、存储器管理器3、应用管理器4和数据保存处理器5。

终端模式控制器2管理智能装置1的模式。智能装置1的模式包括活跃模式和休眠模式。在智能装置1的模式向休眠模式转换时,终端模式控制器2将向休眠模式的变换通知给休眠单元30,休眠单元30将在下文进行描述。

存储器管理器3按块管理存储器6。存储器管理器3创建存储器管理表,其将在下文进行描述。应用管理器4管理应用的模式。应用管理器4使应用启动和结束,以及使应用在前台和后台之间切换,即应用管理器4负责对应用的整体控制。应用管理器4将应用的执行状态通知给预复制创建器21,预复制创建器21将在下文进行描述。

数据保存处理器5执行与将存储在存储器6中的数据保存在存储装置7中相关的处理。数据保存处理器5包括存储器管理表存储单元10、数据复制管理器20和休眠单元30。

存储器管理表存储单元10存储存储器管理表,在存储器管理表中登记用于针对每个块管理存储器6的状态的信息。图3是示例性存储器管理表的图。如图3所示,在存储器管理表中,针对每个块,地址和副本创建状态彼此相关联。地址表示块的顶部地址(topaddress)和最后地址(lastaddress)。

副本创建状态表示是否在存储装置7中创建了块的副本,并且“已复制”表示在存储装置7中创建了块的副本并且“未复制”表示在存储装置7中没有创建块的副本。对于未使用的块,将“(未使用)”用作副本创建状态。

数据复制管理器20管理存储装置7中的存储器6中存储的数据的副本的创建。数据复制管理器20包括预复制创建器21和未复制区域保存单元22。

当智能装置1处于活跃模式时,预复制创建器21创建由切换到后台的应用所使用的存储器区域的副本,并且随后将在存储器管理表中与包含在副本被创建的存储器区域中的块相关联的副本创建状态设定为“已复制”。

预复制创建器21还从存储装置7中删除结束的应用已使用的存储器区域的副本,并且将在存储器管理表中与由该结束的应用释放的块相关联的副本创建状态设定为“未使用”。预复制创建器21将在存储器管理表中与包含在由切换到前台的应用使用的存储器区域中的块相关联的副本创建状态设定为“未复制”。

未复制区域保存单元22引用存储器管理表,并且对于副本创建状态为“未复制”的块,在智能装置1变换到休眠模式时,将未复制区域通知给待保存区域选择单元31以创建该块的副本。

休眠单元30根据数据复制管理器20的指令创建存储器6的块的副本。休眠单元30还根据数据复制管理器20的指令删除在存储装置7中创建的副本。休眠单元30包括待保存区域选择单元31和数据保存单元32。

在从终端模式控制器2接收到变换到休眠模式的通知时,待保存区域选择单元31向未复制区域保存单元22进行关于未复制区域的询问。已经接收到该询问的未复制区域保存单元22引用存储器管理表并且将未复制区域通知给待保存区域选择单元31。

具体地,未复制区域保存单元22将在存储器管理表中的副本创建状态为“未复制”的块的列表通知给待保存区域选择单元31。在接收到未复制区域的通知时,待保存区域选择单元31将作为副本要被创建的块的列表的通知传递给数据保存单元32。

在从待保存区域选择单元31接收到副本要被创建的块的块列表时,数据保存单元32从存储器6中读取该块列表中列出的块的数据,并且将该数据写入存储装置7中。

另外,在从预复制创建器21接收到副本要被创建的块的块列表时,数据保存单元32读取在该块列表中列出的块的数据,并且将该数据写入存储装置7中。另外,在从预复制创建器21接收到副本要被删除的块的块列表时,数据保存单元32从存储装置7中删除在该块列表中列出的块的数据。

在智能装置1变换到休眠模式时,休眠单元30将cpu的寄存器等中的数据保存在存储装置7中,并且在智能装置1从休眠模式恢复时,恢复cpu的寄存器等中的数据。

接下来将描述由预复制创建器21执行的处理的流程。图4是由预复制创建器21执行的处理的流程的流程图。如图4所示,在从应用管理器4接收到作为事件的应用执行状态时,预复制创建器21确定该事件是哪种事件类型(步骤s1)。

当确定事件类型为前台应用的切换时,预复制创建器21创建由转变到后台的应用所使用的存储器区域的副本(步骤s2),并且更新存储器管理表(步骤s3)。

当事件类型是另外启动应用时,预复制创建器21确定启动的应用是哪种类型(步骤s4)。当启动的应用的类型是驻留(resident)应用时,不存在要切换到后台的应用,并且因此预复制创建器21前往步骤s3。另一方面,当启动的应用的类型不是驻留应用时,存在要切换到后台的应用,并且因此预复制创建器21前往步骤s2。

当事件类型是应用的结束时,预复制创建器21删除该应用的复制数据(步骤s5),并且前往步骤s3。

如上所述,预复制创建器21预先创建由转变到后台的应用所使用的存储器区域的副本,并且据此智能装置1在变换到休眠模式时能够缩短保存数据的时间。

接下来将描述由未复制区域保存单元22执行的处理的流程。图5是由未复制区域保存单元22执行的处理的流程的流程图。如图5所示,未复制区域保存单元22获取存储器管理表(步骤s11)并且创建使用中的整个存储器中的副本未被创建的块的列表(步骤s12)。然后,未复制区域保存单元22向休眠单元30的待保存区域选择单元31通知作为未复制区域通知的所创建的列表(步骤s13)。

如上所述,未复制区域保存单元22创建副本未被创建的块的列表并且将所创建的列表传送至待保存区域选择单元31,并且据此待保存区域选择单元31能够针对数据保存单元32指定数据要被保存的块。

接下来将描述由待保存区域选择单元31执行的处理的流程。图6是由待保存区域选择单元31执行的处理的流程的流程图。如图6所示,在接收到模式变换到休眠模式的通知时,待保存区域选择单元31向未复制区域保存单元22进行关于未复制区域的询问(步骤s21)。待保存区域选择单元31接收未复制的块的列表(步骤s22),并且指示数据保存单元32保存块列表中的块的数据(步骤s23)。

如上所述,通过向未复制区域保存单元22进行关于未复制区域的询问,待保存区域选择单元31能够获取数据要被保存的块的列表。

如上所述,在第一实施例中,预复制创建器21创建由切换到后台的应用所使用的存储器区域的副本并且更新存储器管理表。在变换到休眠模式时,未复制区域保存单元22引用存储器管理表,创建由应用所使用的存储器区域中的排除了副本被预复制创建器21创建的存储器区域的存储器区域的副本。因此,智能装置1能够降低预先将由应用所使用的存储器区域的副本写入存储器装置7中的频率并且抑制存储装置7的寿命缩短。

根据第一实施例,在除了驻留应用以外的新应用启动或者前台应用被切换时,预复制创建器21确定存在切换到后台的应用。因此,预复制创建器21能够准确地确定切换到后台的应用。

[2]第二实施例

作为第一实施例,已经描述了预先在休眠区域中创建存储器数据的副本的情况;然而,可以在交换区域而不是休眠区域中创建副本。作为第二实施例,将描述预先在交换区域中创建存储器数据的副本的情况。交换区域是指存储装置7中的下述区域:在存储器区域不足时将存储器区域的一部分的数据写入该区域中以便在存储器6中创建自由区域。

图7是用于说明由根据第二实施例的智能装置执行的数据保存和数据恢复的图。如图7所示,不同于图1中的智能装置,根据第二实施例的智能装置1a具有预活跃模式,并且当在活跃模式下的应用的模式改变时,将数据保存在交换区域中而不是休眠区域中。

在变换到休眠模式时执行的保存处理中,智能装置1a将未保存的数据划分为在从休眠模式恢复时重新启动用户处理所需要的数据和不需要的数据,并且将划分的数据分开保存在存储装置7中。换言之,智能装置1a将在从休眠模式恢复时重新启动用户处理不需要的数据保存在交换区域中,并且将在从休眠模式恢复时重新启动用户处理所需要的数据保存在休眠区域中。

在从休眠模式恢复时的恢复处理中,智能装置1a仅仅恢复休眠区域中的数据并且变换到预活跃模式。在预活跃模式下,智能装置1a重新启动用户处理并且通过换入(swap-in)来恢复交换区域中的数据,并且在交换区域中的所有数据被恢复时,变换到活跃模式。

换言之,智能装置1a执行交换和休眠以保存和恢复数据。图8a和图8b是用于说明交换和休眠的图。

如图8a所示,活跃模式下的智能装置1a在应用的模式改变时将数据保存在交换区域中。然后,智能装置1a在保存处理的前半部分中将重新启动用户处理所不需要的数据保存在交换区域中,并且在保存处理的后半部分中将重新启动用户处理所需要的数据保存在休眠区域中。然后,智能装置1a变换到休眠模式。

如图8b所示,然后在从休眠模式恢复并且变换到预活跃模式时,智能装置1a恢复在恢复处理中恢复用户处理所需要的数据。然后,预活跃模式下的智能装置1a重新启动用户处理并且从交换区域中恢复重新启动用户处理所不需要的数据,并且在从交换区域的恢复完成时,变换到活跃模式。

如上所述,智能装置1a执行交换和休眠以保存和恢复数据,并且据此在从休眠模式恢复时可以缩短在重新启动用户处理之前的时间。

现将描述根据第二实施例的智能装置1a的功能配置。图9是根据第二实施例的智能装置1a的功能配置的图。为了方便描述,利用与图2中的附图标记相同的附图标记来指示作用与图2中示出的单元的作用相同的功能单元,并且下文将省略其详细描述。

如图9所示,不同于图2中示出的智能装置1,智能装置1a包括终端模式控制器2a而不是终端模式控制器2,包括存储器管理器3a而不是存储器管理器3,并且包括数据保存处理器5a而不是数据保存处理器5。

虽然终端模式控制器2a具有与终端模式控制器2的功能类似的功能,但是终端模式控制器2a将模式变换成休眠模式通知给数据复制管理器20a的未复制区域保存单元22a,其将在下文进行描述。虽然存储器管理器3a具有与存储器管理器3的功能类似的功能,但是在存储器6变得不足时,存储器管理器3a将存储器不足通知给交换单元40a的待保存区域选择单元41a,其将在下文进行描述。

不同于图2中示出的数据保存处理器5,数据保存处理器5a包括数据复制管理器20a而不是数据复制管理器20,包括休眠单元30a而不是休眠单元30,并且还包括交换单元40a。

数据复制管理器20a像数据复制管理器20一样管理存储器6的数据的复制;然而,数据复制管理器20仅仅管理正常(normal)应用使用的存储器6。换言之,数据复制管理器20a不管理恢复用户处理所需的例如操作系统(os)、中间件和驻留应用的数据。

不同于图2中示出的数据复制管理器20,数据复制管理器20a包括预复制创建器21a而不是预复制创建器21,并且包括未复制区域保存单元22a而不是未复制区域保存单元22。

虽然预复制创建器21a具有与预复制创建器21的功能类似的功能,但是预复制创建器21a不将块的列表传递给休眠单元30,而是将其传递给交换单元40a,并且指示交换单元40a创建块的副本。

未复制区域保存单元22a像未复制区域保存单元22一样创建未复制区域的块的列表,但是不接收关于未复制区域的任何询问。未复制区域保存单元22a从终端模式控制器2a接收模式变换到休眠模式的通知并且创建未复制区域的块的列表。未复制区域保存单元22a不将该块列表传递给休眠单元30,而是将其传递给交换单元40a并且指示交换单元40a创建块的副本。

休眠单元30a在保存处理的后半部分中将包括cpu的寄存器等中的数据的重新启动用户处理所需要的数据保存在存储装置7中。休眠单元30a在恢复处理中将包括cpu的寄存器等中的数据的重新启动用户处理所需要的数据从存储装置7恢复到存储器6。

交换单元40a根据数据复制管理器20a的指令在存储装置7的交换区域中创建存储器6的块的列表。交换单元40a包括待保存区域选择单元41a和数据保存单元42a。

在从存储器管理器3a接收到存储器不足的通知时,待保存区域选择单元41a选择要保存在存储装置7中的块并且将所选择的块的列表传递给数据保存单元42a。

数据保存单元42a从待保存区域选择单元41a、未复制区域保存单元22a以及预复制创建器21a接收要保存的块的列表,并且将该列表中的块的数据复制在存储装置7的交换区域中。在从预复制创建器21a接收到副本要被删除的块的块列表时,数据保存单元42a从存储装置7中删除在该块列表中列出的块的数据。

现将描述由未复制区域保存单元22a执行的处理的流程。图10是由未复制区域保存单元22a执行的处理的流程的流程图。如图10所示,未复制区域保存单元22a获取存储器管理表(步骤s31),并且创建正在由正常应用使用的整个存储器中的副本未被创建的块的列表(步骤s32)。未复制区域保存单元22a将所创建的列表作为块列表而通知给交换单元40a的数据保存单元42a(步骤s33)。

如上所述,在第二实施例中,数据复制管理器20a将块列表传递给交换单元40a并且指示交换单元40a保存数据。然后,交换单元40a的数据保存单元42a在存储装置7的交换区域中创建块列表中的块的副本。因此,在从休眠模式恢复时,智能装置1a在预活跃模式下能够恢复重新启动用户处理所不需要的数据并且在短时间内重新启动用户处理。

根据第一实施例和第二实施例的数据保存处理由计算机通过执行具有相同功能的数据保存处理程序来实现。接下来将描述执行数据保存处理程序的计算机。

图11是图示执行根据第一实施例和第二实施例的数据保存处理程序的计算机的硬件配置的图。如图11所示,计算机50包括cpu50a、闪存50b、存储器50c、显示单元50d和无线通信单元50e。

cpu50a是读取和执行存储在存储器50c中的应用或程序(诸如,数据保存处理程序)的处理装置。闪存50b是存储例如应用和数据保存处理程序的非易失性存储器。闪存50b对应于图2和图9中示出的存储装置7。

存储器50c是存储例如从闪存50b读取的应用和数据保存处理程序的随机存取存储器(ram)。存储器50c存储例如执行数据保存处理程序所需的数据和执行数据保存处理程序的中间结果。存储器50c对应于图2和图9中示出的存储器6。

显示单元50d是显示由应用输出的画面的装置,并且是例如液晶显示装置。显示单元50d接受用户的触摸操作并且将接受的数据传递至cpu50a。

无线通信单元50e是执行诸如经由局域网(lan)、蓝牙(商标)和移动电话的通信的无线通信的模块。无线通信单元50e可以具有多个无线通信功能。

根据实施例的方面,可以抑制存储装置的寿命缩短。

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