CN102207905A - ***恢复方法、存储媒体控制器及存储*** - Google Patents
***恢复方法、存储媒体控制器及存储*** Download PDFInfo
- Publication number
- CN102207905A CN102207905A CN2010101417983A CN201010141798A CN102207905A CN 102207905 A CN102207905 A CN 102207905A CN 2010101417983 A CN2010101417983 A CN 2010101417983A CN 201010141798 A CN201010141798 A CN 201010141798A CN 102207905 A CN102207905 A CN 102207905A
- Authority
- CN
- China
- Prior art keywords
- data
- memory
- read
- memory block
- host computer
- 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
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明提供一种***恢复方法、存储媒体控制器及存储***。其中***恢复方法包括:将对应存储媒体单元的多个存储地址划分为第一存储区与第二存储区。本***恢复方法也包括将来自于主机***的初始数据存储在第一存储区的存储地址中,将用于更新此些初始数据的更新数据存储在第二存储区的存储地址中,并且建立地址对应表以记录对应存储此些初始数据的存储地址的更新信息。本***恢复方法还包括当存储装置被断电且重新耦接至主机***时清除记录在地址对应表中的更新信息。基此,本方法可快速地恢复***设定。
Description
技术领域
本发明涉及一种***恢复方法以及使用此方法的存储媒体控制器与存储***。
背景技术
在电脑***中,存储装置是被用来存储数据。特别是,当存储装置被用作为***磁盘(或称主磁盘)时,此存储装置的存储空间会被用来安装操作***与存储***设定数据。在***磁盘的运作过程中,经常会因为人为操作、病毒感染或骇客入侵等因素而使得存储在***磁盘中的***设定数据被更改或者造成***文件损毁。例如,以配置在电脑教室中的教学用电脑或工业用电脑为例,当学员或操作人员使用电脑时可能会更改相关设定,甚至执行含有病毒的程序。基此,在完成操作***与应用程序的安装后,电脑管理人员会希望每当电脑被使用完毕后仍够恢复电脑的初始状态,以避免电脑因不当使用而需重新调整或重新安装操作***或应用程序。
为了克服此一问题,电脑管理人员会将***磁盘设定为防写模式,以防止***磁盘被非授权者写入数据。然而,一些操作***在开机过程中会需要在***磁盘中写入日志档(log file),所以在***磁盘被设定为防写模式下操作***的开机会发生问题。因此,此种以防写模式来禁止***磁盘的写入的方法需要配合特定的操作***或更改操作***的设定。
此外,另一种方法是将***磁盘的存储空间分割一个备份存储区,并且将预设操作***或应用程序的映像档存储在此备份存储区中。之后,每当电脑重新开机时,映像档会从备份区中被载入至开机磁区以覆写***磁盘中的操作***或应用程序。然而,此种方法需改基本输入输出***(BasicInput/Output System,BIOS)的设定。此外,当映像档较大时,载入映像档的时间会导致开机所需的时间的延长,因而造成***效能的降低。
发明内容
本发明提供一种***恢复方法,其能够快速地恢复***设定。
本发明提供一种存储媒体控制器,其能够快速地恢复***设定。
本发明提供一种存储***,其能够快速地恢复***设定。
本发明实施例提出一种***恢复方法,用于一存储装置,其中此存储装置具有多个存储地址。本***恢复方法包括将所述多个存储地址至少划分为一第一存储区与一第二存储区,并且接收一主机***的至少一第一写入指令及一第一数据。本***恢复方法也包括当此第一数据是欲写入至第一存储区的存储地址时,将第一数据写入至第二存储区的存储地址中。本***恢复方法还包括建立地址对应表以记录对应存储第一数据的存储地址的更新信息。本***恢复方法还包括当存储装置断电且重新耦接至主机***时清除记录在地址对应表中的更新信息。
本发明实施例提出一种存储媒体控制器,用于管理存储媒体单元,其中此存储媒体单元具有多个存储地址。本存储装置包括主机接口、存储媒体接口与存储媒体管理电路。主机接口耦接至存储媒体管理电路,用以耦接至主机***。存储媒体接口耦接至存储媒体管理电路,用以耦接至存储媒体单元。存储媒体管理电路用以执行上述***恢复方法。
本发明实施例提出一种存储***,其包括连接器、存储媒体单元与存储媒体控制器。连接器用以耦接至主机***。存储媒体单元具有多个存储地址。存储媒体控制器耦接至存储媒体单元与连接器,并且用以执行上述***恢复方法。
基于上述,本发明实施例可有效且快速地恢复***设定,由此避免因为人为操作疏失、病毒感染或骇客入侵等因素所造成的误改***设定或***文件损毁。
为让本发明的上述特征和优点能更明显易懂,下面特举实施例,并配合所附图作详细说明如下。
附图说明
图1A是本发明一实施例使用存储装置的主机***。
图1B是本发明一实施例的电脑、输入/输出装置与存储装置的示意图。
图1C是本发明另一实施例的主机***与存储装置的示意图。
图2是图1A所示的存储装置的概要方块图。
图3是本发明一实施例的存储媒体控制器的概要方块图。
图4是本发明一实施例管理存储媒体单元106的示意图。
图5是本发明一实施例管理存储区的示意图。
图6是本发明一实施例的数据写入示例。
图7是本发明一实施例的另一数据写入示例。
图8是本发明一实施例的地址对应表的示例。
图9是本发明一实施例的***恢复方法的分隔磁区与建立地址对应表的流程图。
图10是本发明一实施例的***恢复方法的写入与读取数据的流程图。
主要元件符号说明:
1000:主机***; 1100:电脑;
1102:微处理器; 1104:随机存取存储器;
1106:输入/输出装置; 1108:***总线;
1110:数据传输接口; 1202:鼠标;
1204:键盘; 1206:显示器;
1208:打印机; 1212:随身盘;
1214:存储卡; 1216:固态硬盘;
1310:数字相机; 1312:SD卡;
1314:MMC卡; 1316:存储棒;
1318:CF卡; 1320:嵌入式存储装置;
100:存储装置; 102:连接器;
104:存储媒体控制器; 106:存储媒体单元;
204:存储媒体管理电路; 206:主机接口;
208:存储媒体接口; 252:缓冲存储器;
254:电源管理电路; 256:错误校正电路;
302:***区; 304:存储区;
306:取代区; 512:主存储区、第一存储区;
522:暂存存储区、第二存储区; 800:地址对应表;
802:主存储区存储地址栏位; 804:暂存存储区存储地址栏位;
806:更新信息栏位; 460(0)~460(H):逻辑区块;
410(0)~410(S)、420(0)~420(N)、440(0)~440(R):实体区块;
S901、S903、S905、S907、S909、S911、S913、S915、S917、S919、S921、S923:***恢复方法的步骤。
具体实施方式
图1A是本发明一实施例使用存储装置的主机***。
请参照图1A,主机***1000一般包括电脑1100与输入/输出(input/output,I/O)装置1106。电脑1100包括微处理器1102、随机存取存储器(random accessmemory,RAM)1104、***总线1108以及数据传输接口1110。输入/输出装置1106包括如图1B的鼠标1202、键盘1204、显示器1206与打印机1208。必须了解的是,图1B所示的装置非限制输入/输出装置1106,输入/输出装置1106可还包括其他装置。
在本发明实施例中存储装置100是通过数据传输接口1110与主机***1000的其他元件耦接。藉由微处理器1102、随机存取存储器1104与输入/输出装置1106的处理可将数据写入至存储装置100或从存储装置100中读取数据。例如,存储装置100可以是如图1B所示的随身盘1212、存储卡1214或固态硬盘(Solid State Drive,SSD)1216。
一般而言,主机***1000可实质地为可存储数据的任意***。虽然在本实施例中,主机***1000是以电脑***来作说明,然而,在本发明另一实施例中主机***1000可以是数字相机、摄影机、通信装置、音讯播放器或视讯播放器等***。例如,在主机***为数字相机(摄影机)1310时,可复写式非易失性存储器存储装置则为其所使用的SD卡1312、MMC卡1314、存储棒(memory stick)1316、CF卡1318或嵌入式存储装置1320(如图1C所示)。嵌入式存储装置1320包括嵌入式多媒体卡(Embedded MMC,eMMC)。值得一提的是,嵌入式多媒体卡是直接耦接于主机***的基板上。
图2是图1A所示的存储装置的概要方块图。
请参照图2,存储装置100包括连接器102、存储媒体控制器104与存储媒体单元106。
连接器102是耦接至存储媒体控制器104并且用以耦接至主机***1000。在本实施例中,连接器102为串行高级技术附件(Serial Advanced TechnologyAttachment,SATA)连接器。然而,必须了解的是本发明不限于此,连接器102亦可以是通用串行总线(Universal Serial Bus,USB)连接器、电气和电子工程师协会(Institute of Electrical and Electronic Engineers,IEEE)1394连接器、高速周边零件连接接口(Peripheral Component Interconnect Express,PCI Express)连接器、安全数字(secure digital,SD)接口连接器、存储棒(Memory Stick,MS)接口连接器、多媒体存储卡(Multi Media Card,MMC)接口连接器、小型快闪(Compact Flash,CF)接口连接器、整合式驱动电子接口(Integrated DeviceElectronics,IDE)连接器或其他适合的连接器。
存储媒体控制器104会执行以硬件形式或韧体形式实作的多个逻辑闸或控制指令,并且根据主机***1000的指令在存储媒体单元106中进行数据的写入与读取等运作。
图3是本发明一实施例的存储媒体控制器的概要方块图。
请参照图3,存储媒体控制器104包括存储媒体管理电路204、主机接口206与存储媒体接口208。
存储媒体管理电路204用以控制存储媒体控制器104的整体运作。具体来说具体来说,存储媒体管理电路204具有多个控制指令,并且在存储装置100运作时,此些控制指令会被执行以根据本实施例的数据存取机制与存储媒体管理机制来管理存储媒体单元106。此些数据存取机制与存储媒体管理机制将于以下配合图式作详细说明。
在本实施例中,存储媒体管理电路204是以一韧体形式来实作。例如,存储媒体管理电路204具有一微处理器单元(未示出)与一唯读存储器(未示出),并且此些控制指令是被刻录至此只读存储器中。当存储装置100运作时,此些控制指令会由微处理器单元来执行以完成根据本发明实施例的数据存取机制与存储媒体管理机制。
在本发明另一实施例中,存储媒体管理电路204的控制指令亦可以程序码形式存储在存储媒体单元106的特定区域(例如,存储器晶片中专用于存放***数据的***区)中。此外,存储媒体管理电路204具有一微处理器单元(未示出)、一唯读存储器(未示出)及一随机存取存储器(未示出)。特别是,此唯读存储器具有一驱动码段,并且当存储媒体控制器104被使能时,微处理器单元会先执行该驱动码段来将存储在存储媒体单元106中的存储媒体管理电路204的控制指令载入至存储媒体管理电路204的随机存取存储器中,之后再运转此些控制指令以执行本发明实施例的数据存取机制与存储器管理机制。此外,在本发明另一实施例中,存储媒体管理电路204的控制指令亦可以一硬体形式来实作。
主机接口206是耦接至存储媒体管理电路204并且用以接收与识别主机***1000所传送的指令与数据。也就是说,主机***1000所传送的指令与数据会通过主机接口206来传送至存储媒体管理电路204。在本实施例中,主机接口206是对应连接器102为SATA接口。然而,必须了解的是本发明不限于此,主机接口206亦可以是PATA接口、USB接口、IEEE 1394接口、PCI Express接口、SD接口、MS接口、MMC接口、CF接口、IDE接口或其他适合的数据传输接口。
存储媒体接口208是耦接至存储媒体管理电路204并且用以存取存储媒体单元106。也就是说,欲写入至存储媒体单元106的数据会经由存储媒体接口208转换为存储媒体单元106所能接受的格式。
在本发明一实施例中,存储媒体控制器104还包括缓冲存储器252。缓冲存储器252是耦接至存储媒体管理电路204并且用以暂存来自于主机***1000的数据与指令或来自于存储媒体单元106的数据。
在本发明一实施例中,存储媒体控制器104还包括电源管理电路254。电源管理电路254是耦接至存储媒体管理电路204并且用以控制存储装置100的电源。
在本发明一实施例中,存储媒体控制器104还包括错误校正电路256。错误校正电路256是耦接至存储媒体管理电路204并且用以执行一错误校正程序以确保数据的正确性。具体来说,当存储媒体管理电路204从主机***1000中接收到写入指令时,错误校正电路256会为对应此写入指令的写入数据产生对应的错误检查与校正码(Error Checking and Correcting Code,ECCCode),并且存储媒体管理电路204会将此写入数据与对应的错误校正码写入至存储媒体单元106中。之后,当存储媒体管理电路204从存储媒体单元106中读取数据时会同时读取此数据对应的错误校正码,并且错误校正电路256会依据此错误校正码对所读取的数据执行错误校正程序。
请再参照图2,存储媒体单元106是耦接至存储媒体控制器104,并且用以存储数据。在本实施例中,存储媒体单元106为可复写式非易失性存储器,并且具有多个实体区块。各实体区块分别具有复数个实体页面,其中对应于同一实体区块的实体页面可独立写入而同一实体区块的实体页面需同时抹除。详细来说,实体区块为抹除的最小单位。亦即,每一实体区块含有最小数目的一并被抹除的存储胞。每一实体区块具有数个实体页面,并且实体页面为程序化的最小单元。换言的,实体页面为写入数据或读取数据的最小单元。每一实体页面通常包括使用者数据区与冗余区。使用者数据区用以存储使用者的数据,而冗余区用以存储***的数据(例如,错误检查与校正码)。例如,存储媒体单元106为快闪存储器晶片。然而,本发明不限于此,存储媒体单元106亦可是其他可复写式非易失性存储器晶片、磁盘或其他存储媒体。
图4是本发明一实施例管理存储媒体单元106的示意图。
存储媒体控制器104的存储媒体管理电路204将实体区块逻辑地分组为***区302、存储区304与取代区306。
逻辑上属于***区302的实体区块410(0)~410(S)用以记录***数据。此***数据包括关于存储媒体单元106的制造商与型号、存储媒体单元106的实体区块数、每一实体区块的页面数等。
逻辑上属于存储区304的实体区块420(0)~420(N)是用以存储主机***1000所写入的数据。也就是说,存储装置100会使用分组为存储区304的实体区块来实际地存储主机***1000所写入的数据。
特别是,存储媒体管理电路204会将存储区304的实体区块分组为数据区与备用区(未示出)。此外,当存储媒体管理电路204欲写入数据至存储区304时,存储媒体管理电路204会轮替地使用数据区与备用区的实体区块来写入数据。例如,当存储媒体管理电路204欲写入数据至存储区304时,存储媒体管理电路204会从备用区中提取实体区块来写入数据以替换数据区中的实体区块。为了能够使主机***1000能够顺利地存取以轮替方式存储数据的实体区块,存储媒体管理电路204会配置映射存储区304的实体区块的逻辑区块460(0)~460(H)以供主机***1000存取。具体来说,主机***1000仅需根据逻辑区块460(0)~460(H)来下达数据存取指令,而存储媒体管理电路204会依据所下达的数据存取指令以及逻辑区块-实体区块映射表来于所映射的实体区块中实际地写入数据。在此,逻辑区块亦称为存储地址。
逻辑上属于取代区306中的实体区块440(0)~440(R)是取代实体区块。例如,存储媒体单元106于出厂时会预留4%的实体区块作为更换使用。也就是说,当***区302与存储区304中的实体区块损毁时,预留于取代区306中的实体区块是用以取代损坏的实体区块(即,坏实体区块(bad block))。因此,倘若取代区306中仍存有正常的实体区块且发生实体区块损毁时,存储媒体管理电路204会从取代区306中提取正常的实体区块来更换损毁的实体区块。倘若取代区306中无正常的实体区块且发生实体区块损毁时,则存储装置100将会被宣告为写入保护(write protect)状态,而无法再写入数据。
特别是,***区302、存储区304与取代区306的实体区块的数量会依据不同的存储器规格而有所不同。此外,必须了解的是,在存储装置100的运作中,实体区块关联至***区302、存储区304与取代区306的分组关系会动态地变动。例如,当存储区中的实体区块损坏时而被取代区的实体区块取代时,则原本取代区的实体区块会被关联至存储区。
图5是根据本发明一管理存储区的示意图。
请参照图5,在根据本实施例的存储媒体管理机制中,存储媒体管理电路204会将存储区304的逻辑区块460(0)~460(K-1)分组为第一存储区512(以下称为主存储区)并且将逻辑区块460(K)~460(H)分组为第二存储区522(以下称为暂存存储区)。
此外,存储媒体管理电路204将暂存存储区522的逻辑区块460(K)~460(H)一对一地对应至主存储区512的逻辑区块460(0)~460(K-1),以作为主存储区512中每一逻辑区块的暂存地址。
在此,存储媒体管理电路204会将主存储区512提供给主机***1000来存取,并且不会将暂存存储区522提供给主机***1000来存取。例如,假设存储区304的容量为4G(Gigabyte)时,存储媒体管理电路204会将一半的逻辑区块用作为主存储区512并且将另一半的逻辑区块用作为暂存存储区522。并且,当存储装置100被耦接至主机***1000并且接收到装置特征询问指令时,存储媒体管理电路204会将″存储装置100为大容量存储类别″且″可存储空间为主存储区(即,2G的存储空间)″的讯息传送给主机***1000。也就是说,主机***1000仅能识别出主存储区512并于主存储区512中存取数据。特别是,主机***1000无法获知暂存存储区522的存在。
在本实施例中,存储媒体管理电路204会根据主机***1000所下达的控制指令(例如,制造商指令(Vendor Command))将主存储区512设定为写入模式或防写模式。
特别是,在主存储区512已被设定为写入模式下,当存储媒体管理电路204从主机***1000中接收到写入指令时,存储媒体管理电路204会将对应此写入指令的数据写入至主存储区512中。在主存储区512已被设定为防写模式下,当存储媒体管理电路204从主机***1000中接收到写入指令时,存储媒体管理电路204会将对应此写入指令的数据写入至暂存存储区522中。
也就是说,在主存储区512已被设定为防写模式下,存储媒体管理电路204会将欲写入至主存储区512的逻辑区块的数据写入至暂存存储区522中对应的逻辑区块中。
图6是根据本发明一实施例的数据写入示例。
请参照图6,倘若在存储区304未存储任何数据并且主存储区512已被设定为写入模式的情况下,当主机***1000依据电脑管理者的操作在存储装置100中安装操作***或应用程序或者写入数据时,存储媒体管理电路204会依据写入指令将数据写入至主存储区512的逻辑区块460(0)~460(999)。特别是,为了在完成操作***或应用程序的安装的后,***设定不会被任意地修改,电脑管理者会经由主机***1000传送要求将主存储区设定为防写模式的控制指令给存储装置100,并且存储媒体管理电路204会依据此控制指令将主存储区512设定为防写模式。
图7是本发明一实施例的另一数据写入示例。
请参照图7,倘若在图6所示的存储状态且主存储区被设定为防写模式的情况下,当主机***1000欲更新存储在主存储区512的逻辑区块460(48)~460(49)中的数据时,存储媒体管理电路204会将此更新数据对应地写入至暂存区522的逻辑区块460(K+48)~460(K+49)中。
特别是,在图6所示的存储状态下,当主机***1000欲读取存储在主存储区512的逻辑区块460(0)~460(47)或逻辑区块460(50)~460(999)中的数据时,存储媒体管理电路204会识别暂存区522中不存有对应逻辑区块460(0)~460(47)与逻辑区块460(50)~460(999)的更新数据。此时,存储媒体管理电路204会从主存储区512的逻辑区块中读取对应的数据并且将所读取的数据传送给主机***200。此外,当主机***1000欲读取存储在主存储区512的逻辑区块460(48)~460(49)中的数据时,存储媒体管理电路204会识别暂存区522中存有对应逻辑区块460(48)~460(49)的更新数据。此时,存储媒体管理电路204会从暂存存储区522的逻辑区块460(K+48)~460(K+49)中读取对应的数据并且将所读取的数据传送给主机***200。
在本实施例中,在主存储区512已被设定为防写模式下,存储媒体管理电路204会建立与维护地址对应表以记录主存储区512的逻辑区块的更新信息。
图8是本发明一实施例的地址对应表的示例。
请图参照8,地址对应表800包括主存储区存储地址栏位802、暂存存储区存储地址栏位804与更新信息栏位806。暂存存储区存储地址栏位804用以记录主存储区存储地址栏位802的逻辑区块所对应的暂存地址。更新信息栏位806用以记录存储在主存储区512的逻辑区块中的数据是否已被更新的信息。例如,当记录在更新信息栏位806的值为′1′时,表示存储在主存储区存储地址栏位802所记录的逻辑区块中的数据已被更新。反的,当记录在更新信息栏位806的值为′0′时,表示存储在主存储区存储地址栏位802所记录的逻辑区块中的数据未被更新。也就是说,当暂存存储区522的逻辑区块已被用来存储用于更新存储在主存储区522的数据的更新数据时,存储媒体管理电路204会在地址对应表800的更新信息栏位806中标记此逻辑区块的更新信息,以表示存储在主存储区522的数据已被更新。必须了解的是,尽管本实施例是以数值′1′与′0′来表示数据是否已被更新,然而,本发明不限于此,其他符号或文字亦可用于表示数据是否已被更新。
值得一提的是,当存储装置100重新启动(例如,存储装置100被断电并重新耦接至主机***1000)时,存储媒体管理电路204会清除地址对应表800中的更新信息。例如,存储媒体管理电路204会将更新信息栏位806中所有的值恢复为′0′,以表示暂存存储区522未存储任何更新数据。基此,每当存储装置100被重新启动时,主机***1000所存取的数据会恢复为初始所存储的数据。也就是说,每当主机***1000被重新开机时,主机***1000的操作环境与***设定会恢复至主存储区512被设定为防写模式前的状态。例如,在电脑管理者在主存储区512中安装完操作***或应用程序并且将主存储区512被设定为防写模式后,每当使用者重新启动主机***1000时,主机***1000会根据初始所安装的操作***或应用程序来启动。
值得一提的是,在本实施例中,主存储区512的容量是相同于暂存存储区522的容量,并且暂存存储区522的逻辑区块是以一对一方式被用作为主存储区512的逻辑区块的暂存地址。然而,本发明不限于此,并且在本发明另一实施例中,暂存存储区522的容量亦可小于主存储区512的容量,并且暂存存储区522的逻辑区块是以轮替方式来存储来自于主机***1000的更新数据。
图9是本发明一实施例的***恢复方法的分隔磁区与建立地址对应表的流程图。
请参照图9,当存储装置100被初始化(例如,格式化)时,在步骤S901中存储媒体管理电路204会将至少部分的逻辑区块划分为主存储区512与暂存存储区522。
并且,在步骤S903中存储媒体管理电路204会建立地址对应表800以记录主存储区512与暂存存储区522的逻辑区块的对应关系与更新信息。
图10是本发明一实施例的***恢复方法的写入与读取数据的流程图。
请参照图10,当存储装置100被耦接至主机***1000时,首先,在步骤S905中存储媒体管理电路204会清除记录在地址对应表800中的更新信息。
然后,在步骤S907中存储媒体管理电路204等候主机***下达主机指令并且判断所下达的主机指令为写入指令或读取指令。
倘若在步骤S907中所下达的主机指令为写入指令时,则在步骤S909中存储媒体管理电路204会判断主存储区512是否被设定为防写模式。倘若主存储区512未被设定为防写模式时,则在步骤S911中存储媒体管理电路204会将对应写入指令的数据写入至主存储区512的对应逻辑区块中。倘若主存储区被设定为防写模式时,则在步骤S913中存储媒体管理电路204会将对应写入指令的数据写入至暂存存储区522的对应逻辑区块中,并且在步骤S915中更新地址对应表800。
倘若在步骤S907中所下达的主机指令为读取指令时,则在步骤S917中存储媒体管理电路204会判断主存储区512是否被设定为写入模式。倘若主存储区512被设定为写入模式时,则在步骤S919中存储媒体管理电路204会从主存储区512中读取对应此读取指令的数据并且将所读取的数据传送给主机***1000。倘若主存储区512未被设定为写入模式时,则在步骤S921中存储媒体管理电路204会依据地址对应表800判断存储在此读取指令所对应的逻辑区块中的数据是否已被更新。
倘若存储在此读取指令所对应的逻辑区块中的数据未被更新时,则步骤S919会被执行。倘若存储在此读取指令所对应的逻辑区块中的数据已被更新时,则在步骤S923中存储媒体管理电路204会依据地址对应表800从暂存存储区522中读取对应的数据并且将所读取的数据传送给主机***1000。在步骤S911、S915、S919与S923的后,存储媒体管理电路204会执行步骤S907以等待下一个主机指令。并且,当存储装置100被断电时,图10所示的程序会结束。
综上所述,根据本发明实施例的***恢复方法将存储装置的存储空间划分为主存储区与暂存存储区,并且在主存储区被设定为防写模式下将主机***所写入的数据存储在暂存存储区并以地址对应表来记录更新信息。此外,当存储装置被重新启动时,地址对应表中的更新信息会被清除,由此主机***会存取设定防写模式前所存储的数据。基此,本发明实施例可有效地避免主存储区的数据被任意地修改,并且在存储装置被重新启动时***设定能够被快速地恢复至初始状态。
虽然本发明已以实施例揭示如上,然其并非用以限定本发明,任何所属技术领域的技术人员,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,故本发明的保护范围当以权利要求所保护的范围为准。
Claims (17)
1.一种***恢复方法,用于一存储装置,该***恢复方法包括:
将对应该存储装置的多个存储地址至少划分为一第一存储区与一第二存储区;
接收一主机***的至少一第一写入指令及一第一数据;
当该第一数据是欲写入至该第一存储区的存储地址时,将该第一数据写入至该第二存储区的存储地址中;
建立一地址对应表以记录对应存储该第一数据的存储地址的一更新信息;以及
当该存储装置断电且重新耦接至该主机***时清除记录在该地址对应表中的该更新信息。
2.根据权利要求1所述的***恢复方法,还包括:
从该主机***中接收一第一读取指令,并且判断在该地址对应表中是否存有对应该第一读取指令所欲读取的存储地址的该更新信息;
当在该地址对应表中不存有该更新信息时,则从该第一存储区中读取对应该第一读取指令所欲读取的数据并且将所读取的数据传送给该主机***;以及
当在该地址对应表中存有该更新信息时,则依据该更新信息从该第二存储区中读取对应该第一读取指令所欲读取的数据并且将所读取的数据传送给该主机***。
3.根据权利要求1所述的***恢复方法,其中该第一存储区为一防写模式,且该***恢复方法还包括:
根据该主机***的一控制指令将该第一存储区设定为一写入模式。
4.根据权利要求3所述的***恢复方法,还包括:
将来自于该主机***的一预设数据写入至该第一存储区的存储地址中;以及
在将该预设数据写入至该第一存储区的存储地址中之后根据该主机***的该控制指令将该第一存储区设定为该防写模式。
5.根据权利要求4所述的***恢复方法,其中在根据该主机***的该控制指令将该第一存储区设定为该写入模式的步骤之前,该***恢复方法还包括:
从该主机***中接收欲读取存储在该第一存储区的存储地址的一第二读取指令,判断在该地址对应表中是否存有对应该第二读取指令所欲读取的存储地址的该更新信息,
其中当在该地址对应表中不存有对应该第二读取指令所欲读取的存储地址的该更新信息时,则从该第一存储区中读取对应该第二读取指令所欲读取的数据并且将所读取的数据传送给该主机***,并且当在该地址对应表中存有对应该第二读取指令所欲读取的存储地址的该更新信息时,则依据该更新信息从该第二存储区中读取对应该第二读取指令所欲读取的数据并且将所读取的数据传送给该主机***;以及
其中在将来自于该主机***的该预设数据写入至该第一存储区的存储地址中的步骤之后,该***恢复方法还包括:
从该主机***中接收欲读取存储在该第一存储区的存储地址的一第三读取指令;
从该第一存储区中读取对应该第三读取指令所欲读取的数据;以及
将所读取的数据传送给该主机***。
6.根据权利要求3所述的***恢复方法,还包括:
从该主机***中接收一第二写入指令与对应该第二写入指令的一第二数据,将该第二数据写入至该第一存储区。
7.根据权利要求1所述的***恢复方法,其中将所述多个存储地址至少划分为该第一存储区与该第二存储区的步骤包括:
将至少部分所述多个存储地址划分为具有相同容量的该第一存储区与该第二存储区;以及
将该第二存储区的存储地址作为多个暂存地址,以分别地对应该第一存储区的存储地址,其中每一暂存地址对应该第一存储区的存储地址的其中之一。
8.根据权利要求7所述的***恢复方法,其中将该第一数据写入至该第二存储区的存储地址中的步骤包括:
在对应存储该第一数据的存储地址的暂存地址中存储该第一数据。
9.一种存储媒体控制器,用于管理一存储媒体单元,该存储媒体控制器包括:
一主机接口,用以耦接至一主机***;
一存储媒体接口,用以耦接至该存储媒体单元;以及
一存储媒体管理电路,耦接至该主机接口与该存储媒体接口,其中该存储媒体管理电路用以执行至少下列程序:
将对应该存储装置的多个存储地址至少划分为一第一存储区与一第二存储区;
接收一主机***的至少一第一写入指令及一第一数据;
当该第一数据是欲写入至该第一存储区的存储地址时,将该第一数据写入至该第二存储区的存储地址中;
建立一地址对应表以记录对应存储该第一数据的存储地址的一更新信息;以及
当该存储装置断电且重新耦接至该主机***时清除记录在该地址对应表中的该更新信息。
10.根据权利要求9所述的存储媒体控制器,
其中该存储媒体管理电路还用以从该主机***中接收一第一读取指令,并且判断在该地址对应表中是否存有对应该第一读取指令所欲读取的存储地址的该更新信息,
其中当在该地址对应表中不存有该更新信息时,该存储媒体管理电路还用以从该第一存储区中读取对应该第一读取指令所欲读取的数据并且将所读取的数据传送给该主机***,以及
其中当在该地址对应表中存有该更新信息时,该存储媒体管理电路还用以依据该更新信息从该第二存储区中读取对应该第一读取指令所欲读取的数据并且将所读取的数据传送给该主机***。
11.根据权利要求9所述的存储媒体控制器,其中该第一存储区为一防写模式,且该存储媒体管理电路还用以根据该主机***的一控制指令将该第一存储区设定为一写入模式。
12.根据权利要求11所述的存储媒体控制器,其中该存储媒体管理电路还用以将来自于该主机***的一预设数据写入至该第一存储区的存储地址中,并且在将该预设数据写入至该第一存储区的存储地址中之后根据该主机***的该控制指令将该第一存储区设定为该防写模式。
13.根据权利要求12所述的存储媒体控制器,
其中该存储媒体管理电路还用以在根据该主机***的该控制指令将该第一存储区设定为该写入模式之前从该主机***中接收欲读取存储在该第一存储区的存储地址的一第二读取指令,判断在该地址对应表中是否存有对应该第二读取指令所欲读取的存储地址的该更新信息,
其中当在该地址对应表中不存有对应该第二读取指令所欲读取的存储地址的该更新信息时,该存储媒体管理电路还用以从该第一存储区中读取对应该第二读取指令所欲读取的数据并且将所读取的数据传送给该主机***,
其中当在该地址对应表中存有对应该第二读取指令所欲读取的存储地址的该更新信息时,该存储媒体管理电路还用以依据该更新信息从该第二存储区中读取对应该第二读取指令所欲读取的数据并且将所读取的数据传送给该主机***,
其中该存储媒体管理电路还用以在将来自于该主机***的该预设数据写入至该第一存储区的存储地址中的后从该主机***中接收欲读取存储在该第一存储区的存储地址的一第三读取指令,从该第一存储区中读取对应该第三读取指令所欲读取的数据并且将所读取的数据传送给该主机***。
14.根据权利要求9所述的存储媒体控制器,其中该存储媒体单元为一可复写式非易失性存储器晶片,所述多个存储地址映射至该可复写式非易失性存储器晶片的多个实体区块,所述多个实体区块分别地具有多个实体页面,并且每一所述多个实体区块的实体页面可独立地被写入且同时地被抹除。
15.一种存储***,包括:
一连接器,用以耦接至一主机***;
一存储媒体单元;以及
一存储媒体控制器,耦接至该存储媒体单元与该连接器,用以执行至少下列程序:
将对应该存储媒体单元的多个存储地址至少划分为一第一存储区与一第二存储区;
接收一主机***的至少一第一写入指令及一第一数据;
当该第一数据是欲写入至该第一存储区的存储地址时,将该第一数据写入至该第二存储区的存储地址中;
建立一地址对应表以记录对应存储该第一数据的存储地址的一更新信息;以及
当该存储装置断电且重新耦接至该主机***时清除记录在该地址对应表中的该更新信息。
16.根据权利要求15所述的存储***,
其中该存储媒体控制器还用以从该主机***中接收一第一读取指令,并且判断在该地址对应表中是否存有对应该第一读取指令所欲读取的存储地址的该更新信息,
其中当在该地址对应表中不存有该更新信息时,该存储媒体控制器还用以从该第一存储区中读取对应该第一读取指令所欲读取的数据并且将所读取的数据传送给该主机***,以及
其中当在该地址对应表中存有该更新信息时,该存储媒体控制器还用以依据该更新信息从该第二存储区中读取对应该第一读取指令所欲读取的数据并且将所读取的数据传送给该主机***。
17.根据权利要求15所述的存储***,其中该存储媒体单元为一可复写式非易失性存储器晶片,所述多个存储地址映射至该可复写式非易失性存储器晶片的多个实体区块,所述多个实体区块分别地具有多个实体页面,并且每一所述多个实体区块的实体页面可独立地被写入且同时地被抹除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101417983A CN102207905A (zh) | 2010-03-30 | 2010-03-30 | ***恢复方法、存储媒体控制器及存储*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101417983A CN102207905A (zh) | 2010-03-30 | 2010-03-30 | ***恢复方法、存储媒体控制器及存储*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102207905A true CN102207905A (zh) | 2011-10-05 |
Family
ID=44696749
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010101417983A Pending CN102207905A (zh) | 2010-03-30 | 2010-03-30 | ***恢复方法、存储媒体控制器及存储*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102207905A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103678162A (zh) * | 2012-09-12 | 2014-03-26 | 群联电子股份有限公司 | ***数据储存方法、存储器控制器与存储器储存装置 |
CN104182293A (zh) * | 2013-05-22 | 2014-12-03 | 群联电子股份有限公司 | 数据写入方法、存储器存储装置与存储器控制器 |
CN104424115A (zh) * | 2013-09-05 | 2015-03-18 | 联想(北京)有限公司 | 恢复电子设备的预设状态的方法、存储装置和电子设备 |
CN104932831A (zh) * | 2014-03-20 | 2015-09-23 | 华邦电子股份有限公司 | 串行与非式闪存存储器及其内建可变式坏区的管理方法 |
CN108121680A (zh) * | 2016-11-30 | 2018-06-05 | 三星电子株式会社 | 存储装置、电子***以及操作电子装置的方法 |
CN110678849A (zh) * | 2017-12-12 | 2020-01-10 | 谷歌有限责任公司 | 不稳定移动设备的自动恢复 |
CN111666177A (zh) * | 2020-05-07 | 2020-09-15 | 中国石油天然气股份有限公司 | 一种气液两相流量计仪表数据存储方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060282641A1 (en) * | 2005-06-13 | 2006-12-14 | Takeo Fujimoto | Storage controller and method for controlling the same |
CN1965300A (zh) * | 2004-06-04 | 2007-05-16 | 莱纳索夫特技术公司 | 用于保护计算机硬盘上的***数据的装置和方法 |
-
2010
- 2010-03-30 CN CN2010101417983A patent/CN102207905A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1965300A (zh) * | 2004-06-04 | 2007-05-16 | 莱纳索夫特技术公司 | 用于保护计算机硬盘上的***数据的装置和方法 |
US20060282641A1 (en) * | 2005-06-13 | 2006-12-14 | Takeo Fujimoto | Storage controller and method for controlling the same |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103678162A (zh) * | 2012-09-12 | 2014-03-26 | 群联电子股份有限公司 | ***数据储存方法、存储器控制器与存储器储存装置 |
CN104182293A (zh) * | 2013-05-22 | 2014-12-03 | 群联电子股份有限公司 | 数据写入方法、存储器存储装置与存储器控制器 |
CN104182293B (zh) * | 2013-05-22 | 2017-06-30 | 群联电子股份有限公司 | 数据写入方法、存储器存储装置与存储器控制器 |
CN104424115A (zh) * | 2013-09-05 | 2015-03-18 | 联想(北京)有限公司 | 恢复电子设备的预设状态的方法、存储装置和电子设备 |
CN104932831A (zh) * | 2014-03-20 | 2015-09-23 | 华邦电子股份有限公司 | 串行与非式闪存存储器及其内建可变式坏区的管理方法 |
CN104932831B (zh) * | 2014-03-20 | 2018-03-30 | 华邦电子股份有限公司 | 串行与非式闪存存储器及其内建可变式坏区的管理方法 |
CN108121680A (zh) * | 2016-11-30 | 2018-06-05 | 三星电子株式会社 | 存储装置、电子***以及操作电子装置的方法 |
CN108121680B (zh) * | 2016-11-30 | 2023-03-10 | 三星电子株式会社 | 存储装置、电子***以及操作电子装置的方法 |
CN110678849A (zh) * | 2017-12-12 | 2020-01-10 | 谷歌有限责任公司 | 不稳定移动设备的自动恢复 |
CN110678849B (zh) * | 2017-12-12 | 2023-07-14 | 谷歌有限责任公司 | 用于自动恢复的方法和计算设备 |
CN111666177A (zh) * | 2020-05-07 | 2020-09-15 | 中国石油天然气股份有限公司 | 一种气液两相流量计仪表数据存储方法 |
CN111666177B (zh) * | 2020-05-07 | 2023-06-30 | 中国石油天然气股份有限公司 | 一种气液两相流量计仪表数据存储方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI515735B (zh) | 資料抹除方法、記憶體控制電路單元及記憶體儲存裝置 | |
TWI423026B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
CN102207905A (zh) | ***恢复方法、存储媒体控制器及存储*** | |
CN102096561B (zh) | 分层数据存储处理方法、装置以及存储设备 | |
CN101625897B (zh) | 用于快闪存储器的数据写入方法、储存***与控制器 | |
CN102890655B (zh) | 存储器储存装置、其存储器控制器与有效数据识别方法 | |
CN103853566A (zh) | Bios更新***及方法 | |
CN104793891A (zh) | 数据写入方法、存储器控制电路单元与存储器存储装置 | |
US20110231621A1 (en) | System recovery method, and storage medium controller and storage system using the same | |
CN102446137B (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN102200946B (zh) | 资料存取方法、记忆体控制器与储存*** | |
CN103106148B (zh) | 区块管理方法、存储器控制器与存储器存储装置 | |
CN102736861B (zh) | 存储器配置方法、存储器控制器及存储器储存装置 | |
CN103389941B (zh) | 存储器格式化方法、存储器控制器及存储器存储装置 | |
CN102800357A (zh) | 程序码载入与存取方法、存储器控制器与存储器储存装置 | |
CN102053920B (zh) | 数据写入方法及闪存控制器与闪存存储*** | |
CN103578566A (zh) | 存储器存储装置及其修复方法 | |
CN102109965B (zh) | 闪存储存***、闪存控制器、电脑***及模拟方法 | |
CN103377132B (zh) | 管理存储器空间的方法、存储器控制器与存储器储存装置 | |
CN102467459B (zh) | 数据写入方法、存储器控制器与存储器储存装置 | |
CN102043724B (zh) | 用于闪存的区块管理方法、控制器与存储*** | |
CN102110056B (zh) | 闪存管理方法、闪存控制器与闪存存储*** | |
CN112988069B (zh) | 存储器管理方法、存储器存储装置及存储器控制器 | |
CN102087632B (zh) | 用于闪存的数据储存方法及其控制器与储存*** | |
CN102467460B (zh) | 资料管理方法、存储器控制器与存储器储存装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20111005 |