CN103117075A - 磁盘块检查方法及装置 - Google Patents

磁盘块检查方法及装置 Download PDF

Info

Publication number
CN103117075A
CN103117075A CN2012105784054A CN201210578405A CN103117075A CN 103117075 A CN103117075 A CN 103117075A CN 2012105784054 A CN2012105784054 A CN 2012105784054A CN 201210578405 A CN201210578405 A CN 201210578405A CN 103117075 A CN103117075 A CN 103117075A
Authority
CN
China
Prior art keywords
disk block
examined
bloom filter
filter array
array
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.)
Granted
Application number
CN2012105784054A
Other languages
English (en)
Other versions
CN103117075B (zh
Inventor
张森
黄岩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Gaohang Intellectual Property Operation Co ltd
Haining hi tech Zone Science and Innovation Center Co.,Ltd.
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201210578405.4A priority Critical patent/CN103117075B/zh
Publication of CN103117075A publication Critical patent/CN103117075A/zh
Application granted granted Critical
Publication of CN103117075B publication Critical patent/CN103117075B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种磁盘块检查方法及装置,包括:利用哈希函数将第一磁盘块集合的第一子磁盘块集合的每个块号映射到Bloom Filter数组中,将所述每个块号映射到的位置的值由初始值置为第一特征值,所述Bloom Filter数组中所有位置的初始值为第二特征值;利用所述Hash函数将被检查磁盘块的块号映射到所述Bloom Filter数组中;根据所述被检查磁盘块的块号映射到的位置的值,判断所述被检查磁盘块是否属于所述Bloom Filter数组;根据所述被检查磁盘块是否属于所述Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。由此实现了只在建立Bloom Filter数组或无法判断时才进行读盘操作,从而加快FSCK速度。

Description

磁盘块检查方法及装置
技术领域
本发明涉及存储技术领域,尤其涉及一种磁盘块检查方法及装置。
背景技术
计算机中的文件系统一般会处于两种状态之一:清洁的(clean)或者脏的(dirty)。如果要在磁盘分区上挂载一个文件系统,这个文件系统必须是clean的,也就是说是结构完整的,元数据之间、元数据和数据之间是一致的。但有时文件系统的一致性可能被破坏,如系统掉电时,内存中的数据会丢失,或者由于磁盘发生故障,如磁盘坏道等,都会破坏文件系统数据的一致性。为了检查和维护不一致的文件系统,文件系统会提供磁盘块检查(FilesystemCheck,FSCK)工具来方便用户检查和修复文件系统。
FSCK有一个重要步骤:遍历文件系统中所有文件对应的数据块是否空闲,即文件使用的数据块是否是已被成功分配的。图1为现有的文件系统FSCK示意图。如图1所示,一个文件可能由多个数据块构成,在检查时必须对每个数据块找到它在磁盘上的位置,并查询该磁盘块是否被分配出来了。当文件较大时,该检查步骤是非常耗时的,因为它需要频繁的读磁盘,会大大降低FSCK的效率。特别是对于重删文件系统,由于其一个文件常常对应着大量数据块(多达数亿),该步骤会消耗非常长的时间。
发明内容
本发明实施例提供了一种磁盘块检查方法及装置,可以减少磁盘访问次数,加快FSCK速度。
第一方面,本发明实施例提供了一种磁盘块检查方法,包括:
利用哈希Hash函数将第一磁盘块集合的第一子磁盘块集合的每个块号映射到布隆滤波器Bloom Filter数组中,将所述每个块号映射到的位置的值由初始值置为第一特征值,所述Bloom Filter数组中所有位置的初始值为第二特征值,所述第一磁盘块集合包括两个子磁盘块集合,所述两个子磁盘块集合为空闲磁盘块集合和非空闲磁盘块集合;
利用所述Hash函数将被检查磁盘块的块号映射到所述Bloom Filter数组中;
根据所述被检查磁盘块的块号映射到的位置的值,判断所述被检查磁盘块是否属于所述Bloom Filter数组;
根据所述被检查磁盘块是否属于所述Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
结合第一方面,在第一种可能的实现方式中,所述Hash函数个数为一个以上,并且各个Hash函数之间没有相关性。
结合第一方面,在第二种可能的实现方式中,当所述第一磁盘块集合中的空闲的磁盘块数量大于非空闲的磁盘块数量且两者之差大于第一数量阈值时,则所述第一子磁盘块集合为非空闲磁盘块集合,相应地,所述Bloom Filter数组为非空闲磁盘块的Bloom Filter数组;
当所述第一磁盘块集合中的非空闲的磁盘块数量大于空闲的磁盘块数量且两者之差大于第一数量阈值时,则所述第一子磁盘块集合为非空闲磁盘块集合,相应地,所述Bloom Filter数组为空闲磁盘块的Bloom Filter数组。
结合第二种可能的实现方式,在第三种可能的实现方式中,当非空闲的磁盘块数量与空闲的磁盘块数量之差小于第一数量阈值时,所述方法还包括:
利用哈希Hash函数将第一磁盘块集合的第二子磁盘块集合的每个块号映射到布隆滤波器Bloom Filter数组中,将所述每个块号映射到的位置的值由初始值置为第一特征值;相应地,所述Bloom Filter数组为非空闲磁盘块的Bloom Filter数组和空闲磁盘块的Bloom Filter数组。
结合第一方面或第二种可能的实现方式,在第四种可能的实现方式中,当所述Bloom Filter数组为非空闲磁盘块的Bloom Filter数组时,所述根据所述被检查磁盘块的块号映射到的位置的值,判断所述被检查磁盘块是否属于所述Bloom Filter数组,根据所述被检查磁盘块是否属于所述至少一个Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块,包括:
判断所述被检查磁盘块的块号映射到所述非空闲磁盘块的Bloom Filter数组的位置的值,如果所述映射到的位置的值至少有一个不是所述第一特征值,判断所述被检查磁盘块不属于所述非空闲磁盘块的Bloom Filter数组;
确定所述被检查磁盘块是空闲磁盘块。
结合第四种可能的实现方式,在第五种可能的实现方式中,如果所述映射到的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
结合第一方面或第二种可能的实现方式,在第六种可能的实现方式中,当所述Bloom Filter数组为非空闲磁盘块的Bloom Filter数组时,所述根据所述被检查磁盘块的块号映射到的位置的值,判断所述被检查磁盘块是否属于所述Bloom Filter数组,根据所述被检查磁盘块是否属于所述至少一个Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块,包括:
判断所述被检查磁盘块的块号映射到所述空闲磁盘块的Bloom Filter数组的位置的值,如果所述映射到的位置的值的至少有一个不是所述第一特征值,判断所述被检查磁盘块不属于所述空闲磁盘块的Bloom Filter数组;
确定所述被检查磁盘块是非空闲磁盘块。
结合第六种可能的实现方式,在第七种可能的实现方式中,如果所述映射到的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
结合第三种可能的实现方式,在第八种可能的实现方式中,当所述BloomFilter数组为非空闲磁盘块的Bloom Filter数组和空闲磁盘块的BloomFilter数组时,所述根据所述被检查磁盘块的块号映射到的位置的值,判断所述被检查磁盘块是否属于所述Bloom Filter数组,根据所述被检查磁盘块是否属于所述至少一个Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块,包括:
判断所述被检查磁盘块的块号映射到第一数组的位置的值,如果所述映射到的位置的值全部是所述第一特征值;
进一步判断所述被检查磁盘块的块号映射到相应的第二数组的位置的值,如果所述映射到的位置的值至少有一个不是所述第一特征值,确定所述被检查磁盘块属于所述第一数组;
其中,所述第一数组为非空闲磁盘块的Bloom Filter数组,所述第二数组为空闲磁盘块的Bloom Filter数组,或者所述第一数组为空闲磁盘块的Bloom Filter数组,所述第二数组为非空闲磁盘块的Bloom Filter数组。
结合第八种可能的实现方式,在第九种可能的实现方式中,如果所述被检查磁盘块的块号映射到所述第一数组的位置的值,和映射到所述第二数组的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
第二方面,本发明实施例提供了一种磁盘块检查装置,包括:
第一映射单元,用于利用哈希Hash函数将第一磁盘块集合的第一子磁盘块集合的每个块号映射到布隆滤波器Bloom Filter数组中,将所述每个块号映射到的位置的值由初始值置为第一特征值,所述Bloom Filter数组中所有位置的初始值为第二特征值,所述第一磁盘块集合包括两个子磁盘块集合,所述两个子磁盘块集合为空闲磁盘块集合或非空闲磁盘块集合,将所述BloomFilter数组发送至第二映射单元;
第二映射单元,用于接收所述第一映射单元发送的所述Bloom Filter数组,利用所述Hash函数将被检查磁盘块的块号映射到所述Bloom Filter数组中;
确定单元,用于根据所述被检查磁盘块的块号映射到的位置的值,判断所述被检查磁盘块是否属于所述Bloom Filter数组,以及根据被检查磁盘块是否属于所述Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
结合第一方面,在第一种可能的实现方式中,所述第一映射单元中的所述Hash函数个数为一个以上,并且各个Hash函数之间没有相关性。
结合第一方面,在第二种可能的实现方式中,所述第一映射单元用于,
当所述第一磁盘块集合中的空闲的磁盘块数量大于非空闲的磁盘块数量且两者之差大于第一数量阈值时,则所述第一子磁盘块集合为非空闲磁盘块集合,相应地,所述Bloom Filter数组为非空闲磁盘块的Bloom Filter数组;
当所述第一磁盘块集合中的非空闲的磁盘块数量大于空闲的磁盘块数量且两者之差大于第一数量阈值时,则所述第一子磁盘块集合为非空闲磁盘块集合,相应地,所述Bloom Filter数组为空闲磁盘块的Bloom Filter数组。
结合第二方面,在第三种可能的实现方式中,所述第一映射单元还用于,
当非空闲的磁盘块数量与空闲的磁盘块数量之差小于第一数量阈值时,利用哈希Ha s h函数将第一磁盘块集合的第二子磁盘块集合的每个块号映射到布隆滤波器Bloom Filter数组中,将所述每个块号映射到的位置的值由初始值置为第一特征值,相应地,所述Bloom Filter数组为非空闲磁盘块的BloomFilter数组和空闲磁盘块的Bloom Filter数组。
结合第一方面或第二种可能的实现方式,在第四种可能的实现方式中,
所述确定单元具体用于,判断所述被检查磁盘块的块号映射到所述非空闲磁盘块的Bloom Filter数组的位置的值,如果所述映射到的位置的值至少有一个不是所述第一特征值,判断所述被检查磁盘块不属于所述非空闲磁盘块的Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块。
结合第四种可能的实现方式,在第五种可能的实现方式中,所述确定单元还用于,
如果所述映射到的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
结合第一方面或第二种可能的实现方式,在第六种可能的实现方式中,
所述确定单元具体用于,判断所述被检查磁盘块的块号映射到所述空闲磁盘块的Bloom Filter数组的位置的值,如果所述映射到的位置的值的至少有一个不是所述第一特征值,判断所述被检查磁盘块不属于所述空闲磁盘块的Bloom Filter数组确定所述被检查磁盘块是非空闲磁盘块。
结合第六种可能的实现方式,在第七种可能的实现方式中,所述确定单元还用于,
如果所述映射到的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
结合第一方面或第三种可能的实现方式,在第八种可能的实现方式中,
所述确定单元具体用于,判断所述被检查磁盘块的块号映射到第一数组的位置的值,如果所述映射到的位置的值全部是所述第一特征值;
进一步判断所述被检查磁盘块的块号映射到相应的第二数组的位置的值,如果所述映射到的位置的值至少有一个不是所述第一特征值,确定所述被检查磁盘块属于所述第一数组,以及确定所述被检查磁盘块的状态与所述第一数组对应的磁盘块的状态相同;
其中,所述第一数组为非空闲磁盘块的Bloom Filter数组,所述第二数组为空闲磁盘块的Bloom Filter数组,或者所述第一数组为空闲磁盘块的Bloom Filter数组,所述第二数组为非空闲磁盘块的Bloom Filter数组。
结合第八种可能的实现方式,在第九种可能的实现方式中,所述确定单元还用于,
如果所述被检查磁盘块的块号映射到所述第一数组的位置的值,和映射到所述第二数组的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
本发明实施例中,通过利用哈希Hash函数将第一磁盘块集合的第一子磁盘块集合的每个块号映射到布隆滤波器Bloom Filter数组中,将所述每个块号映射到的位置的值由初始值置为第一特征值,所述Bloom Filter数组中所有位置的初始值为第二特征值,所述第一磁盘块集合包括两个子磁盘块集合,所述两个子磁盘块集合为空闲磁盘块集合和非空闲磁盘块集合;利用所述Hash函数将被检查磁盘块的块号映射到所述Bloom Filter数组中;根据所述被检查磁盘块的块号映射到的位置的值,判断所述被检查磁盘块是否属于所述Bloom Filter数组;根据所述被检查磁盘块是否属于所述Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。由此,可以看出,本发明实施例提供的方法只在建立Bloom Filter数组或无法判断时才进行读盘操作,并且每次读盘可以读出多个磁盘块的块号,并且不需要保存磁盘块检查信息,仅需要保存一个或两个数组,能大大减少内存消耗。再者,由于Bloom Filter数组是存储在内存中的,而对内存中的数据进行查询所需要的时间是基本恒定的,因此,对性能评估和时间统计非常方便。同时,也可以采用多个线程同时并行检查多个磁盘块,从而加快FSCK速度。现有技术都是直接对磁盘块进行操作,无法实现并行化。
附图说明
图1为现有的文件系统FSCK示意图;
图2为Bloom Filter原理示意图;
图3为本发明实施例一提供的Bloom Filter数组建立过程示意图;
图4为本发明实施例一提供的磁盘块检查方法流程图;
图5为本发明实施例二的磁盘块检查装置示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明具体实施例作进一步的详细描述。
本发明实施例中,首先创建用于检查磁盘块的Bloom Filter数组(本实施例中简称为Bloom Filter数组),即通过利用Hash函数将第一磁盘块的块号映射到Bloom Filter数组中的第一位置,将所述第一位置的值置为第一特征值,所述Bloom Filter数组中所有位置的初值为第二特征值;利用所述Hash函数将被检查磁盘块的块号映射到所述Bloom Filter数组中的第二位置;判断所述第二位置的值是否为所述第一特征值;根据判断结果确定所述被检查磁盘块是否空闲。由此,可以看出,本发明实施例提供的方法及装置只在建立Bloom Filter数组或无法判断时才进行读盘操作,并且每次读盘可以读出多个磁盘块的块号,并且不需要保存磁盘块检查信息,仅需要保存一个或两个数组,能大大减少内存消耗。再者,由于Bloom Filter数组是存储在内存中的,而对内存中的数据进行查询所需要的时间是基本恒定的,因此,对性能评估和时间统计非常方便。同时,也可以采用多个线程同时并行检查多个磁盘块,从而加快FSCK速度。现有技术都是直接对磁盘块进行操作,无法实现并行化。
需要说明的是,本发明实施例提供的方法和装置适用于文件系统FSCK的磁盘检查,也适用于FSCK的索引节点(inode)检查。
为使本发明实施例提供的方法和装置的原理易于理解,下面首先对其中应用到的布隆滤波器Bloom Filter的原理做简要介绍。
Bloom Filter是一种空间效率很高的随机数据结构,它利用位数组很简洁地表示一个集合,并能判断一个元素是否属于这个集合。初始状态时,BloomFilter是一个包含m位的位数组,每一位都置为第二特征值(为叙述方便,本发明实施例中的第二特征值以0为例)。图2为Bloom Filter原理示意图。如图2所示,图2中的图(a)所示的为将位数组中各个位的值全部置为0。
对于已知的集合S={x1,…xj,…,xn},Bloom Filter使用k个没有相关性的Hash函数可以将集合中的每个元素映射到{1,…,m}的范围中(m的选取属于现有技术,在此不赘述)。即对任意一个元素xj,将其带入第i个Hash函数获得一个值hi(xj),则将m位数组中的第hi(xj)个位置的值置为1(1≤i≤k)(为叙述方便,这里取k=3)。如果一个位置多次被置为1,那么只有第一次会起作用,后面几次将没有任何效果。图2中的图(b)所示的为,将集合中的元素x1通过3个Hash函数映射到位数组中,即将x1分别带入3个Hash函数中所得到的值为2、5和9,因此,将位数组中的2位、第5位和第9位分别置为1,同样,通过3个Hash函数可以将x2映射到位数组中的第5位、7位和11位,将该3个位的值置为1。采用同样的方式,可以将集合中的所有元素映射到位数组中。这里假设集合中只有两个元素x1和x2,则图2中的图(b)所示的为映射完成的位数组。
图2中的图(c)所示的为,判断一个数值是否属于集合S的示意图,对于有y1,可以采用同样的方法,通过3个Hash函数将y1映射到位数组中,这里假设映射到了位数组中的第2位、第4和第7位,如果位数组中三个位的值都为1,那么我们就认为y1是集合中的元素,否则就认为y1不是集合中的元素。从图(c)中可以看出,位数组中三个位的值不全是1,因此,可以断定y1不是集合中的元素,而y2可能属于这个集合,但并不能确定y2是否真的属于该集合。
如果某个成员存在于集合中,那么Bloom Filter一定会返回真(即存在)。
如果Bloom Filter返回假(不存在),那么某成员一定不存在于集合中。
如果某个成员实际上不存在于集合中,Bloom Filter可能会返回真(即存在),这种情况被称为误判(false positive)。
需要说明的是,数组的大小、Hash函数的个数以及Hash的选取如何确定,属于现有技术范畴,在此不复赘述。
需要说明的是,Bloom Filter理论是基于位数组的,即用一个二进制位来表示数组中的值,但是本发明实施例中的Bloom Fi lter数组可以是位数组也可以是普通数组。如果采用位数组,则可以减小占用的内存空间。
本发明实施例根据上述Bloom Filter理论模型,创建用于检查磁盘块的Bloom Filter数组。
具体地,根据磁盘块的块号建立Bloom Filter数组,本发明实施例中,利用磁盘块的块号组成集合,并将集合中的每个元素通过Hash函数映射到Bloom Filter数组中,并将数组中相应位置的值置为第一特征值。
为了减小Bloom Filter数组的大小,可以根据磁盘块的数量和磁盘块的类型,确定建立Bloom Filter数组的数量,例如创建一个Bloom Filter数组或两个Bloom Filter数组,每建立一个数组,都需要一组Hash函数。
具体地,由于磁盘空间有两种状态:空闲和非空闲,即磁盘块集合包括两个子磁盘块集合,空闲磁盘块集合和非空闲磁盘块集合,因此,可以针对其中一个子磁盘块集合建立一个Bloom Filter数组,也可以对应的建立两个Bloom Filter数组,例如,当空闲的磁盘块数量与非空闲的磁盘块数量之差小于第一数量阈值时,说明空闲磁盘块数量与非空闲磁盘块数量相差不大,优选地,可以建立两个数组。此时,则所述磁盘块的块号包括:空闲的磁盘块的块号和非空闲的磁盘块的块号。所述Bloom Filter数组包括空闲BloomFilter数组和非空闲Bloom Filter数组。
图3为本发明实施例一提供的Bloom Filter数组建立过程示意图。如图3所示,将空闲磁盘块集合的每个块号通过第一组Hash函数(Hash函数1和Hash函数2)映射到空闲数组中,将映射到的位置的值置为第一特征值(为叙述方便,本发明实施例中的第一特征值取1,也可以取其他值),没有映射到的位置的值置为第二特征值(为叙述方便,本发明实施例中的第二特征值取0,也可以取其它值,只要跟第一特征值区分开即可),将非空闲磁盘块集合的每个块号通过第二组Hash函数(Hash函数1’和Hash函数2’)映射到非空闲数组中,将映射到的位置的值置为第一特征值。
需要说明的是,当建立了一个以上的数组时,每个数组中的第一特征值(或/和第二特征值)可以相同也可以不同,为叙述方便,本发明实施例中均假定不同数组中的第一特征值(或/和第二特征值)相同。
当空闲的磁盘块数量大于非空闲的磁盘块数量且与非空闲的磁盘块数量之差大于第一数量阈值时,说明空闲磁盘块的数量较多,因此可以针对非空闲磁盘集合建立数组,即所述磁盘块集合包括:非空闲的磁盘块的块号。所述Bloom Filter数组包括非空闲数组。具体过程与上面相同,在此不复赘述。
当非空闲的磁盘块数量大于非空闲的磁盘块数量且与空闲的磁盘块数量之差大于第一数量阈值时,说明非空闲磁盘块的数量较多,因此可以针对空闲磁盘块集合建立数组,则所述磁盘块集合包括:空闲的磁盘块的块号。所述Bloom Filter数组包括空闲数组。具体过程与上面相同,在此不复赘述。
其中,每组Hash函数个数为一个以上,一般选择2-4个,为叙述方便,图3中每组Hash函数以两个为例,但并不限于两个,并且各个Hash函数之间没有相关性。Bloom Filter数组大小可以为构建Bloom Filter数组所用的磁盘块数量的一半,也可以是其他值,Hash函数个数、哈希函数的选取以及Bloom Filter数组的大小的确定属于现有技术范畴,在此不复赘述。
需要说明的是,本发明实施例中的第一数量阈值可以根据实际需要设定。
需要说明的是,按照上述方法构建Bloom Filter数组时,可以先从空间管理模块读取空间分配位图(空间管理模块是位于磁盘上的一个模块,用于管理磁盘分配,并且可以通过该模块查询磁盘块的分配情况),遍历其中的每一个位,统计出所有空闲或/和非空闲的磁盘块的块号,以此建立相应的由空闲磁盘块的块号组成的集合或/和非由空闲磁盘块的块号组成的集合,然后再根据相应的集合建立相应的Bloom Filter数组。也可以事先不建立集合,而是每读一次位图(每读一次位图可以读出4K的位图,4K的位图能表示32768个磁盘块),根据位图所表示的磁盘块的分配情况,将相应磁盘块的块号映射到Bloom Filter数组中。从中可以看出,建立Bloom Filter数组时,由于一次读盘可以读出多个磁盘块的位图,相比于现有的每检查一个磁盘块都需要读一次磁盘,该方法大大减少了磁盘读取操作。
下述实施例描述的为利用Bloom Filter数组检查磁盘块是否空闲的方法流程。图4为本发明实施例一提供的磁盘块检查方法流程图。如图4所示,本发明实施例提供的方法包括:
S401,利用哈希Hash函数将第一磁盘块集合的第一子磁盘块集合的每个块号映射到布隆滤波器Bloom Filter数组中,将所述每个块号映射到的位置的值由初始值置为第一特征值,所述Bloom Filter数组中所有位置的初始值为第二特征值,所述第一磁盘块集合包括两个子磁盘块集合,所述两个子磁盘块集合为空闲磁盘块集合和非空闲磁盘块集合。
具体地,当所述第一磁盘块集合中的空闲的磁盘块数量大于非空闲的磁盘块数量且两者之差大于第一数量阈值时,则所述第一子磁盘块集合为非空闲磁盘块集合,相应地,所述Bloom Filter数组为非空闲磁盘块的BloomFilter数组;
当所述第一磁盘块集合中的非空闲的磁盘块数量大于空闲的磁盘块数量且两者之差大于第一数量阈值时,则所述第一子磁盘块集合为非空闲磁盘块集合,相应地,所述Bloom Filter数组为空闲磁盘块的Bloom Filter数组。
当非空闲的磁盘块数量与空闲的磁盘块数量之差小于第一数量阈值时,利用哈希Hash函数将第一磁盘块集合的第二子磁盘块集合的每个块号映射到布隆滤波器Bloom Filter数组中,将所述每个块号映射到的位置的值由初始值置为第一特征值;
相应地,所述Bloom Filter数组为非空闲磁盘块的Bloom Filter数组和空闲磁盘块的Bloom Filter数组。
该步骤的具体过程在上面已经详细阐述过,因此,这里不复赘述。
S402,利用所述Hash函数将被检查磁盘块的块号映射到所述BloomFilter数组中。
具体地,建立好Bloom Filter数组后,就可以利用该数组检查某个磁盘块是否空闲,即将被检查磁盘块的块号按照与建立Bloom Filter数组同样的Hash函数,将其映射到数组中,由于有多个Hash函数,因此,可能会将该被检查磁盘块的块的块号映射到Bloom Filter数组中的多个位置。
S403,根据所述被检查磁盘块的块号映射到的位置的值,判断所述被检查磁盘块是否属于所述Bloom Filter数组。
具体地,由于在S401中建立Bloom Filter数组时,将磁盘块的块号映射到Bloom Filter数组中时,将相应位置的值置为了第一特征值,因此,这里需要判断将被检查磁盘块的块的块号映射到Bloom Filter数组中的多个位置后,该多个位置的值是否为第一特征值,以此来判断被检查磁盘块是否属于所述Bloom Filter数组,由于Bloom Filter数组有三种情况,因此,这里对应三种判断方法,具体过程将在下面结合S404一起阐述。
S404,根据所述被检查磁盘块是否属于所述Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
具体地,由于S401中建立Bloom Filter数组时有三种情况,因此,下面分情况进行阐述:
当所述Bloom Filter数组为非空闲磁盘块的Bloom Filter数组时,判断所述被检查磁盘块的块号映射到所述非空闲磁盘块的Bloom Filter数组的位置的值,如果所述映射到的位置的值至少有一个不是所述第一特征值,判断所述被检查磁盘块不属于所述非空闲磁盘块的Bloom Filter数组;确定所述被检查磁盘块是空闲磁盘块。如果所述映射到的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
当所述Bloom Filter数组为非空闲磁盘块的Bloom Filter数组时,判断所述被检查磁盘块的块号映射到所述空闲磁盘块的Bloom Filter数组的位置的值,如果所述映射到的位置的值的至少有一个不是所述第一特征值,判断所述被检查磁盘块不属于所述空闲磁盘块的Bloom Filter数组;确定所述被检查磁盘块是非空闲磁盘块。如果所述映射到的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
当所述Bloom Filter数组为非空闲磁盘块的Bloom Filter数组和空闲磁盘块的Bloom Filter数组时,判断所述被检查磁盘块的块号映射到第一数组的位置的值,如果所述映射到的位置的值全部是所述第一特征值;
进一步判断所述被检查磁盘块的块号映射到相应的第二数组的位置的值,如果所述映射到的位置的值至少有一个不是所述第一特征值,确定所述被检查磁盘块属于所述第一数组;其中,所述第一数组为非空闲磁盘块的Bloom Filter数组,所述第二数组为空闲磁盘块的Bloom Filter数组,或者所述第一数组为空闲磁盘块的Bloom Filter数组,所述第二数组为非空闲磁盘块的Bloom Filter数组。如果所述被检查磁盘块的块号映射到所述第一数组的位置的值,和映射到所述第二数组的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
本发明实施例中,通过利用哈希Hash函数将第一磁盘块集合的第一子磁盘块集合的每个块号映射到布隆滤波器Bloom Filter数组中,将所述每个块号映射到的位置的值由初始值置为第一特征值,所述Bloom Filter数组中所有位置的初始值为第二特征值,所述第一磁盘块集合包括两个子磁盘块集合,所述两个磁盘块集合为空闲磁盘块集合和非空闲磁盘块集合;利用所述Hash函数将被检查磁盘块的块号映射到所述Bloom Filter数组中;根据所述被检查磁盘块的块号映射到的位置的值,判断所述被检查磁盘块是否属于所述Bloom Filter数组;根据所述被检查磁盘块是否属于所述Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。由此,可以看出,本发明实施例提供的方法只在建立Bloom Filter数组或无法判断时才进行读盘操作,并且每次读盘可以读出多个磁盘块的块号,并且不需要保存磁盘块检查信息,仅需要保存一个或两个数组,能大大减少内存消耗。再者,由于Bloom Filter数组是存储在内存中的,而对内存中的数据进行查询所需要的时间是基本恒定的,因此,对性能评估和时间统计非常方便。同时,也可以采用多个线程同时并行检查多个磁盘块,从而加快FSCK速度。现有技术都是直接对磁盘块进行操作,无法实现并行化。
相应地,本发明实施例提供了一种磁盘块检查装置。图5为本发明实施例二提供的磁盘块检查装置示意图。如图5所示,本发明实施例提供的装置包括:第一映射单元501、第二映射单元502和确定单元503。
第一映射单元501,用于利用哈希Hash函数将第一磁盘块集合的第一子磁盘块集合的每个块号映射到布隆滤波器Bloom Filter数组中,将所述每个块号映射到的位置的值由初始值置为第一特征值,所述Bloom Filter数组中所有位置的初始值为第二特征值,所述第一磁盘块集合包括两个子磁盘块集合,所述两个子磁盘块集合为空闲磁盘块集合和非空闲磁盘块集合,将所述Bloom Filter数组发送至第二映射单元502。
第二映射单元502,用于接收所述第一映射单元501发送的所述BloomFilter数组,利用所述Hash函数将被检查磁盘块的块号映射到所述BloomFilter数组中。
确定单元503,用于根据所述被检查磁盘块的块号映射到的位置的值,判断所述被检查磁盘块是否属于所述Bloom Filter数组,以及根据被检查磁盘块是否属于所述Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
其中,所述装置中的所述Hash函数个数为一个以上,并且各个Hash函数之间没有相关性,Hash函数个数、选取哪些哈希函数以及Bloom Filter数组的大小的确定属于现有技术范畴,在此不复赘述。
具体地,所述第一映射单元501用于,
当所述第一磁盘块集合中的空闲的磁盘块数量大于非空闲的磁盘块数量且两者之差大于第一数量阈值时,则所述第一子磁盘块集合为非空闲磁盘块集合,相应地,所述Bloom Filter数组为非空闲磁盘块的Bloom Filter数组;
当所述第一磁盘块集合中的非空闲的磁盘块数量大于空闲的磁盘块数量且两者之差大于第一数量阈值时,则所述第一子磁盘块集合为非空闲磁盘块集合,相应地,所述Bloom Filter数组为空闲磁盘块的Bloom Filter数组。
所述第一映射单元501还用于,
当非空闲的磁盘块数量与空闲的磁盘块数量之差小于第一数量阈值时,利用哈希Hash函数将第一磁盘块集合的第二子磁盘块集合的每个块号映射到布隆滤波器Bloom Filter数组中,将所述每个块号映射到的位置的值由初始值置为第一特征值,相应地,所述Bloom Filter数组为非空闲磁盘块的BloomFilter数组和空闲磁盘块的Bloom Filter数组。
所述确定单元503具体用于,判断所述被检查磁盘块的块号映射到所述非空闲磁盘块的Bloom Filter数组的位置的值,如果所述映射到的位置的值至少有一个不是所述第一特征值,判断所述被检查磁盘块不属于所述非空闲磁盘块的Bloom Filter数组;确定所述被检查磁盘块是空闲磁盘块。如果所述映射到的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
所述确定单元503具体用于,判断所述被检查磁盘块的块号映射到所述空闲磁盘块的Bloom Filter数组的位置的值,如果所述映射到的位置的值的至少有一个不是所述第一特征值,判断所述被检查磁盘块不属于所述空闲磁盘块的Bloom Filter数组,确定所述被检查磁盘块是非空闲磁盘块。如果所述映射到的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
所述判断单元503具体用于,判断所述被检查磁盘块的块号映射到第一数组的位置的值,如果所述映射到的位置的值全部是所述第一特征值;
进一步判断所述被检查磁盘块的块号映射到相应的第二数组的位置的值,如果所述映射到的位置的值至少有一个不是所述第一特征值,确定所述被检查磁盘块属于所述第一数组,确定所述被检查磁盘块的状态与所述第一数组对应的磁盘块的状态相同。
其中,所述第一数组为非空闲磁盘块的Bloom Filter数组,所述第二数组为空闲磁盘块的Bloom Filter数组,或者所述第一数组为空闲磁盘块的Bloom Filter数组,所述第二数组为非空闲磁盘块的Bloom Filter数组。如果所述被检查磁盘块的块号映射到所述第一数组的位置的值,和映射到所述第二数组的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
需要说明的是,本发明实施例中的装置植入了实施例一中的方法,因此,各个单元的工作过程与实施例一中的方法相同,在此不复赘述。
本发明实施例中,第一映射单元通过利用哈希Hash函数将第一磁盘块集合的第一子磁盘块集合的每个块号映射到布隆滤波器Bloom Filter数组中,将所述每个块号映射到的位置的值由初始值置为第一特征值,所述BloomFilter数组中所有位置的初始值为第二特征值,所述第一磁盘块集合包括两个子磁盘块集合,所述两个子磁盘块集合为空闲磁盘块集合和非空闲磁盘块集合;第二映射单元利用所述Hash函数将被检查磁盘块的块号映射到所述Bloom Filter数组中;确定单元根据所述被检查磁盘块的块号映射到的位置的值,判断所述被检查磁盘块是否属于所述Bloom Filter数组;以及根据所述被检查磁盘块是否属于所述Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。由此,可以看出,本发明实施例提供的装置只在建立Bloom Filter数组或无法判断时才进行读盘操作,并且每次读盘可以读出多个磁盘块的块号,并且不需要保存磁盘块检查信息,仅需要保存一个或两个数组,能大大减少内存消耗。再者,由于Bloom Filter数组是存储在内存中的,而对内存中的数据进行查询所需要的时间是基本恒定的,因此,对性能评估和时间统计非常方便。同时,也可以采用多个线程同时并行检查多个磁盘块,从而加快FSCK速度。现有技术都是直接对磁盘块进行操作,无法实现并行化。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (20)

1.一种磁盘块检查方法,其特征在于,所述方法包括:
利用哈希Hash函数将第一磁盘块集合的第一子磁盘块集合的每个块号映射到布隆滤波器Bloom Filter数组中,将所述每个块号映射到的位置的值由初始值置为第一特征值,所述Bloom Filter数组中所有位置的初始值为第二特征值,所述第一磁盘块集合包括两个子磁盘块集合,所述两个子磁盘块集合为空闲磁盘块集合和非空闲磁盘块集合;
利用所述Hash函数将被检查磁盘块的块号映射到所述Bloom Filter数组中;
根据所述被检查磁盘块的块号映射到的位置的值,判断所述被检查磁盘块是否属于所述Bloom Filter数组;
根据所述被检查磁盘块是否属于所述Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
2.根据权利要求1所述的磁盘块检查方法,其特征在于,所述Hash函数个数为一个以上,并且各个Hash函数之间没有相关性。
3.根据权利要求1所述的磁盘块检查方法,其特征在于,
当所述第一磁盘块集合中的空闲的磁盘块数量大于非空闲的磁盘块数量且两者之差大于第一数量阈值时,则所述第一子磁盘块集合为非空闲磁盘块集合,相应地,所述Bloom Filter数组为非空闲磁盘块的Bloom Filter数组;
当所述第一磁盘块集合中的非空闲的磁盘块数量大于空闲的磁盘块数量且两者之差大于第一数量阈值时,则所述第一子磁盘块集合为非空闲磁盘块集合,相应地,所述Bloom Filter数组为空闲磁盘块的Bloom Filter数组。
4.根据权利要求1所述的磁盘块检查方法,其特征在于,当非空闲的磁盘块数量与空闲的磁盘块数量之差小于第一数量阈值时,所述方法还包括:
利用哈希Hash函数将第一磁盘块集合的第二子磁盘块集合的每个块号映射到布隆滤波器Bloom Filter数组中,将所述每个块号映射到的位置的值由初始值置为第一特征值;
相应地,所述Bloom Filter数组为非空闲磁盘块的Bloom Filter数组和空闲磁盘块的Bloom Filter数组。
5.根据权利要求1或3所述的磁盘块检查方法,其特征在于,当所述BloomFilter数组为非空闲磁盘块的Bloom Filter数组时,所述根据所述被检查磁盘块的块号映射到的位置的值,判断所述被检查磁盘块是否属于所述BloomFilter数组,根据所述被检查磁盘块是否属于所述至少一个Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块,包括:
判断所述被检查磁盘块的块号映射到所述非空闲磁盘块的Bloom Filter数组的位置的值,如果所述映射到的位置的值至少有一个不是所述第一特征值,判断所述被检查磁盘块不属于所述非空闲磁盘块的Bloom Filter数组;
确定所述被检查磁盘块是空闲磁盘块。
6.根据权利要求5所述的磁盘块检查方法,其特征在于,所述方法还包括:
如果所述映射到的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
7.根据权利要求1或3所述的磁盘块检查方法,其特征在于,当所述BloomFilter数组为非空闲磁盘块的Bl oom Filter数组时,所述根据所述被检查磁盘块的块号映射到的位置的值,判断所述被检查磁盘块是否属于所述BloomFilter数组,根据所述被检查磁盘块是否属于所述至少一个Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块,包括:
判断所述被检查磁盘块的块号映射到所述空闲磁盘块的Bloom Filter数组的位置的值,如果所述映射到的位置的值的至少有一个不是所述第一特征值,判断所述被检查磁盘块不属于所述空闲磁盘块的Bloom Filter数组;
确定所述被检查磁盘块是非空闲磁盘块。
8.根据权利要求7所述的磁盘块检查方法,其特征在于,所述方法还包括:
如果所述映射到的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
9.根据权利要求4所述的磁盘块检查方法,其特征在于,当所述BloomFilter数组为非空闲磁盘块的Bloom Filter数组和空闲磁盘块的BloomFilter数组时,所述根据所述被检查磁盘块的块号映射到的位置的值,判断所述被检查磁盘块是否属于所述Bloom Filter数组,根据所述被检查磁盘块是否属于所述至少一个Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块,包括:
判断所述被检查磁盘块的块号映射到第一数组的位置的值,如果所述映射到的位置的值全部是所述第一特征值;
进一步判断所述被检查磁盘块的块号映射到相应的第二数组的位置的值,如果所述映射到的位置的值至少有一个不是所述第一特征值,确定所述被检查磁盘块属于所述第一数组;
其中,所述第一数组为非空闲磁盘块的Bloom Filter数组,所述第二数组为空闲磁盘块的Bloom Filter数组,或者所述第一数组为空闲磁盘块的Bloom Filter数组,所述第二数组为非空闲磁盘块的Bloom Filter数组。
10.根据权利要求9所述的磁盘块检查方法,其特征在于,所述方法还包括:
如果所述被检查磁盘块的块号映射到所述第一数组的位置的值,和映射到所述第二数组的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
11.一种磁盘块检查装置,其特征在于,所述装置包括:
第一映射单元,用于利用哈希Hash函数将第一磁盘块集合的第一子磁盘块集合的每个块号映射到布隆滤波器Bloom Filter数组中,将所述每个块号映射到的位置的值由初始值置为第一特征值,所述Bloom Filter数组中所有位置的初始值为第二特征值,所述第一磁盘块集合包括两个子磁盘块集合,所述两个子磁盘块集合为空闲磁盘块集合和非空闲磁盘块集合,将所述BloomFilter数组发送至第二映射单元;
第二映射单元,用于接收所述第一映射单元发送的所述Bloom Filter数组,利用所述Hash函数将被检查磁盘块的块号映射到所述Bloom Filter数组中;
确定单元,用于根据所述被检查磁盘块的块号映射到的位置的值,判断所述被检查磁盘块是否属于所述Bloom Filter数组,以及根据所述被检查磁盘块是否属于所述Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
12.根据权利要求10所述的磁盘块检查装置,其特征在于,所述第一映射单元中的所述Hash函数个数为一个以上,并且各个Hash函数之间没有相关性。
13.根据权利要求10所述的磁盘块检查装置,其特征在于,所述第一映射单元用于,
当所述第一磁盘块集合中的空闲的磁盘块数量大于非空闲的磁盘块数量且两者之差大于第一数量阈值时,则所述第一子磁盘块集合为非空闲磁盘块集合,相应地,所述Bloom Filter数组为非空闲磁盘块的Bloom Filter数组;
当所述第一磁盘块集合中的非空闲的磁盘块数量大于空闲的磁盘块数量且两者之差大于第一数量阈值时,则所述第一子磁盘块集合为非空闲磁盘块集合,相应地,所述Bloom Filter数组为空闲磁盘块的Bloom Filter数组。
14.根据权利要求11所述的磁盘块检查装置,其特征在于,所述第一映射单元还用于,
当非空闲的磁盘块数量与空闲的磁盘块数量之差小于第一数量阈值时,利用哈希Hash函数将第一磁盘块集合的第二子磁盘块集合的每个块号映射到布隆滤波器Bloom Filter数组中,将所述每个块号映射到的位置的值由初始值置为第一特征值,相应地,所述Bloom Filter数组为非空闲磁盘块的BloomFilter数组和空闲磁盘块的Bloom Filter数组。
15.根据权利要求11或13所述的磁盘块检查装置,其特征在于,
所述确定单元具体用于,判断所述被检查磁盘块的块号映射到所述非空闲磁盘块的Bloom Filter数组的位置的值,如果所述映射到的位置的值至少有一个不是所述第一特征值,判断所述被检查磁盘块不属于所述非空闲磁盘块的Bloom Filter数组,确定所述被检查磁盘块是空闲磁盘块。
16.根据权利要求15所述的磁盘块检查装置,其特征在于,所述确定单元还用于,
如果所述映射到的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
17.根据权利要求11或13所述的磁盘块检查装置,其特征在于,
所述确定单元具体用于,判断所述被检查磁盘块的块号映射到所述空闲磁盘块的Bloom Filter数组的位置的值,如果所述映射到的位置的值的至少有一个不是所述第一特征值,判断所述被检查磁盘块不属于所述空闲磁盘块的Bloom Filter数组,确定所述被检查磁盘块是非空闲磁盘块。
18.根据权利要求17所述的磁盘块检查装置,其特征在于,所述确定单元还用于,
如果所述映射到的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
19.根据权利要求11或14所述的磁盘块检查装置,其特征在于,
所述确定单元具体用于,判断所述被检查磁盘块的块号映射到第一数组的位置的值,如果所述映射到的位置的值全部是所述第一特征值;
进一步判断所述被检查磁盘块的块号映射到相应的第二数组的位置的值,如果所述映射到的位置的值至少有一个不是所述第一特征值,确定所述被检查磁盘块属于所述第一数组,以及确定所述被检查磁盘块的状态与所述第一数组对应的磁盘块的状态相同;
其中,所述第一数组为非空闲磁盘块的Bloom Filter数组,所述第二数组为空闲磁盘块的Bloom Filter数组,或者所述第一数组为空闲磁盘块的Bloom Filter数组,所述第二数组为非空闲磁盘块的Bloom Filter数组。
20.根据权利要求19所述的磁盘块检查装置,其特征在于,所述确定单元还用于,
如果所述被检查磁盘块的块号映射到所述第一数组的位置的值,和映射到所述第二数组的位置的值都是所述第一特征值,则到空间管理模块去查询所述被检查磁盘块是空闲磁盘块还是非空闲磁盘块。
CN201210578405.4A 2012-12-27 2012-12-27 磁盘块检查方法及装置 Active CN103117075B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210578405.4A CN103117075B (zh) 2012-12-27 2012-12-27 磁盘块检查方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210578405.4A CN103117075B (zh) 2012-12-27 2012-12-27 磁盘块检查方法及装置

Publications (2)

Publication Number Publication Date
CN103117075A true CN103117075A (zh) 2013-05-22
CN103117075B CN103117075B (zh) 2015-08-26

Family

ID=48415428

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210578405.4A Active CN103117075B (zh) 2012-12-27 2012-12-27 磁盘块检查方法及装置

Country Status (1)

Country Link
CN (1) CN103117075B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105512003A (zh) * 2015-11-30 2016-04-20 曙光信息产业股份有限公司 一种磁盘定位方法及装置
CN110532032A (zh) * 2019-07-31 2019-12-03 华为技术有限公司 一种开机文件系统检测方法以及相关设备
RU2784555C1 (ru) * 2020-12-23 2022-11-28 Ханс Кюнц Гмбх Установка для перемещения грузов для перемещения груза в рабочем пространстве

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2345985A (en) * 1999-01-19 2000-07-26 Inventec Corp Testing the integrity of software pre-installed on a computer hard disk
CN1346127A (zh) * 2000-10-03 2002-04-24 松下电器产业株式会社 磁盘装置的控制装置、方法、记录媒体及检查方法和装置
US20070174316A1 (en) * 2006-01-18 2007-07-26 Grubbs Mark A Method, system and computer program product for shrinking a file system
US20080222152A1 (en) * 2007-03-09 2008-09-11 Saurabh Godbole System and Method for Performing File System Checks on an Active File System
US20080222078A1 (en) * 2007-03-09 2008-09-11 Saurabh Godbole Architecture for Performing File System Checking on an Active File System

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2345985A (en) * 1999-01-19 2000-07-26 Inventec Corp Testing the integrity of software pre-installed on a computer hard disk
CN1346127A (zh) * 2000-10-03 2002-04-24 松下电器产业株式会社 磁盘装置的控制装置、方法、记录媒体及检查方法和装置
US20070174316A1 (en) * 2006-01-18 2007-07-26 Grubbs Mark A Method, system and computer program product for shrinking a file system
US20080222152A1 (en) * 2007-03-09 2008-09-11 Saurabh Godbole System and Method for Performing File System Checks on an Active File System
US20080222078A1 (en) * 2007-03-09 2008-09-11 Saurabh Godbole Architecture for Performing File System Checking on an Active File System

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105512003A (zh) * 2015-11-30 2016-04-20 曙光信息产业股份有限公司 一种磁盘定位方法及装置
CN105512003B (zh) * 2015-11-30 2018-06-26 曙光信息产业股份有限公司 一种磁盘定位方法及装置
CN110532032A (zh) * 2019-07-31 2019-12-03 华为技术有限公司 一种开机文件系统检测方法以及相关设备
CN110532032B (zh) * 2019-07-31 2021-01-05 华为技术有限公司 一种开机文件系统检测方法以及相关设备
RU2784555C1 (ru) * 2020-12-23 2022-11-28 Ханс Кюнц Гмбх Установка для перемещения грузов для перемещения груза в рабочем пространстве

Also Published As

Publication number Publication date
CN103117075B (zh) 2015-08-26

Similar Documents

Publication Publication Date Title
US10031671B2 (en) Method, apparatus, and system for calculating identification threshold to distinguish cold data and hot data
CN102160030B (zh) 对于数据存储的写通信的聚集
CN100573728C (zh) 一种存储器控制器自动化测试方法及装置
US8396840B1 (en) System and method for targeted consistency improvement in a distributed storage system
CN103150228B (zh) 面向高速缓冲存储器的可综合伪随机验证方法及装置
CN104850480B (zh) 高密度存储服务器硬盘性能测试的方法及装置
US8468134B1 (en) System and method for measuring consistency within a distributed storage system
US8682850B2 (en) Method of enhancing de-duplication impact by preferential selection of master copy to be retained
CN106202569A (zh) 一种基于大数据量的清洗方法
CN104699424A (zh) 一种基于页面热度的异构内存管理方法
CN101419844B (zh) 一种闪存器件仿真设备以及闪存主控模块评测方法
CN106445725A (zh) 一种闪存错误模式的测试方法和系统
CN103812877A (zh) 基于Bigtable分布式存储系统的数据压缩方法
CN103514957A (zh) Ssd测试方法及系统
CN111314158A (zh) 大数据平台监控方法、装置及设备、介质
CN105518612A (zh) 一种监控数据的写入方法及装置
CN103117075B (zh) 磁盘块检查方法及装置
CN103488695A (zh) 数据同步装置和数据同步方法
CN112927751B (zh) 存储器失效地址的输出方法及相关设备
CN105426314A (zh) 一种fpga存储器的工艺映射方法
CN107729182B (zh) 数据存储和访问的方法及装置
CN109684517A (zh) 一种历史数据存储方法、读写方法、存储装置和设备
CN103176753B (zh) 存储设备及其数据管理方法
US20160055211A1 (en) Apparatus and method for memory storage and analytic execution of time series data
CN106484539A (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
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20191213

Address after: 314400 No.11, Weisan Road, Nongfa District, Chang'an Town, Haining City, Jiaxing City, Zhejiang Province

Patentee after: Haining hi tech Zone Science and Innovation Center Co.,Ltd.

Address before: 510000 unit 2414-2416, building, No. five, No. 371, Tianhe District, Guangdong, China

Patentee before: GUANGDONG GAOHANG INTELLECTUAL PROPERTY OPERATION Co.,Ltd.

Effective date of registration: 20191213

Address after: 510000 unit 2414-2416, building, No. five, No. 371, Tianhe District, Guangdong, China

Patentee after: GUANGDONG GAOHANG INTELLECTUAL PROPERTY OPERATION Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.