具有休眠功能的信息处理装置及其控制方法

文档序号:6518598阅读:215来源:国知局
具有休眠功能的信息处理装置及其控制方法
【专利摘要】本发明提供一种具有休眠功能的信息处理装置及其控制方法。该信息处理装置即使当装置进行到休眠状态的转变时,也能够防止从非易失性存储器上保存的数据泄露机密信息。具有休眠功能的信息处理装置具有易失性存储器和非易失性存储器。安全区域确定单元确定分配给所述易失性存储器的存储区域是否是安全区域。当进入休眠状态时,转变单元保存所述易失性存储器的、由所述安全区域确定单元确定为非安全区域的存储区域上保存的数据,而不保存所述易失性存储器的、由所述安全区域确定单元确定为安全区域的存储区域上保存的数据。当从所述休眠状态恢复时,恢复单元将所述非易失性存储器上保存的数据写回到所述易失性存储器。
【专利说明】具有休眠功能的信息处理装置及其控制方法
【技术领域】
[0001]本发明涉及一种信息处理装置及其控制方法、以及存储其控制程序的存储介质。特别地,本发明涉及装置处于休眠时的安全管理。
【背景技术】
[0002]在诸如个人计算机(PC)的信息处理装置中,由于随功能数量的增加而添加了用于使功能有效的处理,因此从通电到装置可用的启动时间趋于更长。休眠技术被引用作为缩短启动时间的技术之一。在使用休眠技术的情况下,例如,信息处理装置在断电之前,将诸如CPU寄存器或DRAM的易失性存储器中存储的数据保存在诸如硬盘的非易失性存储器中。然后,装置在启动时将非易失性存储器上保存的数据写回到易失性存储器。由于断电之前的操作状态重现,因此与需要初始化硬件和软件的冷启动相比,能够缩短启动时间。
[0003]然而,当易失性存储器上的全部数据被保存在非易失性存储器上时,由于机密信息可能被包括在相关数据中,所以通过从非易失性存储器中提取数据并分析数据可能泄漏机密信息。为了处理该问题,提出了使用秘密分布法对非易失性存储器上保存的数据进行分布的技术(例如,日本特开2009-139990 (JP2009-139990A)号公报)。
[0004]然而,由于非易失性存储器上的全部数据是机密信息的情况是很少见的,因此修改数据配置伴随一定开销。

【发明内容】

[0005]本发明提供即使当进行到休眠状态的转变时,也能够防止从非易失性存储器上保存的数据泄露机密信息的信息处理装置及其控制方法、以及存储其控制程序的存储介质。
[0006]因此,本发明的第一方面提供一种具有休眠功能的信息处理装置,该信息处理装置具有易失性存储器和非易失性存储器,所述信息处理装置包括:安全区域确定单元,其被配置为确定分配给所述易失性存储器的存储区域是否是安全区域;转变单元,其被配置为当进入休眠状态时,保存由所述安全区域确定单元确定为非安全区域的所述易失性存储器的存储区域上保存的数据,而不保存由所述安全区域确定单元确定为安全区域的所述易失性存储器的存储区域上保存的数据;以及恢复单元,其被配置为当从所述休眠状态恢复时,将保存在所述非易失性存储器上的数据写回到所述易失性存储器。
[0007]因此,本发明的第二方面提供一种具有休眠功能的信息处理装置的控制方法,所述信息处理装置具有易失性存储器和非易失性存储器,所述控制方法包括:安全区域确定步骤,确定分配给所述易失性存储器的存储区域是否是安全区域;转变步骤,当进入休眠状态时,保存在所述安全区域确定步骤中确定为非安全区域的所述易失性存储器的存储区域上保存的数据,而不保存在所述安全区域确定步骤中确定为安全区域的所述易失性存储器的存储区域上保存的数据;以及恢复步骤,当从所述休眠状态恢复时,将所述非易失性存储器上保存的数据写回到所述易失性存储器。
[0008]因此,本发明的第三方面提供一种存储有使计算机执行第二方面的控制方法的控制程序的非暂时性计算机可读存储介质。
[0009]根据本发明,在转变到休眠状态之前,仅将易失性存储器上保存的全部数据之中、不包括机密信息的数据保存在非易失性存储器上。即使当装置进行到休眠状态的转变时,也防止从非易失性存储器上保存的数据泄露机密信息。
[0010]通过以下参照附图对示例性实施例的描述,本发明的其他特征将变得清楚。
【专利附图】

