进行存储控制的方法和设备的制造方法

文档序号:8487618阅读:173来源:国知局
进行存储控制的方法和设备的制造方法
【专利说明】

技术领域
[0001]本发明涉及计算机技术,更具体地说,涉及进行存储控制的方法和设备。

【背景技术】
[0002]在传统的硬盘驱动器(HDD)中,数据的逻辑地址和物理地址具有——对应的关系。这里,逻辑地址指的是操作系统所处理的地址,而物理地址指的是存储介质上具体的位置。物理地址对操作系统是透明的,由HDD的控制器负责逻辑地址与物理地址的对应。在使用HDD的场合,每次操作系统向同一个逻辑地址写入数据,该数据会被写入到存储介质上的同一个位置。对于数据删除(delet1n)而言,一般情况下操作系统会将待删除数据所对应的逻辑地址标注为空闲,从而使得该逻辑地址可以被后续写入操作所使用。在实际发生所述后续写入操作之前,所述待删除数据并没有从存储介质上擦除(erasure),从而可以通过技术手段读取并恢复。
[0003]对于某些对安全性要求高的敏感数据,操作系统的删除操作必须是所谓的“安全删除”,即该数据被彻底地从存储介质上擦除。操作系统可以在将所述逻辑地址标注为空闲后立即执行后续写入操作,例如向该逻辑地址写入伪数据(pseudo data)。由于逻辑地址和物理地址是一一对应的,因此在存储所述敏感数据的物理地址上,所述待删除数据被所述伪数据替代,从而无法被读取并恢复。
[0004]与传统的硬盘驱动器(HDD)相比,基于闪存技术的固态硬盘(SSD)具有速度快的优势。与HDD不同的是,在SSD中,逻辑地址和物理地址并不是一一对应的。如果向同一个逻辑地址先后两次写入数据,那么这两次写入的数据会被存储在不同的物理地址上。这使得在使用SSD的场合,操作系统并不能通过向存储敏感数据的逻辑地址写入伪数据而将对应的敏感数据从存储介质上擦除。
[0005]具体而言,在SSD中,在对一个逻辑地址进行第一次写入操作以写入第一数据时,SSD向该逻辑地址分配第一物理地址以存储所述第一数据,从而使得所述逻辑地址对应于第一物理地址。在对该逻辑地址进行第二次写入操作以写入第二数据时,SSD向该逻辑地址分配第二物理地址以存储所述第二数据,而并不是先将第一数据从第一物理地址擦除然后将第二数据写入到第一物理地址。这样,与所述逻辑地址对应的物理地址从第一物理地址变为第二物理地址。这样做的原因是,在SSD中,对存储介质的擦除操作必须以存储介质块(block)为单位进行。所述存储介质块的大小一般为2~20比特。另一方面,操作系统对数据的操作往往是以2~9 (512)比特为单位的。假设操作系统向同一逻辑地址先后两次写入512字节的数据,那么所涉及的数据仅仅是一个存储介质块中的很小的一部分数据。显然,为了要修改这一小部分数据而将整个存储介质块的数据擦除,这是不切实际的。
[0006]由此可见,在使用SSD的场合,即使操作系统在删除某个逻辑地址所存储的敏感数据后,立刻向该逻辑地址写入伪数据,也无法将所述敏感数据从SSD上擦除。伪数据会被存储在与敏感数据不同的物理地址,而敏感数据仍然存储在原来的物理地址。结果是,可以通过技术手段从存储敏感数据的物理地址读取并恢复所述敏感数据。
[0007]因此,需要一种新的解决方案类增强SSD的安全性。


【发明内容】

[0008]本发明实施例提供了进行存储控制的方法和装置。
[0009]根据本发明实施例的进行存储控制的方法包括:响应于收到针对敏感数据的数据删除指令,将敏感数据所在的存储介质页标记为无效,并且将所述存储介质页所在的存储介质块放入垃圾回收队列,其中所述存储介质块是SSD中进行存储介质擦除操作的最小单位;确定与所述敏感数据对应的安全删除时间;响应于距离下次垃圾回收操作的剩余时间大于所述敏感数据所对应的安全删除时间,设置所述剩余时间的值为所述安全删除时间;和根据所述剩余时间触发垃圾回收操作。
[0010]根据本发明实施例的进行存储控制的装置包括:存储介质块处理模块,配置为响应于收到针对敏感数据的数据删除指令,将敏感数据所在的存储介质页标记为无效,并且将所述存储介质页所在的存储介质块放入垃圾回收队列,其中所述存储介质块是SSD中进行存储介质擦除操作的最小单位;安全删除时间确定模块,配置为确定与所述敏感数据对应的安全删除时间;剩余时间设置模块,配置为响应于距离下次垃圾回收操作的剩余时间大于所述敏感数据所对应的安全删除时间,设置所述剩余时间的值为所述安全删除时间;和触发模块,配置为根据所述剩余时间触发垃圾回收操作。
[0011]采用根据本发明实施例的方案,可以在可控的时间内,将被删除的敏感数据从SSD的存储介质上擦除,从而提高SSD的安全性。

【附图说明】
[0012]通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
[0013]图1是适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图;
[0014]图2示出根据本发明实施例的进行存储控制的方法的流程图;
[0015]图3示出根据本发明实施例的进行存储控制的方法的流程图;以及
[0016]图4示出根据本发明实施例的进行存储控制的装置的方框图。

【具体实施方式】
[0017]下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
[0018]所属技术领域的技术人员知道,本发明可以实现为系统、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:可以是完全的硬件、也可以是完全的软件(包括固件、驻留软件、微代码等),还可以是硬件和软件结合的形式,本文一般称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
[0019]可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是一但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPR0M或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0020]计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0021]计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括一但不限于一无线、电线、光缆、RF等等,或者上述的任意合适的组合。
[0022]可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言-诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言-诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络一包括局域网(LAN)或广域网(WAN)-连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0023]下面将参照本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,这些计算机程序指令通过计算机或其它可编程数据处理装置执行,产生了
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1