CN102750213A - 磁盘检测、处理方法及检测、处理系统 - Google Patents
磁盘检测、处理方法及检测、处理系统 Download PDFInfo
- Publication number
- CN102750213A CN102750213A CN201210201418XA CN201210201418A CN102750213A CN 102750213 A CN102750213 A CN 102750213A CN 201210201418X A CN201210201418X A CN 201210201418XA CN 201210201418 A CN201210201418 A CN 201210201418A CN 102750213 A CN102750213 A CN 102750213A
- Authority
- CN
- China
- Prior art keywords
- subregion
- bad
- disk
- block message
- lbn
- 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
Links
Images
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明适用于存储设备领域,提供了一种磁盘检测、处理方法及检测、处理系统,包括:获取用户与磁盘的交互结果;根据所述交互结果生成坏块信息,所述坏块信息包括存在坏块的物理扇区号和分区号;将所述坏块信息存储至所述分区号对应的分区。在本发明中,通过实时地获取并分析用户与磁盘的交互结果,从而在用户对磁盘进行读写的同时记录磁盘中产生的坏块,大大提高了磁盘的检测效率。
Description
技术领域
本发明属于存储设备领域,尤其涉及磁盘检测、处理方法及检测、处理系统。
背景技术
存储设备,例如硬盘、存储卡等,在使用过程中由于使用环境的不同、使用方法的不当等因素,可能会产生磁盘的扇区损坏,从而形成坏块。若上层业务读写到存在坏块的扇区时,有可能出现长时间无响应的情况,为磁盘的读写效率产生影响,因此需要检测并记录磁盘中的坏块位置。
现在技术只能在坏块产生之后通过专门的工具软件来针对磁盘的每一个扇区进行重新读写,从而判断扇区的好坏,确定坏块的位置,而无法在坏块产生的同时进行实时记录,降低了磁盘检测的效率。
发明内容
本发明实施例的目的在于提供一种磁盘检测方法,旨在解决现有的磁盘检测方法检测效率低的问题。
本发明实施例是这样实现的,一种磁盘检测系统,包括:
获取用户与磁盘的交互结果;
根据所述交互结果生成坏块信息,所述坏块信息包括存在坏块的物理扇区号和分区号;
将所述坏块信息存储至所述分区号对应的分区。
本发明实施例的另一目的在于提供一种磁盘检测系统,包括:
获取单元,用于获取用户与磁盘的交互结果;
生成单元,用于根据所述交互结果生成坏块信息,所述坏块信息包括存在坏块的物理扇区号和分区号;
存储单元,用于将所述坏块信息存储至所述分区号对应的分区。
在本发明实施例中,通过实时地获取并分析用户与磁盘的交互结果,从而在用户对磁盘进行读写的同时记录磁盘中产生的坏块,大大提高了磁盘的检测效率。
本发明实施例的另一目的在于提供一种磁盘处理方法,包括:
读取分区中的坏块信息,所述坏块信息根据用户与磁盘的交互结果生成,包括存在坏块的物理扇区号和所述分区的分区号;
根据所述坏块记录扫描所述分区,对坏块进行处理。
本发明实施例的另一目的在于提供一种磁盘处理系统,包括:
读取单元,用于读取分区中的坏块信息,所述坏块信息根据用户与磁盘的交互结果生成,包括存在坏块的物理扇区号和所述分区的分区号;
处理单元,用于根据所述坏块记录扫描所述分区,对坏块进行处理。
本发明实施例通过读取坏块信息并根据坏块信息对坏块进行快速处理,以保证坏块的存在不影响用户对磁盘的正常读写操作,满足了例如普通安防录像、车载录像等必须保证系统正常动作的特殊业务要求。
附图说明
图1是本发明实施例提供的磁盘检测方法的实现流程图;
图2是本发明实施例提供的磁盘检测方法步骤S103的实现流程图;
图3是本发明实施例提供的磁盘检测系统的结构框图;
图4是本发明实施例提供的磁盘处理方法的实现流程图;
图5是本发明实施例提供的磁盘处理系统的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在本发明实施例中,通过实时地获取并分析用户与磁盘的交互结果,从而在用户对磁盘进行读写的同时记录磁盘中产生的坏块,大大提高了磁盘的检测效率。
图1示出了本发明实施例提供的磁盘检测方法的实现流程,详述如下:
在步骤S101中,获取用户与磁盘的交互结果。
例如,在Linux内核中,用户对磁盘的读写操作被转换成小型计算机系统接口(Small Computer System Interface,SCSI)命令与底层驱动器进行输入/输出(Input/Output,I/O)交互,因此,当交互结果通过中断返回到SCSI层时,即能够获取到用户与磁盘的交互结果。
在步骤S102中,根据所述交互结果生成坏块信息,所述坏块信息包括存在坏块的物理扇区号和分区号。
在本实施例中,交互结果被包含在I/O交互完成后产生的中断响应函数的数据结构中,该数据结构包括了磁盘相应位置的逻辑块号、分区号、是否损坏及损坏原因等信息,因此,能够通过相应的命令分析接口来分析交互结果,以确定用户对磁盘的读写操作是否产生错误。如果没有产生错误,则直接返回,否则,由分析结果中提取出相应的坏块物理扇区号、分区号等坏块信息。
可选的,坏块信息还可以包括坏块的坏块类型,在此不一一限定。
在步骤S103中,将所述坏块信息存储至所述分区号对应的分区。
由于在磁盘驱动注册完成之后即映射出磁盘盘符,内核即开始获取磁盘分区信息,包括分区名、分区起止扇区、分区大小等信息,因此,在Linux内核完成磁盘加载后,系统需按指定方式对ext2分区及裸分区进行重新注册,以将Linux内核加载的磁盘信息重新注册到系统中,同时初始化分区坏块链表。
在步骤S102中生成坏块信息之后,能够结合磁盘加载完成后重新注册的分区信息来形成本系统坏块信息,例如,坏块逻辑扇区=坏块物理扇区号-分区起始扇区号,并将其插入到初始化生成的坏块链表中。
由此,通过创建一个内核线程,用来定时遍历磁盘分区上的坏块链表,即能够将产生的坏块的坏块信息存储至其所在分区的相应位置,从而完成对检测出的坏块的记录,便于磁盘对坏块进行后续处理。
对于步骤S103,具体地,如图2所示:
在步骤S201中,生成第一逻辑块号。
在步骤S202中,将所述坏块信息存储至所述分区中所述第一逻辑块号指示的位置。
具体地,在生成第一逻辑块号后,可以将所述坏块信息和所述第一逻辑块号添加到相应分区的待写链表中等待回写,由此将坏块信息存储至所述分区中第一逻辑块号的相应位置。
由于目前的特殊文件系统采用标准文件系统分区+裸分区的方式来实现数据存储。其中,标准文件系统分区为索引分区,其以文件的方式来存储裸分区中数据块的索引记录,而裸分区为数据分区,其按数据块的方式来存放实际的存储数据,因此,基于特殊文件系统,可选地,对于标准文件系统分区产生的坏块记录可以通过第一逻辑块号指示预设文件节点进行保存,例如1号节点;对于裸区产生的坏块记录可以通过第一逻辑块号指示其保留数据区进行保存。
需要说明的是,在本实施例中,对于标准文件系统分区和裸分区的检测可以同时进行,有效地提高了磁盘检测的效率。
图3示出了本发明实施例提供的磁盘检测系统的结构框图,其适用于包括ext2、fat等特殊文件系统中,用于运行本发明图1和图2所示的磁盘检测方法。为了便于说明,仅示出了与本实施例相关的部分。
参照图3,该磁盘检测系统包括:
获取单元31,获取用户与磁盘的交互结果。
生成单元32,根据所述交互结果生成坏块信息,所述坏块信息包括存在坏块的物理扇区号和分区号。
存储单元33,将所述坏块信息存储至所述分区号对应的分区。
可选地,存储单元33包括:
生成子单元,生成第一逻辑块号。
存储子单元,将所述坏块信息存储至所述分区中所述第一逻辑块号指示的位置。
在本实施例中,对于生成的坏块信息,通过将坏块信息转换为特殊的逻辑块号后加入到磁盘的待写链表中等待回写,从而实时地将磁盘产生的坏块进行记录,存储进磁盘中。
需要说明的是,为了保证Linux内核原有的工作流程,在本实施例中,当Linux内核完成磁盘加载后,可以通过对ext2分区和裸分区进行重新注册,以启动相应的磁盘检测过程,为磁盘的检测提供相应的运行环境及数据信息。
图4示出了本发明实施例提供的磁盘处理方法的实现流程,本实施例基于本发明提供的磁盘检测方法实现,详述如下:
在步骤S401中,读取分区中的坏块信息,所述坏块信息根据用户与磁盘的交互结果生成,包括存在坏块的物理扇区号和所述分区的分区号。
在本实施例中,对坏块信息的读取可以在存储设备的启动过程中进行,由于当存储设备在使用过程中出现坏块时,已将坏块信息写回到存储设备中,此时,通过注册磁盘、分区信息,分配系统资源,识别分区信息,可以对待分析的存储设备进行注册和分区识别,以进一步地进行数据处理。
可选地,当分区中的坏块信息存储在分区的指定位置时,例如对于标准文件系统分区,坏块信息存储在其所在分区的预设文件节点,对于裸分区,坏块信息存储在其所在分区的保留数据区,则可以直接从分区中的指定位置读取到坏块信息,且对于标准文件系统分区和裸分区中坏块信息的读取可以同时进行。
具体地,对于坏块信息的读取位置,针对ext2分区:
1)通过试探读取分区文件系统的超级块(其结构:struct super block)信息,进而获取到该分区逻辑数据块大小n,那么一个数据块表示的扇区数c=n>>9;
2)读取ext2分区1号节点记录的坏块信息并获取记录的逻辑坏块扇区s,结合第1步得到的数据,我们可以得逻辑坏块的块号b=(s+c)/c;
针对裸分区:
1)裸分区数据大小由格式化时自行设定,假设设定大小为n,那么一个数据块表示的扇区数c=n>>9;
2)从裸分区的保留数据区将坏块记录读取并获得逻辑坏块扇区s,结合第1步得到的数据,我们可以得逻辑坏块的块号b=(s+c)/c。
在步骤S402中,根据所述坏块记录扫描所述分区,对坏块进行处理。
可选的,当分区为标准文件系统分区时,步骤S402具体为通过遍历该分区的文件节点,修改存在坏块的文件节点的文件名和文件属性,以达到将坏块隐藏在文件内部的目的。例如,针对普通安防和车载安防对存储设备的要求,需要坏的扇区不影响正常扇区的数据读写,因此,通过修改存在坏块的文件节点的文件名和文件属性,能够避免访问坏块文件产生的无响应影响安防设备正常工作的情况。
可选的,当分区为裸分区时,步骤S402具体为扫描整个分区,通过预设的算法将坏块信息对应的第一逻辑块号转换为第二逻辑块号,然后通过设置bitmap区对应位为坏块即可。
通过步骤S402,即能够对产生的坏块进行快速处理,以保证坏块的存在不影响用户对磁盘的正常读写操作,满足了例如普通安防录像、车载录像等必须保证系统正常动作的特殊业务要求。
进一步地,当坏块信息包括坏块类型时,在步骤S402之后,还可以包括:
根据坏块类型对坏块进行修复,以完成对坏块的进一步处理,之后释放分区资源,并更新磁盘状态报表,释放系统资源。
图5示出了本发明实施例提供的磁盘处理系统的结构框图,其适用于包括ext2、fat等特殊文件系统中,用于运行本发明图4所示的磁盘处理方法。为了便于说明,仅示出了与本实施例相关的部分。
参照图5,该磁盘处理系统包括:
读取单元51,读取分区中的坏块信息,所述坏块信息根据用户与磁盘的交互结果生成,包括存在坏块的物理扇区号和所述分区的分区号。
处理单元52根据所述坏块记录扫描所述分区,对坏块进行处理。
可选地,所述分区包括标准文件系统分区,所述处理单元52用于修改存在所述坏块的文件节点的文件名和文件属性。
可选地,所述分区包括裸分区,所述处理单元52包括根据预设的算法将所述坏块对应的第一逻辑块号转换为第二逻辑块号。
本发明实施例基于前述实施例的磁盘检测方法,通过读取坏块信息并根据坏块信息对坏块进行快速处理,以保证坏块的存在不影响用户对磁盘的正常读写操作,满足了例如普通安防录像、车载录像等必须保证系统正常动作的特殊业务要求。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种磁盘检测方法,其特征在于,包括:
获取用户与磁盘的交互结果;
根据所述交互结果生成坏块信息,所述坏块信息包括存在坏块的物理扇区号和分区号;
将所述坏块信息存储至所述分区号对应的分区。
2.如权利要求1所述的方法,其特征在于,所述将所述坏块信息存储至所述分区号对应的分区包括:
生成第一逻辑块号;
将所述坏块信息存储至所述分区中所述第一逻辑块号指示的位置。
3.如权利要求2所述的方法,其特征在于,所述分区包括标准文件系统分区,所述第一逻辑块号指示所述标准文件系统分区的预设文件节点;和/或
所述分区包括裸分区,所述第一逻辑块号指示所述裸分区的保留数据区。
4.一种磁盘处理方法,其特征在于,包括:
读取分区中的坏块信息,所述坏块信息根据用户与磁盘的交互结果生成,包括存在坏块的物理扇区号和所述分区的分区号;
根据所述坏块记录扫描所述分区,对坏块进行处理。
5.如权利要求4所述的方法,其特征在于,所述分区包括标准文件系统分区,所述对坏块进行处理包括:
修改存在所述坏块的文件节点的文件名和文件属性;和/或
所述分区包括裸分区,所述对坏块进行处理包括:
根据预设的算法将所述坏块对应的第一逻辑块号转换为第二逻辑块号。
6.一种磁盘检测系统,其特征在于,包括:
获取单元,用于获取用户与磁盘的交互结果;
生成单元,用于根据所述交互结果生成坏块信息,所述坏块信息包括存在坏块的物理扇区号和分区号;
存储单元,用于将所述坏块信息存储至所述分区号对应的分区。
7.如权利要求6所述的系统,其特征在于,所述存储单元包括:
生成子单元,用于生成第一逻辑块号;
存储子单元,用于将所述坏块信息存储至所述分区中所述第一逻辑块号指示的位置。
8.一种磁盘处理系统,其特征在于,包括:
读取单元,用于读取分区中的坏块信息,所述坏块信息根据用户与磁盘的交互结果生成,包括存在坏块的物理扇区号和所述分区的分区号;
处理单元,用于根据所述坏块记录扫描所述分区,对坏块进行处理。
9.如权利要求8所述的系统,其特征在于,所述分区包括标准文件系统分区,所述处理单元用于修改存在所述坏块的文件节点的文件名和文件属性;和/或
所述处理单元用于根据预设的算法将所述坏块对应的第一逻辑块号转换为第二逻辑块号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210201418.XA CN102750213B (zh) | 2012-06-18 | 2012-06-18 | 磁盘检测、处理方法及检测、处理系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210201418.XA CN102750213B (zh) | 2012-06-18 | 2012-06-18 | 磁盘检测、处理方法及检测、处理系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102750213A true CN102750213A (zh) | 2012-10-24 |
CN102750213B CN102750213B (zh) | 2016-04-06 |
Family
ID=47030424
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210201418.XA Active CN102750213B (zh) | 2012-06-18 | 2012-06-18 | 磁盘检测、处理方法及检测、处理系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102750213B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104484251A (zh) * | 2014-12-11 | 2015-04-01 | 华为技术有限公司 | 一种硬盘故障的处理方法及装置 |
CN104657088A (zh) * | 2015-02-06 | 2015-05-27 | 深圳市锐明视讯技术有限公司 | 一种硬盘坏块信息的获取方法及装置 |
CN108304306A (zh) * | 2018-01-17 | 2018-07-20 | 郑州云海信息技术有限公司 | 一种基于blktrace的磁盘I/O性能故障定位分析方法 |
CN109062989A (zh) * | 2018-07-03 | 2018-12-21 | 深圳市慧视通科技股份有限公司 | 一种车载监控数据存储方法 |
CN110333971A (zh) * | 2019-07-10 | 2019-10-15 | 深圳忆联信息系统有限公司 | Ssd坏块表备份方法、装置、计算机设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6545832B1 (en) * | 1998-10-14 | 2003-04-08 | Alps Electric Co., Ltd. | Disk drive capable of rereading same signal from disk in case of error in read signal |
CN101127233A (zh) * | 2007-09-25 | 2008-02-20 | Ut斯达康通讯有限公司 | 流媒体应用中的硬盘错误检测与容错方法 |
-
2012
- 2012-06-18 CN CN201210201418.XA patent/CN102750213B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6545832B1 (en) * | 1998-10-14 | 2003-04-08 | Alps Electric Co., Ltd. | Disk drive capable of rereading same signal from disk in case of error in read signal |
CN101127233A (zh) * | 2007-09-25 | 2008-02-20 | Ut斯达康通讯有限公司 | 流媒体应用中的硬盘错误检测与容错方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104484251A (zh) * | 2014-12-11 | 2015-04-01 | 华为技术有限公司 | 一种硬盘故障的处理方法及装置 |
CN104657088A (zh) * | 2015-02-06 | 2015-05-27 | 深圳市锐明视讯技术有限公司 | 一种硬盘坏块信息的获取方法及装置 |
CN104657088B (zh) * | 2015-02-06 | 2018-01-23 | 深圳市锐明技术股份有限公司 | 一种硬盘坏块信息的获取方法及装置 |
CN108304306A (zh) * | 2018-01-17 | 2018-07-20 | 郑州云海信息技术有限公司 | 一种基于blktrace的磁盘I/O性能故障定位分析方法 |
CN109062989A (zh) * | 2018-07-03 | 2018-12-21 | 深圳市慧视通科技股份有限公司 | 一种车载监控数据存储方法 |
CN109062989B (zh) * | 2018-07-03 | 2022-05-17 | 深圳市慧视通科技股份有限公司 | 一种车载监控数据存储方法 |
CN110333971A (zh) * | 2019-07-10 | 2019-10-15 | 深圳忆联信息系统有限公司 | Ssd坏块表备份方法、装置、计算机设备及存储介质 |
CN110333971B (zh) * | 2019-07-10 | 2021-08-17 | 深圳忆联信息系统有限公司 | Ssd坏块表备份方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN102750213B (zh) | 2016-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106548789B (zh) | 用于操作叠瓦式磁记录设备的方法和装置 | |
CN102929750B (zh) | 非易失性介质肮脏区段跟踪 | |
CN104461391A (zh) | 一种存储设备元数据管理处理方法及系统 | |
US20070288711A1 (en) | Snapshot copy management method used for logic volume manager | |
US9971527B2 (en) | Apparatus and method for managing storage for placing backup data into data blocks based on frequency information | |
CN104461390A (zh) | 将数据写入叠瓦状磁记录smr硬盘的方法及装置 | |
CN102750213B (zh) | 磁盘检测、处理方法及检测、处理系统 | |
US20100191757A1 (en) | Recording medium storing allocation control program, allocation control apparatus, and allocation control method | |
EP3438845A1 (en) | Data updating method and device for a distributed database system | |
US10324794B2 (en) | Method for storage management and storage device | |
US8799572B2 (en) | Sliding-window multi-class striping | |
JP5104855B2 (ja) | 負荷分散プログラム、負荷分散方法、及びストレージ管理装置 | |
CN100405310C (zh) | 一种快照系统及方法 | |
CN106294387A (zh) | 数据迁移方法和装置 | |
JP4630734B2 (ja) | 論理ボリューム管理装置、論理ボリューム管理方法およびプログラム | |
CN111309245A (zh) | 一种分层存储写入方法和装置、读取方法和装置及系统 | |
CN102959548A (zh) | 数据存储方法、查找方法及装置 | |
CN105654972B (zh) | 一种面向可交换光盘匣光盘库快速自检方法及装置 | |
CN109144403B (zh) | 一种用于云盘模式切换的方法与设备 | |
CN109669621A (zh) | 一种文件管理方法、文件管理系统、电子设备及存储介质 | |
CN112825098A (zh) | 数据保护方法、装置、计算设备及存储介质 | |
CN105357462B (zh) | 一种pvr分区录制方法及系统 | |
CN109669623A (zh) | 一种文件管理方法、文件管理装置、电子设备及存储介质 | |
CN107632792A (zh) | 云数据系统中管理虚拟磁盘的方法和装置 | |
CN113342274A (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 | ||
CB02 | Change of applicant information |
Address after: Nanshan District Xueyuan Road in Shenzhen city of Guangdong province 518000 No. 1001 Nanshan Chi Park B1 building 22 floor Applicant after: STREAMAX TECHNOLOGY CO., LTD. Address before: 518057, Guangdong Shenzhen Nanshan District science and technology two road Shenzhen software park three, five floor Applicant before: Shenzhen Streaming Video Technology Co., Ltd. |
|
COR | Change of bibliographic data | ||
GR01 | Patent grant |