【附图说明】
[0011]图1是示意性示出根据本发明的第一实施例的信息处理装置的硬件配置示例的框图。
[0012]图2是示出图1所示的信息处理装置中DRAM上的分配给应用程序的存储区域的示例的图。
[0013]图3是示出在图1所示的信息处理装置中由存储管理器分配给DRAM的存储区域的示例的图。
[0014]图4是示出图1所示的信息处理装置中由存储管理器针对DRAM进行的存储区域分配处理的流程图。
[0015]图5是示出图1所示的信息处理装置中的装置停止处理的流程图。
[0016]图6是示出图1所示的信息处理装置中的装置启动处理的流程图。
[0017]图7是示出根据本发明的第一实施例的休眠转变处理的示例的流程图。
[0018]图8是示出根据本发明的第一实施例的休眠返回处理的示例的流程图。
[0019]图9是示出根据本发明的第二实施例的休眠转变处理的示例的流程图。
[0020]图10是示出根据本发明的第二实施例的休眠返回处理的示例的流程图。
[0021]图11是示出图1所示的信息处理装置中的通知函数处理的流程图。
【具体实施方式】
[0022]下面参照附图详细描述根据本发明的实施例。
[0023]图1是示意性示出根据本发明的第一实施例的信息处理装置的硬件配置示例的框图。
[0024]信息处理装置100配设有引导R0M101、CPU102、DRAM103、视频控制器104、LAN控制器106、LAN_I/F107、USB控制器108、盘控制器IlUSSD (固态驱动器)112以及HDD113。此外,信息处理装置100的主单元与由键盘109和鼠标110构成的操作单元以及作为显示单元的显示设备105连接。
[0025]当通过接通电源向信息处理装置100供给电力时,CPU102执行引导R0M101上保存的初始化程序。在由初始化程序执行初始化处理之后,CPU102将保存在SSD112或HDD113上的程序复制到作为易失性存储器的DRAM103,并顺序执行这些程序。作为非易失性存储器的SSD112和HDD113存储用于控制信息处理装置100的操作系统(OS),并存储各种应用程序、程序文件以及数据文件。
[0026]视频控制器104控制输出到显示单元105的画面信息。LAN (局域网)控制器106利用通过LAN_I/F107连接的网络发送和接收信息。
[0027]USB控制器108控制诸如所连接的键盘109和鼠标110的操作单元。盘控制器111控制 SSDl 12 和 HDDl 13。
[0028]信息处理装置100配设有休眠功能。当装置进入休眠状态时,休眠功能将作为易失性存储器的DRAM103上存储的数据保存在作为非易失性存储器的SSD112或HDD113中,并且当装置从休眠状态恢复时,将在SSD112或HDD113上保存的数据写回到DRAM103,从而将装置恢复到休眠前的状态。
[0029]在本实施例中,当装置进入休眠状态时从DRAM103保存在HDDl 13等上并且当装置从休眠状态恢复时从HDD113等写回到DRAM103的数据被称为休眠数据。在转变到休眠状态时,通过从DRAM103上保存的数据中排除安全数据来生成休眠数据。
[0030]接下来,将描述由在信息处理装置100上运行的应用程序(下文中称为“应用”)分配给DRAM103的存储区域的示例。
[0031]图2是示出DRAM103上的分配给应用的存储区域的示例的图。
[0032]当从应用接收到针对存储区域的分配请求时,OS检测DRAM103的全部存储区域当中的、未使用的可用存储区域201,保留所请求的容量的存储区域,并将其头地址返回到应用。例如,所示的存储区域202和203被分配作为应用的存储区域。通常,响应于来自应用的分配请求,对DRAM103中的存储区域进行非连续地分割并分配。因此,在转变到休眠状态时,需要确定各存储区域中保存的数据中是否包括安全数据。
[0033]图3是示出由存储管理器分配给DRAM103的存储区域的示例的图。
[0034]在信息处理装置100中,当管理存储区域的存储管理器(作为由CPU102执行的功能的存储区域管理单元)对OS进行请求时,如图所示,在装置启动时,在DRAM103的存储区域301中分配存储区域302 (其大小在系统设计时设定)。存储区域302由管理块303以及应用的分配区域304构成。
[0035]管理块303是由存储区域的头地址305、存储区域的区域大小306以及通知函数地址307构成的一组管理条目。通知函数在从休眠状态恢复时被调用,并且用作数据初始化的触发器。
[0036]应用的分配区域304的头地址和区域大小被设定为第一管理条目。与响应于来自应用的针对存储区域的分配请求而分配的存储区域相关联的头地址、区域大小以及通知函数的地址被设定为第二及后续管理条目。
[0037]图4是示出由存储管理器针对DRAM103进行的存储区域分配处理的流程图。
[0038]当从应用接收到针对存储区域的分配请求时,存储管理器确定请求中包括的参数是否有效(步骤S401)。当确定参数无效时,存储管理器返回错误(步骤S402)并结束该处理。
[0039]另一方面,当在步骤S401中确定参数有效时,存储管理器确定是否能够将请求大小的存储区域分配给预先保留的存储区域302(步骤S403)。通过搜索图3中的管理块303,并且将分配区域304的空闲区域大小与请求大小进行比较,来进行该确定。
[0040]当在步骤S403中确定无法分配请求大小的存储区域时,存储管理器返回错误(步骤S402),并结束该处理。另一方面,当确定能够分配请求大小的存储区域时(步骤S403中“是”),处理进入步骤S404。
[0041]在步骤S404中,存储管理器将设定了所分配的存储区域的头地址和区域大小以及通知函数的地址的管理条目添加到管理块303。[0042]接下来,存储管理器向应用返回所分配的存储区域的头地址(步骤S405),并结束该处理。
[0043]图5是示出信息处理装置100中的装置停止处理的示例的流程图。图6是示出信息处理装置100中的装置启动处理的示例的流程图。应注意,CPU102应执行所示的处理。
[0044]如图5所示,当信息处理装置100的操作者或管理者发出停止指令时,CPU102通过将由CPU102的寄存器(未示出)以及DRAM103缓存的数据写入HDD113等来固定状态(步骤 S501)。
[0045]接下来,在步骤S502中,CPU102确定停止模式是休眠模式还是通常模式。停止模式是由信息处理装置100的操作者等预先通过显示设备105设定的,并且设定信息被保存在HDDl 13等上。CPU102通过参照所保存的设定信息,确定停止模式是休眠模式还是通常模式。应注意,有包括休眠模式和通常模式的两种停止模式,但是也可以有其他模式。
[0046]当在步骤S502中确定停止模式是休眠模式时,执行休眠转变处理(步骤S503),并且处理进入步骤S504。稍后将详细描述步骤S503中的休眠转变处理。
[0047]当在步骤S502中确定停止模式是通常模式时,处理进入步骤S504,CPU102针对信息处理装置100上安装的各种硬件单元进行结束处理,并使装置进入闲置状态。
[0048]如图6所示,当从操作者等接收到启动请求时,CPU102利用从引导R0M101读取的OS,对信息处理装置100上安装的各种硬件单元进行初始化,并将硬件单元转变到可用状态(步骤S601)。
[0049]接下来,在步骤S602中,CPU102以与图5中的步骤S502相同的方式确定停止模式是休眠模式还是通常模式。当确定停止模式是休眠模式时,执行休眠返回处理(步骤S603),并结束处理。稍后将详细描述步骤S603中的休眠返回处理。
[0050]另一方面,当在步骤S602中确定停止模式是通常模式时,CPU102将应用从HDD113等中读入DRAM103,执行该应用(步骤S604),并结束该处理。
[0051]接下来,将使用图7和图8描述图5的步骤S503中的休眠转变处理和图6的步骤S603中的休眠返回处理。
[0052]图7是示出图5的步骤S503中的休眠转变处理的示例的流程图。
[0053]在步骤S701中,CPU102确定分配给DRAM103的存储区域当中的、从顶部易失性块起的各易失性块是否是安全区域。易失性块是一生成休眠数据就从DRAM103读取的数据的单位(大小)。CPU102根据目标易失性块是否包括在由存储管理器分配的分配区域304中,来确定易失性块是否是安全区域。当应用请求存储区域的分配时,由于响应于分配请求而对分配区域304中的存储区域进行分配,因此存储管理器确定存储区域是安全区域。然后,该存储区域上保存的数据未被写入休眠数据。
[0054]另一方面,当通过存储管理器以外的手段分配存储区域时,由于存储区域被分配给DRAM103中的分配区域304以外的区域,因此确定该区域不是安全区域。然后,该区域上保存的数据被写入休眠数据。在步骤S701中,CPU102用作安全区域确定单元。
[0055]当在步骤S701中确定易失性块是安全区域时,CPU102跳过相关易失性块一个块(步骤S702),并使处理进入步骤S704。
[0056]另一方面,当在步骤S702中确定易失性块不是安全区域时,处理进入步骤S703。在步骤S703中,CPU102将相关易失性块上保存的数据写入休眠数据。然后,目标易失性块前进一个块(步骤S704)。应注意,分配区域304被确定为DRAM103当中的安全区域,而管理块303未被确定为安全区域。即,管理块303的数据将被包括在休眠数据中。
[0057]接下来,在步骤S705中,CPU102确定目标存储块是否到达易失性区域的末端。易失性区域的末端是指DRAM103的末端。当在步骤S705中确定目标存储块尚未到达末端时,处理返回到步骤S701。因此,从DRAM103的顶部到末端针对各易失性块重复如下处理:确定块是否在安全区域中并且将未在安全区域中的易失性块上保存的数据写入休眠数据。然后,当确定块到达末端时,CPU102将所生成的休眠数据保存在HDD113等上(步骤S706),并将处理返回到图5。
[0058]图8是示出图6的步骤S603中的休眠返回处理的示例的流程图。
[0059]在步骤S801中,CPU102将HDD113等上保存的休眠数据的一个块写回到DRAM103。这里,块表示上述易失性块。
[0060]接下来,在步骤S802中,CPU102将休眠数据中的目标块前进一个块,并且在步骤S803中,确定目标块是否到达休眠数据的末端。当在步骤S803中确定目标存储块尚未到达休眠数据的末端时,处理返回到步骤S801。
[0061]另一方面,当在步骤S803中确定目标存储块到达休眠数据的末端时,处理进入步骤 S804。
[0062]在步骤S804中,存储管理器进行控制,使得通过参照管理块303的第二及后续管理条目,基于通知函数地址307调用通知函数来重新生成安全数据,并且处理返回。因此,应用能够在调用通知函数时重新生成安全数据。
[0063]由于通过休眠转变处理清除所分配的存储区域,因此在休眠返回处理完成之后,调用通知函数。例如,在图11中示出了为了保持加密程序的加密密钥在使用存储区域的情况下进行的通知函数的处理。
[0064]在通知函数的处理中,配置密钥信息(步骤S1101),并将密钥数据写入相关存储区域(步骤S1102)。
[0065]由于各存储区域的目的不同,因此针对各目的,通知函数的处理也不同。例如,由于当存储区域用于临时保持信息时,每次使用时在存储区域中设定值,因此通知函数的处理可以什么也不进行。
[0066]根据本实施例,存储管理器响应于来自应用的存储区域的分配请求,从预先保留的存储区域当中分配存储区域。然后,在生成休眠数据时,休眠数据不包括预先保留的存储区域中的数据。在从休眠状态恢复时,休眠数据被写回到易失性存储器。然后,当存储管理器调用与存储区域的分配请求一起传送的通知函数时,应用重新生成安全数据。因此,由于休眠数据中不包括安全数据,即使诸如HDD113的非易失性存储器被拆卸并且休眠数据被提取,也防止机密信息的泄露。
[0067]接下来,将描述本发明的第二实施例。由于上述第一实施例的图1所示的配置与本发明的第二实施例相同,因此由相同的附图标记表示相同的部分,并省略其描述。下文中仅描述与上述第一实施例的不同点。
[0068]根据本发明的第二实施例的信息处理装置可连接到对数据进行加密和解密的安全设备。在转变到休眠状态时,安全设备通过对易失性存储器上保存的数据进行加密来生成休眠数据。然后,当装置从休眠状态恢复时,安全设备对非易失性存储器上保存的加密休眠数据进行解密,并且所解密的数据被写回到易失性存储器。
[0069]图9是示出根据本发明的第二实施例的休眠转变处理的示例的流程图。
[0070]在步骤S901中,CPU102确定安全设备(未示出)是否连接到信息处理装置100的主单元。在步骤S901中,CPU102用作安全设备检测单元。
[0071]当在步骤S901中确定未连接安全设备时,执行图7所示的第一实施例的休眠转变处理(步骤S902)。另一方面,当在步骤S901中确定连接安全设备时,安全设备对DRAM103上保存的全部数据进行加密(步骤S903),并生成休眠数据(步骤S904)。CPU102将在步骤S904中生成的休眠数据存储在HDD113等中(步骤S905),并结束该处理。
[0072]图10是示出根据本发明的第二实施例的休眠返回处理的示例的流程图。
[0073]在步骤S1001中,CPU102确定安全设备是否连接到信息处理装置100的主单元。在步骤S1001中,CPU102用作安全设备检测单元。
[0074]当在步骤S1001中确定未连接安全设备时,执行图8所示的第一实施例中的休眠返回处理(步骤S1002)。另一方面,当在步骤S1001中确定连接安全设备时,读取HDD113等上保存的休眠数据,并由安全设备对该休眠数据进行解密(步骤S1003 )。然后,所解密的数据被写回到DRAM103 (步骤S1004)。然后,信息处理装置100返回到启动状态。
[0075]虽然本实施例描述了安全设备连接到信息处理装置的配置,但是可以将用于对数据进行加密和解密的安全功能添加到信息处理装置。在这种情况下,在步骤S901和S1001中确定是否配设了安全功能。此外,安全设备可以利用任意类型的加密和解密方法。
[0076]根据本实施例,当安全设备连接到信息处理装置100时,在转变到休眠状态时,安全设备对易失性存储器上保存的数据进行加密以生成休眠数据。然后,在从休眠状态恢复时,安全设备对休眠数据进行解密并将所解密的数据写回到易失性存储器。因此,当信息处理装置具有安全功能时,即使易失性存储器存储机密信息,由于机密信息也被加密并写入休眠数据,因此能够防止从休眠数据泄露机密信息。
[0077]接下来,将描述本发明的第三实施例。由于上述第一实施例的图1所示的配置与本发明的第三实施例相同,因此由相同的附图标记表示相同的部分,并省略其描述。下面仅描述与上述第一实施例的不同点。
[0078]在第三实施例中,安全区域上保存的数据被完全擦除。完全擦除处理是当所使用的数据被删除或者系统关机时,对要进行完全擦除的数据和文件,使用诸如O的列表或者随机数的特定方式进行覆写。
[0079]本实施例的信息处理装置100在完全擦除处理可用时,在执行完全擦除应用的分配区域304的完全擦除处理之后,进行通常的休眠转变处理。然后,信息处理装置100在易失性存储器上保存的全部数据被保存在休眠数据之后,进入休眠状态。在从休眠状态恢复时,进行图8所示的休眠返回处理。
[0080]根据本实施例,当完全擦除处理可用时,在执行完全擦除应用的分配区域304的完全擦除处理之后,进行通常的休眠转变处理。然后,易失性存储器上保存的全部数据被保存在休眠数据中。此外,在从休眠状态恢复时,如同第一实施例,将休眠数据写回到易失性存储器并通知应用。由于休眠数据中包括由完全消除处理无效化的数据,因此防止机密信息的泄露。
[0081]虽然在第一至第三实施例的描述中,本发明被应用于信息处理装置,但是本发明的使用不限于此。本发明能够被应用于图像形成装置、图像处理装置以及其他电子设备,并且即使在这种情况下也能够获得本发明的上述效果。
[0082](其他实施例)
[0083]本发明的各方面还可以通过读出并执行记录在存储设备上的用于执行上述实施例的功能的程序的系统或装置的计算机(或诸如CPU或MPU的设备)来实现,以及通过由系统或装置的计算机通过例如读出并执行记录在存储设备上的用于执行上述实施例的功能的程序来执行各步骤的方法来实现。鉴于此,例如经由网络或者从用作存储设备的各种类型的记录介质(例如计算机可读介质)向计算机提供程序。
[0084]虽然参照示例性实施例描述了本发明,但是应当理解,本发明不限于所公开的示例性实施例。应当对所附权利要求的范围给予最宽的解释,以使其覆盖所有变型例以及等同的结构和功能。
[0085]本申请要求2012年11月13日提交的日本专利申请2012-249427号的优先权,该申请的全部内容通过弓I用并入本文。
【权利要求】
1.一种具有休眠功能的信息处理装置,该信息处理装置具有易失性存储器和非易失性存储器,所述信息处理装置包括: 安全区域确定单元,其被配置为确定分配给所述易失性存储器的存储区域是否是安全区域; 转变单元,其被配置为当进入休眠状态时,保存所述易失性存储器的、由所述安全区域确定单元确定为非安全区域的存储区域上保存的数据,而不保存所述易失性存储器的、由所述安全区域确定单元确定为安全区域的存储区域上保存的数据;以及 恢复单元,其被配置为当从所述休眠状态恢复时,将所述非易失性存储器上保存的数据写回到所述易失性存储器。
2.根据权利要求1所述的信息处理装置,所述信息处理装置还包括: 存储区域管理单元,其被配置为将通知函数与分配给所述易失性存储器的存储区域的头地址相关联地管理。
3.根据权利要求2所述的信息处理装置,其中,所述安全区域确定单元确定所述易失性存储器的全部存储区域当中的、由所述存储区域管理单元管理的存储区域是安全区域。
4.根据权利要求2所述的信息处理装置,其中,所述恢复单元通过与所分配的存储区域的头地址相关联地调用所述通知函数,来重新生成所述安全区域中保存的数据。
5.根据权利要求1所述的信息处理装置,所述信息处理装置还包括: 安全设备检测单元,其被配置为确定是否配设了对数据进行加密和解密的安全设备,并且 其中,在所述安全设备检测单元确定未配设安全设备的情况下,所述转变单元仅保存所述易失性存储器的、由所述安全区域确定单元确定为非安全区域的存储区域上保存的数据。
6.根据权利要求1所述的信息处理装置,其中,所述转变单元擦除由所述安全区域确定单元确定为安全区域的存储区域上保存的数据。
7.一种具有休眠功能的信息处理装置的控制方法,所述信息处理装置具有易失性存储器和非易失性存储器,所述控制方法包括: 安全区域确定步骤,确定分配给所述易失性存储器的存储区域是否是安全区域; 转变步骤,当进入休眠状态时,保存所述易失性存储器的、在所述安全区域确定步骤中确定为非安全区域的存储区域上保存的数据,而不保存所述易失性存储器的、在所述安全区域确定步骤中确定为安全区域的存储区域上保存的数据;以及 恢复步骤,当从所述休眠状态恢复时,将所述非易失性存储器上保存的数据写回到所述易失性存储器。
【文档编号】G06F21/60GK103810434SQ201310557477
【公开日】2014年5月21日 申请日期:2013年11月11日 优先权日:2012年11月13日
【发明者】横山英彦 申请人:佳能株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1