CN103488586A - 信息处理设备和方法以及程序 - Google Patents
信息处理设备和方法以及程序 Download PDFInfo
- Publication number
- CN103488586A CN103488586A CN201310220579.8A CN201310220579A CN103488586A CN 103488586 A CN103488586 A CN 103488586A CN 201310220579 A CN201310220579 A CN 201310220579A CN 103488586 A CN103488586 A CN 103488586A
- Authority
- CN
- China
- Prior art keywords
- translation table
- address translation
- address
- memory block
- unit
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1009—Address translation using page tables, e.g. page table structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1666—Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/84—Using snapshots, i.e. a logical point-in-time copy of the data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/202—Non-volatile memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
Abstract
提供了信息处理设备和方法以及程序。该信息处理设备包括:表保存单元,配置为将存储器的第一存储区中存储的地址转换表复制到第一存储区之外的存储区,并保存复制的地址转换表;表恢复单元,配置为通过将保存的地址转换表复制到存储器的第一存储区来恢复保存时间点的地址转换表;和重写控制单元,配置为当在已经保存地址转换表之后存在与关于地址转换表的物理地址相关的虚拟地址的数据的重写请求时,改变与虚拟地址相关的物理地址,并使得重写数据存储在与改变的物理地址对应的存储区中。
Description
技术领域
本技术涉及信息处理设备和方法以及程序,并且更具体地说,涉及能够在预定定时容易地恢复存储器所存储的内容的信息处理设备和方法以及程序。
背景技术
近年来,非易失性存储器的开发正在进行。
例如,磁阻随机存取存储器(MRAM)是使用与硬盘相同的磁性材料用于存储介质的存储器技术。MRAM使用隧道磁阻(TMR)效应,在隧道磁阻效应中,通过在两层磁薄膜之间夹着具有大约几个原子的厚度的绝缘薄膜并改变从两侧施加的磁化方向来改变阻抗值。
对于MRAM,地址存取时间是大约10ns,周期时间是大约20ns,且可以以比动态随机存取存储器(DRAM)快大约五倍的速度来执行读/写。另外,存在的优点在于闪存的大约1/10的低功耗且高集成度是可能的。
另外,电阻随机存取存储器(ReRAM)使用由于电压施加导致的电阻的大的变化(电场感测中大的电阻变化或者巨电致电阻(CER)效应)。
ReRAM具有由于相对简单的结构导致的小单元区域,因此可以形成高密度(=低成本)。另外,因为电阻的变化率以几十的因数增大且容易形成多值,所以可以预期大容量。
例如,如果在非易失性存储器中存储主存储器的内容,则还可以保存且重新使用正在处理的数据。
另外,已经提出了一种技术,用于当某个时间点的主存储器的内容写入到并保存在交换(swap)区域中并更新在交换中保存的页面时,使得保存时间点的数据能够写入到交换内的分开区域,作为期望留下的数据的位置(例如,参见JP H2-16655A)。
发明内容
但是,JP H2-16655A的技术假定存在能够获得交换区域的装置,比如外部存储器。
另外,在其中由于使用页入或者页出作为触发来执行操作从而不发生页入和页出的情况下,难以使用JP H2-16655A的技术。
期望在预定定时容易地恢复存储器所存储的内容。
根据本公开的实施例,提供了信息处理设备,包括:表保存单元,配置为将存储器的第一存储区中存储的地址转换表复制到第一存储区之外的存储区,并保存复制的地址转换表;表恢复单元,配置为通过将保存的地址转换表复制到存储器的第一存储区来恢复保存时间点的地址转换表;和重写控制单元,配置为当在已经保存地址转换表之后存在用于与关于地址转换表的物理地址相关联的虚拟地址的数据的重写请求时,改变与虚拟地址相关联的物理地址,并使得重写数据存储在与改变的物理地址对应的存储区中。
可以对于应用程序产生地址转换表。信息处理设备可以进一步包括程序通知单元,配置为指定要执行的应用程序并向表恢复单元通知所指定的应用程序。当在执行应用程序的时间点保存与应用程序对应的地址转换表时,表恢复单元可以恢复保存时间点的地址转换表。
程序通知单元可以进一步感测应用程序的执行的结束并向重写控制单元通知感测的执行结束。当被通知应用程序的执行的结束时,重写控制单元可以擦除与改变的物理地址对应的存储区中所存储的重写数据。
信息处理设备可以进一步包括执行存在/不存在信息通知单元,配置为当执行应用程序时向表恢复单元通知指示先前是否已经执行了该应用程序的信息。表恢复单元可以在被通知指示先前已经执行了该应用程序的信息时恢复地址转换表。
该存储器可以是非易失性存储器。
信息处理设备可以进一步包括存储器保持单元,配置为向存储器供给电源。该存储器可以是易失性存储器。
表保存单元可以以预定时间间隔保存地址转换表。
在应用程序正在运行的同时已经产生预定事件时,表保存单元可以保存地址转换表。
表保存单元可以在多个时间点保存地址转换表。表恢复单元可以恢复多个时间点的地址转换表之中的指定时间点的地址转换表。
地址恢复单元可以基于用户的操作恢复指定时间点的地址转换表。当不保存指定时间点的地址转换表时,地址恢复单元可以控制用于向用户通知不能够恢复地址转换表的消息的显示。
根据本公开的实施例,提供了一种信息处理方法,包括:由表保存单元将存储器的第一存储区中存储的地址转换表复制到第一存储区之外的存储区,并保存复制的地址转换表;由表恢复单元通过将保存的地址转换表复制到存储器的第一存储区来恢复保存时间点的地址转换表;和由重写控制单元在已经保存地址转换表之后存在与关于地址转换表的物理地址相关联的虚拟地址的数据的重写请求时,改变与虚拟地址相关联的物理地址,并使得重写数据存储在与改变的物理地址对应的存储区中。
根据本公开的实施例,提供了一种使得计算机用作信息处理设备的程序,该信息处理设备包括:表保存单元,配置为将存储器的第一存储区中存储的地址转换表复制到第一存储区之外存储区,并保存复制的地址转换表;表恢复单元,配置为通过将保存的地址转换表复制到存储器的第一存储区来恢复保存时间点的地址转换表;和重写控制单元,配置为当在已经保存地址转换表之后存在与关于地址转换表的物理地址相关联的虚拟地址的数据的重写请求时,改变与虚拟地址相关联的物理地址,并使得重写数据存储在与改变的物理地址对应的存储区中。
根据本公开的实施例,表保存单元可以配置为将存储器的第一存储区中存储的地址转换表复制到第一存储区之外的存储区并保存复制的地址转换表。表恢复单元可以配置为通过将保存的地址转换表复制到存储器的第一存储区来恢复保存时间点的地址转换表。重写控制单元可以配置为当在已经保存地址转换表之后存在与关于地址转换表的物理地址相关联的虚拟地址的数据的重写请求时,改变与虚拟地址相关联的物理地址,并使得重写数据存储在与改变的物理地址对应的存储区中。
根据上述的本技术的实施例,可以容易地在预定定时恢复存储器中所存储的内容。
附图说明
图1是图示根据本技术实施例的计算处理系统的配置示例的框图;
图2是图示图1的中央处理单元(CPU)、存储器管理单元(MMU)和随机存取存储器(RAM)的功能配置示例的框图;
图3是图示虚拟地址与物理地址的关联的图;
图4是图示本技术的实施例中在数据重写之后虚拟地址与物理地址的关联的图;
图5是图示现有技术中数据重写之后虚拟地址与物理地址的关联的图;
图6是图示现有技术中数据写入之后虚拟地址与物理地址的关联的图;
图7是图示图1的CPU、MMU和RAM的另一功能配置示例的框图;
图8是图示地址转换表管理处理的示例的流程图;
图9是图示表保存控制处理的示例的流程图;
图10是图示表恢复控制处理的示例的流程图;
图11是图示服务启动控制处理的示例的流程图;
图12是图示图1的CPU、MMU和RAM的又一功能配置示例的框图;和
图13是图示个人计算机(PC)的配置示例的框图。
具体实施方式
在下文中,将参考附图详细描述本公开的优选实施例。注意,在该说明书和附图中,具有实质上相同的功能和结构的结构元件由相同的附图标记表示,且省略这些结构元件的重复说明。
在下文中,将参考附图详细描述本技术的优选实施例。
图1是图示根据本技术实施例的计算处理系统的配置示例的框图。
图1中所示的计算处理系统10包括CPU21、MMU22和RAM23。计算处理系统10例如在便携式电话、智能电话等中实现,且配置为执行下载的应用程序等。
这里,例如,磁阻RAM(MRAM)等配置为非易失性存储器。
将RAM23作为与CPU21对应的主存储设备(主存储器)提供,且将数据设置为基于MMU22的控制而写或者读。MMU22具有与虚拟地址和物理地址的转换、存储器保护等相关的功能,且用作执行与CPU21的存储器存取控制相关的处理的功能块。例如,MMU22可以配置为CPU21的一部分。
图2是图示图1的CPU21、MMU22和RAM23的功能配置示例的框图。在该示例中,除CPU21和RAM23之外,还图示了地址转换表管理单元51、地址转换单元52和存储器分配管理单元53。
地址转换单元52基于地址转换表,将从CPU21提供的虚拟地址转换为物理地址。由此,CPU21获取与对应数据相关的物理地址,并将物理地址的存取请求输出到存储器分配管理单元53。
这里,地址转换表是其中虚拟空间地址与RAM23的物理空间地址相关联的表,且存储在RAM23的一部分的存储区中。
另外,地址转换表管理单元51使得预定时间点的地址转换表的内容存储在RAM23的另一部分中。
例如,要由地址转换单元52参考的地址转换表是RAM23的存储区的一部分,且存储在要用作工作区的存储区中。另一方面,地址转换表管理单元51将预定时间点的地址转换表复制到不同于工作区的存储区。
例如,地址转换表管理单元51将与要由CPU21执行的应用程序相关的数据等已经加载到RAM23的时间点的地址转换表复制到不同于工作区的存储区。
在图2中,CPU21执行应用程序等并将用于处理期间的必要数据等的写命令、读命令等输出到存储器分配管理单元53。存储器分配管理单元53控制对RAM23的存取,并根据CPU21的请求控制读或者写数据的操作。
例如,当从RAM23读取处理期间的必要数据时,CPU21将指定数据的存储位置的虚拟地址提供到地址转换单元52,并请求虚拟地址到物理地址的转换。地址转换单元52将虚拟地址转换为物理地址,并将物理地址提供到CPU21。
CPU21请求存储器分配管理单元53基于如上所述获取的物理地址来读取数据。
存储器分配管理单元53是与从CPU21提供的物理地址对应的存储区,并控制数据从RAM23的预定存储区的读取。
另外,例如,当在应用程序正在运行的同时重写从RAM23读取的数据时,CPU21将指定数据的存储位置的虚拟地址提供到地址转换单元52,并请求虚拟地址到物理地址的转换。因此,CPU21请求存储器分配管理单元53写数据。
此时,地址转换单元52向存储器分配管理单元53通知写入到已经与虚拟地址相关联的物理地址。
在这种情况下,存储器分配管理单元53控制数据存储在RAM23的新存储区中,而不重写到与基于地址转换表获取的物理地址对应的存储区中。因此,存储器分配管理单元53向地址转换单元52通知与新分配的存储区对应的物理地址。
地址转换单元52更新地址转换表的信息,以使得如上所述通知的新物理地址与虚拟地址相关联。
例如,如图3所示,假定在地址转换表中,虚拟地址已经与物理地址相关联。在图3的示例中,虚拟地址V1与物理地址P2相关联。同样地,虚拟地址V3、V5、V6和V7分别与物理地址P3、P4、P5和P6相关联。
这里,假定根据CPU21中正在运行的应用程序的处理而存在与虚拟地址V6对应的数据的重写请求。此外,在该时间点,假定图3中所示的状态的地址转换表已经由地址转换表管理单元51复制。
此时,如上所述,地址转换单元52向存储器分配管理单元53通知写入到已经与虚拟地址相关联的物理地址。
存储器分配管理单元53控制数据存储在RAM23的新存储区中,而不重写到与基于地址转换表获取的物理地址对应的存储区中。例如,将与物理地址P7对应的存储区重新分配为用于存储重写数据的存储区。
因此,存储器分配管理单元53向地址转换单元52通知与重新分配的存储区对应的物理地址P7。
地址转换单元52更新地址转换表的信息,以使得如上所述通知的新物理地址P7与虚拟地址V6相关联。
由此,例如,如图4所示,改变通过地址转换表的虚拟地址与物理地址的关联。在图4的示例中,进行改变以使得图3中与物理地址P5相关联的虚拟地址V6新与物理地址P7相关联。
另外,在图4中,物理地址P5中存储的数据保持在其初始状态而不擦除或者改变。
当在现有技术的情况下重写数据时,重写物理地址P5中存储的数据且如图5所示,虚拟地址V6保持与物理地址P5相关联。
另外,当在现有技术的情况下写入新数据时,例如,将与物理地址P7对应的存储区分配为RAM23的新存储区,且将新数据写入到其,如图6所示。因此,例如,物理地址P7与新虚拟地址V8相关联。
另一方面,在当前技术中,当在已经由地址转换表管理单元51复制了地址转换表之后已经产生了已经与虚拟地址相关联的物理地址的写入请求时,分配用于存储重写数据的新物理地址。另外,在本技术中,当已经在如上所述那样重新分配的物理地址中存储了重写数据时,与初始物理地址对应的存储区的内容保持其初始状态。
例如,当在智能电话等中启动游戏时,需要加载与应用程序相关的数据到RAM。在这种情况下,需要产生其中RAM的物理地址与虚拟地址相关联的地址转换表。
在现有技术中,每次应用程序的执行结束时擦除地址转换表。因为现有技术的RAM(主存储设备)一般具有易失性存储器,且根据电源关闭等擦除所有存储的内容,所以通常每次与应用程序相关的数据加载到RAM时产生地址转换表。
但是,因为当非易失性存储器用作主存储设备时即使在电源关闭之后也保持所存储的内容,所以存储区的数据可以直接使用而不被擦除。
也就是说,当曾经加载到存储区的应用程序的执行曾经结束且再次执行该应用程序时,可以重新使用与该应用程序相关的数据。
当正常地加载与应用程序相关的数据时,在工作区中产生与应用程序相关的地址转换表。因此,例如,如果将在该时间点的地址转换表复制到工作区之外的存储区,则不需要每次启动游戏时都执行加载与应用程序等相关的数据的处理。也就是说,当重新起动曾经启动的游戏时,可以仅通过将工作区之外的存储区中保存的地址转换表复制到工作区来恢复到紧接在已经加载与应用程序相关的数据之后的状态。
因此,在本技术中,当在已经由如上所述的地址转换表管理单元51复制(保存)地址转换表之后已经产生已经与虚拟地址相关联的物理地址的写请求时,设置为分配用于存储重写数据的新物理地址。另外,当已经存储了重写到重新分配的物理地址的数据时,与初始物理地址对应的存储区的内容设置为保持为初始的。
由此,例如,可以在实现计算处理系统等的装置中显著地缩短当启动某一功能时所需的时间。
替代地,本技术可以使得能够在期望的时间点恢复地址转换表。例如,当在实现计算处理系统等的装置中已经发生电源断开时可以使得早进行恢复。
例如,当在智能电话的用户正在玩游戏时已经发生电源断开时,在现有技术的方案中,首先重新启动与游戏对应的应用程序,且从保存的数据恢复游戏的进度状态。在这种情况下,还执行加载与应用程序等相关的数据的处理,因此用户在该时段期间等待。
在本技术中,可以如上所述地通过将工作区之外的存储区中保存的地址转换表复制到工作区而恢复电源断开发生之前的状态。
在这种情况下,例如,地址转换表管理单元51以固定周期以及在已经加载与应用程序相关的数据的时间点保存地址转换表。替代地,例如,可以将地址转换表设置为每次在游戏中产生特定事件等时保存。
另外,在这种情况下,因为多次保存地址转换表,所以当地址转换表管理单元51保存地址转换表时,可以设置为执行对于迄今为止保存的地址转换表的重写,且可以设置为在多个时间点中的每个保存地址转换表。
因此,当引起并消除电源断开时,地址转换表管理单元51将保存的地址转换表复制到工作区。此外,因为RAM23是非易失性存储器,所以所存储的内容不会由于电源断开的发生而丢失。另外,因为当在如上所述已经保存了地址转换表之后已经产生了已经与虚拟地址相关联的物理地址的写请求时,分配用于存储重写数据的新物理地址,所以可以基于保存的地址转换表读取期望的数据。
由此,例如,当在实现计算处理系统等的装置中已经发生电源断开时可以早执行恢复。
替代地,例如,预定时间点的地址转换表可以设置为基于用户的命令等复制到工作区,而无论存在/不存在电源断开的发生。也就是说,通过本技术,例如,可以将游戏的进度状态恢复到任意时间点的状态。
图7是图示图1的CPU21、MMU22和RAM23的另一功能配置示例的框图。在该示例中,除地址转换表管理单元51、地址转换单元52和存储器分配管理单元53以及CPU21和RAM23之外,还图示了应用启动管理单元54。
在图7的示例中,假定在其中实现计算处理系统10的比如智能电话之类的装置中预先安装多个应用程序。此外,应用程序包括在装置装运之前安装的应用程序、此后由用户下载的应用程序等。
例如,当用户操作智能电话的图形用户界面(GUI)等时,同时提供与多个应用程序对应的服务(例如,游戏、短信息服务(SMS)等)。在这种情况下,例如,CPU21在切换处理的同时执行与每个应用程序对应的处理。
在图7的配置中,应用启动管理单元54配置为当发出用于预定服务的启动的命令时,将用于与相应的服务对应的应用程序的启动的通知输出到地址转换表管理单元51。此外,此时,输出的启动通知包括应用程序的标识符(ID)和指示先前是否已经执行了该应用程序的信息。
当已经从应用启动管理单元54接收到启动通知时,地址转换表管理单元51确定先前是否已经执行了该应用程序。
当先前已经执行了该应用程序时,地址转换表管理单元51将与应用程序的ID相关联地保存的地址转换表复制到RAM23的工作区。
当先前没有执行该应用程序时,将与应用程序相关的数据加载到RAM。因此,地址转换表管理单元51将已经加载与应用程序相关的数据的时间点的地址转换表复制到RAM23的工作区之外的存储区。这里,与应用程序的ID相关联地保存复制的地址转换表。
也就是说,在图7的配置的情况下,为每个应用程序产生和保存地址转换表,且无论何时启动各种服务,都读取其中关联与服务对应的应用程序的ID的地址转换表。
由此,例如,可以在智能电话中显著地缩短各种服务的启动时间并改进可操作性。
另外,当发出用于预定服务的结束的命令时,应用启动管理单元54可以设置为将与服务对应的应用程序的结束的通知输出到地址转换表管理单元51。此外,此时输出的结束通知包括应用程序的ID和指示先前已经执行了该应用程序的信息。
当先前已经执行了该应用程序时,地址转换表管理单元51向存储器分配管理单元53通知其中保存与应用程序的ID相关联的地址转换表的存储区的地址等。
存储器分配管理单元53通过比较服务结束时间点的地址转换表与由地址转换表管理单元51保存的地址转换表,来指定在应用程序正在运行时重新写入的数据。例如,在参考图3和图4的上述示例的情况下,可以指定在与物理地址P7对应的存储区中存储的数据是在应用程序正在运行时重新写入的数据。
存储器分配管理单元53擦除如上所述指定的、在应用程序正在运行时重新写入的数据。例如,在图4中,擦除与物理地址P7对应的存储区中存储的数据。由此,物理地址P1到P11的存储的内容具有与图3中相同的状态。
由此,例如,可以防止在RAM23的存储区中积累不必要的数据。
因为图7中的其他部分的配置实质上与上述参考图2描述的相同,所以省略其详细说明。
接下来,将参考图8的流程图描述已经应用了本技术的计算处理系统10的地址转换表管理处理的示例。
在步骤S11,计算处理系统10执行如将在之后参考图9的流程图描述的表保存控制处理。
在步骤S12,计算处理系统10执行如将在之后参考图10的流程图描述的表恢复控制处理。
接下来,将参考图9的流程图描述图8的步骤S11的表保存控制处理的详细示例。
在步骤S31,地址转换表管理单元51确定是否已经产生预先设置的预定事件。该预定事件可以设置为例如使用预定时间的经过作为触发而产生,且可以设置为当在程序中执行预定步骤时产生。
当在步骤S31确定已经产生预定事件时,处理进行到步骤S32。
在步骤S32,地址转换表管理单元51保存地址转换表。此时,例如,将地址转换表复制到RAM23的工作区之外的存储区。此外,地址转换表存储在与保存的时间相关联的RAM23的工作区之外的存储区中。
另一方面,当在步骤S31确定还没有产生预定事件时,跳过步骤S32的处理。
在步骤S33,例如,CPU21确定是否存在通过正在运行的程序的处理的数据的写请求。
当在步骤S33确定存在写请求时,处理进行到步骤S34。此时,例如,将指定对应数据的存储位置的虚拟地址提供到地址转换单元52,并请求虚拟地址到物理地址的转换。因此,CPU21请求存储器分配管理单元53写数据。
在步骤S34,地址转换表管理单元51确定是否已经保存了地址转换表。当在步骤S34确定已经保存了地址转换表时,处理进行到步骤S35。
在步骤S35,地址转换单元52确定由步骤S33的处理确定的写请求是否对应于写入到已经与虚拟地址相关联的物理地址,即,写请求是否对应于数据的重写。当在步骤S35确定重写时,向存储器分配管理单元53通知重写且处理进行到步骤S36。
在步骤S36,存储器分配管理单元53分配用于重写数据的RAM23的新存储区。也就是说,存储器分配管理单元53控制数据存储在RAM23的新存储区中,而不重写到与基于地址转换表获取的物理地址对应的存储区中。因此,向地址转换单元52通知与新分配的存储区对应的物理地址。
在步骤S37,地址转换单元52更新地址转换表的信息以使得根据步骤S36的处理的通知的新物理地址与虚拟地址相关联。
由此,例如,如以上参考图4所述的那样更新地址转换表的信息。
另一方面,当在步骤S34确定还没有保存地址转换表时或者当在步骤S35确定写请求不对应于重写时,处理进行到步骤S38。
在步骤S38,存储器分配管理单元53执行一般的写处理。也就是说,当在步骤S33的处理中确定的写请求是新数据的写请求时,分配RAM23的新存储区且将新数据写入到该存储区。另外,当在步骤S33的处理中确定的写入请求对应于重写时,重写基于地址转换表指定的物理地址的数据。
由此,例如,如以上参考图5和图6所述的那样更新地址转换表的信息。
由此,执行表保存控制处理。
接下来,将参考图10的流程图描述图8的步骤S12的表恢复控制处理的详细示例。例如,该处理并行于参考图8描述的处理执行。
在步骤S51,地址转换表管理单元51确定是否存在用于地址转换表的恢复的命令,并等待直到确定存在恢复命令为止。
例如,在已经消除电源断开之后或者当用户已经执行预定操作时,从CPU21输出用于地址转换表的恢复的命令。在步骤S51,当确定存在用于地址转换表的恢复的命令时,处理进行到步骤S52。
在步骤S52,地址转换表管理单元51检查保存的地址转换表。
在步骤S53,作为步骤S52的处理的结果,地址转换表管理单元51确定是否存在预定时间点的地址转换表。
当在步骤S53确定存在预定时间点的地址转换表时,处理进行到步骤S54。
在步骤S54,地址转换表管理单元51将保存的地址转换表复制到工作区。由此,恢复期望的时间点的地址转换表。例如,可以将由实现计算处理系统10的装置提供的服务返回到发生电源断开之前的状态或者将游戏的进度恢复到期望的时间点。
另一方面,当在步骤S53确定不存在期望的时间点的地址转换表时,处理进行到步骤S55。
在步骤S55,地址转换表管理单元51向CPU21通知期望的时间点的地址转换表不存在。由此,例如,CPU21控制用于通知用户难以执行重新加载与应用程序相关的数据或者难以进行到期望的时间点的恢复的消息的显示。
由此,执行表恢复控制处理。
接下来,将参考图11的流程图描述已经应用了本技术的计算处理系统10的服务起动控制处理的示例。该处理是与以上参考图7所述的配置对应的处理。在这种情况下,假定对于每个应用程序产生和保存地址转换表。
在步骤S71,CPU21确定是否已经发出用于预定服务的启动的命令,并等待直到已经发出用于预定服务的启动的命令为止。
当在步骤S71确定已经发出用于预定服务的启动的命令时,处理进行到步骤S72。
在步骤S72,CPU21指定与启动服务对应的应用程序的ID以及先前执行的存在/不存在。
在步骤S73,CPU21将用于与服务对应的应用程序的启动的通知输出到地址转换表管理单元51。此外,此时,输出的启动通知包括应用程序的ID和指示先前是否已经执行了该应用程序的信息。
在步骤S74,地址转换表管理单元51确定先前是否已经执行了该应用程序。
当在步骤S74确定先前已经执行了该应用程序时,处理进行到步骤S75。
在步骤S75,地址转换表管理单元51将与应用程序的ID相关联地保存的地址转换表复制到RAM23的工作区。
另一方面,当在步骤S74确定先前没有执行应用程序时,处理进行到步骤S76。
在步骤S76,将与应用程序相关的数据加载到RAM。因此,地址转换表管理单元51将已经加载与应用程序相关的数据的时间点的地址转换表复制到RAM23的工作区之外的存储区。这里,与应用程序的ID相关联地保存复制的地址转换表。
由此,执行服务启动控制处理。
虽然上面已经在作为应用了本技术的计算处理系统10中的主存储设备的RAM23具有非易失性存储器的假定下给出描述,但是即使RAM23具有易失性存储器也可应用本技术。
图12是图示图1的CPU21、MMU22和RAM23的又一功能配置示例的框图。在该示例中,除地址转换表管理单元51、地址转换单元52和存储器分配管理单元53以及CPU21和RAM23之外,还图示了存储器保持单元61。
此外,在图12的配置的情况下,RAM23假定为具有比如动态RAM(DRAM)之类的非易失性存储器。
存储器保持单元61配置为例如当停止计算处理系统10的电源供应时向RAM23供给电源。由此,即使当RAM23具有易失性存储器时,RAM也可以用作非易失性存储器且可应用本技术。
因为图12中的其它部分的配置实质上与以上参考图2描述的相同,所以省略其详细说明。
另外,上面已经在从主存储设备中包括的存储器内的工作区复制并保存地址转换表到工作区之外的区域的假定下给出描述。但是,例如,地址转换表可以设置为从主存储设备中包括的存储器复制和保存到辅助存储设备、MMU内部的存储器等。另外,主存储设备之外的存储器等中存储的地址转换表可以设置为复制到和保存在辅助存储设备或者MMU内部的存储器中。
可以通过硬件或者软件实现如上所述的一系列处理。当由软件执行该一系列处理时,形成软件的程序通过网络或者记录介质安装在嵌入专用硬件的计算机和如图13所示的通用个人计算机700中,在通用个人计算机700中可以安装各种程序并执行各种功能。
在图13中,CPU701根据只读存储器(ROM)702中存储的程序或者从存储单元708加载到RAM703的程序执行各种处理。在RAM703中,适当地存储由CPU701执行各种处理所需的数据。
CPU701、ROM702和RAM703由总线704相互连接。此外,输入/输出接口705连接到总线704。
包括键盘和鼠标的输入单元706、包括由液晶显示器(LCD)构成的显示器和扬声器的输出单元707、使用硬盘配置的存储单元708和使用调制解调器和比如LAN卡之类的网络接口卡配置的通信单元709连接到输入/输出接口705。通信单元709通过包括因特网的网络执行通信处理。
驱动器710根据需要,连接到输入/输出接口705,适当地安装比如磁盘、光盘、磁光盘或者半导体存储器的可拆卸介质711,且根据需要,将从可拆卸介质711读取的计算机程序安装在存储单元708中。
当由软件执行该一系列处理时,通过比如因特网之类的网络或者由可拆卸介质711构成的记录介质安装形成软件的程序。
可以使用图13中所示的、由磁盘(包括软盘(注册商标))、光盘(包括致密盘只读存储器(CD-ROM)和数字多用途盘(DVD))、磁光盘(包括迷你盘(MD)(注册商标))或者半导体存储器构成的可拆卸介质711配置记录介质,该可拆卸介质711不同于装置主体,该可拆卸介质711被分发以提供程序给用户且具有记录的程序,并且该记录介质还可以使用在预先嵌入在装置主体中的状态下提供给用户的ROM702中包括的、具有记录的程序的硬盘或者存储单元708配置。
在本公开中,该一系列处理包括以描述的顺序执行的处理,且该处理不一定按时间顺序地执行且可以并行或者单独地执行。
本技术的实施例不限于上述实施例。本领域技术人员应该理解,取决于设计要求及其他因素,可以进行各种修改、组合、部分组合和变更,只要它们在所附权利要求或其等效物的范围内即可。
另外,本技术还可以如下配置。
(1)一种信息处理设备,包括:
表保存单元,配置为将存储器的第一存储区中存储的地址转换表复制到第一存储区之外的存储区并保存复制的地址转换表;
表恢复单元,配置为通过将保存的地址转换表复制到存储器的第一存储区来恢复保存时间点的地址转换表;和
重写控制单元,配置为当在已经保存地址转换表之后存在与关于地址转换表的物理地址相关联的虚拟地址的数据的重写请求时,改变与虚拟地址相关联的物理地址,并使得重写数据存储在与改变的物理地址对应的存储区中。
(2)根据(1)的信息处理设备,
其中,该地址转换表对于应用程序产生,
信息处理设备可以进一步包括程序通知单元,配置为指定要执行的应用程序并向表恢复单元通知所指定的应用程序,且
其中,当在执行应用程序的时间点保存与应用程序对应的地址转换表时,所述表恢复单元恢复保存时间点的地址转换表。
(3)根据(2)的信息处理设备,
其中,程序通知单元进一步感测应用程序的执行的结束并向重写控制单元通知感测到的执行结束,且
其中,当被通知应用程序的执行的结束时,重写控制单元擦除与改变的物理地址对应的存储区中所存储的重写数据。
(4)根据(2)的信息处理设备,进一步包括:
执行存在/不存在信息通知单元,配置为当执行应用程序时向表恢复单元通知指示先前是否已经执行了该应用程序的信息,
其中,该表恢复单元在被通知指示先前已经执行了该应用程序的信息时恢复地址转换表。
(5)根据(1)到(4)的任何一个的信息处理设备,其中,该存储器是非易失性存储器。
(6)根据(1)到(5)的任何一个的信息处理设备,进一步包括:
存储器保持单元,配置为向存储器供给电源,
其中,该存储器是易失性存储器。
(7)根据(1)到(6)的任何一个的信息处理设备,其中,该表保存单元以预定时间间隔保存地址转换表。
(8)根据(1)到(7)的任何一个的信息处理设备,其中,当应用程序正在运行的同时已经产生预定事件时,该表保存单元保存地址转换表。
(9)根据(1)到(8)的任何一个的信息处理设备,
其中,该表保存单元在多个时间点保存地址转换表,和
其中,该表恢复单元恢复多个时间点的地址转换表之中的指定时间点的地址转换表。
(10)根据(9)的信息处理设备,
其中,该地址恢复单元基于用户的操作恢复指定时间点的地址转换表,和
其中,当不保存指定时间点的地址转换表时,该地址恢复单元控制用于向用户通知不能够恢复地址转换表的消息的显示。
(11)一种信息处理方法,包括:
由表保存单元将存储器的第一存储区中存储的地址转换表复制到第一存储区之外的存储区并保存复制的地址转换表;
由表恢复单元通过将保存的地址转换表复制到存储器的第一存储区来恢复保存时间点的地址转换表;和
由重写控制单元当在已经保存地址转换表之后存在与关于地址转换表的物理地址相关联的虚拟地址的数据的重写请求时,改变与虚拟地址相关联的物理地址,并使得重写数据存储在与改变的物理地址对应的存储区中。
(12)一种使得计算机用作信息处理设备的程序,该信息处理设备包括:
表保存单元,配置为将存储器的第一存储区中存储的地址转换表复制到第一存储区之外的存储区并保存复制的地址转换表,
表恢复单元,配置为通过将保存的地址转换表复制到存储器的第一存储区来恢复保存时间点的地址转换表,和
重写控制单元,配置为当在已经保存地址转换表之后存在与关于地址转换表的物理地址相关联的虚拟地址的数据的重写请求时,改变与虚拟地址相关联的物理地址,并使得重写数据存储在与改变的物理地址对应的存储区中。
本公开包含与于2012年6月12日在日本专利局提交的日文优先权专利申请JP2012-132557中公开的主题相关的主题,在此通过引用包含其全部内容。
Claims (12)
1.一种信息处理设备,包括:
表保存单元,配置为将存储器的第一存储区中存储的地址转换表复制到所述第一存储区之外的存储区并保存复制的地址转换表;
表恢复单元,配置为通过将保存的地址转换表复制到所述存储器的第一存储区来恢复保存时间点的地址转换表;和
重写控制单元,配置为当在已经保存所述地址转换表之后存在与关于所述地址转换表的物理地址相关联的虚拟地址的数据的重写请求时,改变与所述虚拟地址相关联的物理地址,并使得重写数据存储在与改变的物理地址对应的存储区中。
2.根据权利要求1的信息处理设备,其中,为应用程序产生所述地址转换表,其中,所述信息处理设备进一步包括程序通知单元,配置为指定要执行的应用程序并向所述表恢复单元通知所指定的应用程序,且其中,当在执行应用程序的时间点保存与应用程序对应的地址转换表时,所述表恢复单元恢复保存时间点的地址转换表。
3.根据权利要求2的信息处理设备,其中,所述程序通知单元进一步感测应用程序的执行的结束并向所述重写控制单元通知感测到的执行结束,且其中,当被通知应用程序的执行的结束时,所述重写控制单元擦除与改变的物理地址对应的存储区中所存储的重写数据。
4.根据权利要求2的信息处理设备,进一步包括:
执行存在/不存在信息通知单元,配置为当执行应用程序时向所述表恢复单元通知指示先前是否已经执行了该应用程序的信息,其中,所述表恢复单元在被通知指示先前已经执行了该应用程序的信息时恢复所述地址转换表。
5.根据权利要求1的信息处理设备,其中,所述存储器是非易失性存储器。
6.根据权利要求1的信息处理设备,进一步包括:
存储器保持单元,配置为向所述存储器供给电源,其中,所述存储器是易失性存储器。
7.根据权利要求1的信息处理设备,其中,所述表保存单元以预定时间间隔保存所述地址转换表。
8.根据权利要求1的信息处理设备,其中,当在应用程序正在运行的同时已经产生预定事件时,所述表保存单元保存所述地址转换表。
9.根据权利要求1的信息处理设备,其中,所述表保存单元在多个时间点保存地址转换表,和其中,所述表恢复单元恢复多个时间点的地址转换表之中的指定时间点的地址转换表。
10.根据权利要求9的信息处理设备,其中,所述地址恢复单元基于用户的操作恢复指定时间点的地址转换表,和其中,当不保存指定时间点的地址转换表时,所述地址恢复单元控制用于向用户通知不能够恢复所述地址转换表的消息的显示。
11.一种信息处理方法,包括:
由表保存单元将存储器的第一存储区中存储的地址转换表复制到所述第一存储区之外的存储区并保存复制的地址转换表;
由表恢复单元通过将保存的地址转换表复制到所述存储器的第一存储区来恢复保存时间点的地址转换表;和由重写控制单元当在已经保存所述地址转换表之后存在与关于所述地址转换表的物理地址相关联的虚拟地址的数据的重写请求时,改变与所述虚拟地址相关联的物理地址,并使得重写数据存储在与改变的物理地址对应的存储区中。
12.一种使得计算机用作信息处理设备的程序,所述信息处理设备包括:
表保存单元,配置为将存储器的第一存储区中存储的地址转换表复制到所述第一存储区之外的存储区并保存复制的地址转换表;
表恢复单元,配置为通过将保存的地址转换表复制到所述存储器的第一存储区来恢复保存时间点的地址转换表,和
重写控制单元,配置为当在已经保存所述地址转换表之后存在与关于所述地址转换表的物理地址相关联的虚拟地址的数据的重写请求时,改变与所述虚拟地址相关联的物理地址,并使得重写数据存储在与改变的物理地址对应的存储区中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012132557A JP2013257679A (ja) | 2012-06-12 | 2012-06-12 | 情報処理装置および方法、並びに、プログラム |
JP2012-132557 | 2012-06-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103488586A true CN103488586A (zh) | 2014-01-01 |
Family
ID=49716222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310220579.8A Pending CN103488586A (zh) | 2012-06-12 | 2013-06-05 | 信息处理设备和方法以及程序 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20130332662A1 (zh) |
JP (1) | JP2013257679A (zh) |
CN (1) | CN103488586A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109074308A (zh) * | 2016-04-22 | 2018-12-21 | 微软技术许可有限责任公司 | 适应性的块转换表(btt) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5950286B2 (ja) | 2014-05-29 | 2016-07-13 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | アドレス変換テーブルを書き込む装置及び方法 |
JP6874814B2 (ja) | 2019-10-30 | 2021-05-19 | 株式会社安川電機 | 産業機器の制御装置、産業機器の制御装置の設定システム、産業機器の制御装置の設定方法、及びプログラム |
JP7190421B2 (ja) * | 2019-12-09 | 2022-12-15 | 株式会社日立製作所 | ストレージシステム及びボリューム複製方法 |
CN115344244A (zh) * | 2021-05-14 | 2022-11-15 | 瑞昱半导体股份有限公司 | 处理程序语言函数的装置及方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3675851B2 (ja) * | 1994-03-15 | 2005-07-27 | 富士通株式会社 | 計算機監視方式 |
US7036043B2 (en) * | 2001-12-28 | 2006-04-25 | Storage Technology Corporation | Data management with virtual recovery mapping and backward moves |
JP2005293774A (ja) * | 2004-04-02 | 2005-10-20 | Hitachi Global Storage Technologies Netherlands Bv | ディスク装置の制御方法 |
US8151060B2 (en) * | 2006-11-28 | 2012-04-03 | Hitachi, Ltd. | Semiconductor memory system having a snapshot function |
-
2012
- 2012-06-12 JP JP2012132557A patent/JP2013257679A/ja active Pending
-
2013
- 2013-06-05 CN CN201310220579.8A patent/CN103488586A/zh active Pending
- 2013-06-05 US US13/910,425 patent/US20130332662A1/en not_active Abandoned
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109074308A (zh) * | 2016-04-22 | 2018-12-21 | 微软技术许可有限责任公司 | 适应性的块转换表(btt) |
Also Published As
Publication number | Publication date |
---|---|
US20130332662A1 (en) | 2013-12-12 |
JP2013257679A (ja) | 2013-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101636870B1 (ko) | 최소 부트 이미지의 생성 방법 및 장치 | |
US10430302B2 (en) | Data retention with data migration | |
CN103488586A (zh) | 信息处理设备和方法以及程序 | |
US8589647B2 (en) | Apparatus and method for synchronizing a snapshot image | |
CN101916201A (zh) | 一种基于Android移动终端冷启动的方法和装置 | |
CN110704161B (zh) | 虚拟机创建方法、装置及计算机设备 | |
US20120246390A1 (en) | Information processing apparatus, program product, and data writing method | |
CN103984565A (zh) | 文件系统预提取的方法与电子装置以及启动方法 | |
KR20160111583A (ko) | 호스트 및 복수의 저장 장치를 포함하는 메모리 시스템 및 그것의 데이터 이송 방법 | |
JP2014194634A (ja) | 情報処理装置、情報処理方法、並びに記録媒体 | |
CN104808765B (zh) | 一种信息处理方法以及电子设备 | |
TW201327185A (zh) | 記憶體儲存裝置及其記憶體控制器與資料寫入方法 | |
CN104424115B (zh) | 恢复电子设备的预设状态的方法、存储装置和电子设备 | |
CN105739982A (zh) | 一种系统休眠的方法及装置 | |
JP5998566B2 (ja) | 移動制御プログラム、移動制御方法および制御装置 | |
KR100719200B1 (ko) | 정보 처리 장치, 메모리 관리 프로그램을 기록한 기록매체 및 메모리 관리 방법 | |
KR100994723B1 (ko) | 시스템에서 초기 구동시간을 단축시키는 선택적 서스펜드 리쥼 방법 및 그 기록매체 | |
US20130326123A1 (en) | Memory management device and method, and program | |
US20130332695A1 (en) | Information processing apparatus and method and computer-readable medium | |
CN104850208A (zh) | 一种信息处理方法以及电子设备 | |
JP5231496B2 (ja) | 情報処理装置及びそのサスペンド/リジューム方法 | |
JP5135462B1 (ja) | 情報処理装置及びメモリ管理方法 | |
JP2009301504A (ja) | コンピュータ、記録媒体および情報処理方法 | |
CN103577565A (zh) | 一种将文件导出到磁带的方法和装置 | |
KR101377291B1 (ko) | 블록 해제 정보를 사용하여 로그 데이터를 저장하는 시스템 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140101 |