APP下载

一种基于机械硬盘的坏扇区映射方法研究

2022-05-10李攀张蕊

科技资讯 2022年7期
关键词:映射离线性能

李攀 张蕊

摘要:该文提出了一种基于机械硬盘的坏扇区映射方法,包括如下步骤:系统启动后,坏扇区管理模块开始初始化;当硬盘上线完成后,系统先将IO请求的逻辑地址发送给坏扇区管理模块,由坏扇区管理模块转换为物理地址后进行是否命中坏扇区映射表、预测坏扇区映射表的检测;然后由坏扇区管理模块依据检测结果决定是将映射后的物理地址还是真实的物理地址返给系统;系统按坏扇区管理模块返回的物理地址进行硬盘读写,如果读写成功,则IO结束;如果读写失败,则触发坏扇区管理模块执行坏扇区映射操作。该方法可有效避免系统因连续扇区损坏所导致的IO频繁报错和逻辑上连续但实际物理扇区却离散的问题,可极大提高系统的稳定性和性能。

关键词:机械硬盘  坏扇区  系统  映射  IO报错  离线  性能

中图分类号:TH122文献标识码:A   文章编号:1672-3791(2022)04(a)-0000-00

Research on Bad Sector Mapping Method Based on Mechanical Hard Disk

LI Pan   ZHANG Rui

(Shanghai Technician School,Shanghai,200437China)

Abstract: This paper presents a bad sector mapping method based on mechanical hard disk, which includes the following steps: after the system starts, the bad sector management module starts to initialize; After the hard disk goes online, the system first sends the logical address of the IO request to the bad sector management module. After the bad sector management module converts it into a physical address, it detects whether it hits the bad sector mapping table and predicts the bad sector mapping table; Then, the bad sector management module decides whether to return the mapped physical address or the real physical address to the system according to the detection result; The system reads and writes the hard disk according to the physical address returned by the bad sector management module. If the reading and writing is successful, the IO ends; If the read / write fails, the bad sector management module is triggered to perform the bad sector mapping operation. This method can effectively avoid the problems of frequent IO error reporting and logically continuous but discrete physical sectors caused by continuous sector damage, and can greatly improve the stability and performance of the system.

Key Words: Mechanical hard disk; Bad sector; System; Mapping; IO error; Off-line; Performance

機械硬盘都是磁碟型的,是由重叠的一组盘片构成,每个盘面都被划分为数目相等的磁道(Track),并从外缘的“0”开始编号,具有相同编号的磁道形成一个圆柱,称之为柱面(Cylinder),每个磁道被等分为若干个弧段,这些弧段便是扇区(Sector)。数据是存储在扇区里,对于无法写入数据的扇区称为坏扇区。

在机械硬盘的生命周期中,始终存在“因为扇区损坏而导致系统IO错误的情况”。因而,在以机械硬盘为主要存储介质的存储服务器中,因为硬盘扇区损坏而上报的IO错误,是系统读写失败最主要的原因。

目前解决上述问题的通用方法是“一一对应”方法,该方法是在硬盘上线时,先预留一部分空间,以用于替换硬盘上损坏的扇区,然后在系统出现一次IO错误时,就进行一次记录,根据系统层IO携带的扇区地址进行坏扇区的映射,并且更新坏扇区映射表(用于记录发生变化的扇区映射关系)。而系统在正常读写的过程中,如果读写的目标扇区地址命中坏扇区映射表中记录的硬盘“已损坏”扇区,则会修改目标系统即将读写的硬盘地址,即:根据之前建立的映射关系,从硬盘的预留扇区中找到一个同样大小的扇区进行地址替换,以完成本次读写。在存储服务器中,虽然通过这种“一一对应”方法,可提高硬盘的使用寿命和降低IO报错情况,但在实际使用中,仍然存在一些弊端,例如:

对于大多数机械硬盘而言,机械硬盘损坏的扇区通常不是离散的和随机的,而是有规律的、相关联的一段物理地址,一旦出现某个扇区损坏,就会不可避免地产生一连串的IO错误,这时系统一方面需要处理这些错误(以Linux系统为例,通常会触发其重建这条链路),另一方面又会在坏扇区映射表中重映射这个扇区,以致会加重系统的负载,出现内存紧张、CPU占用过高、IO性能下降等问题;此外,采用“一一对应”时,因为一个扇区损坏,就会导致这个扇区的物理地址被重映射到“预留扇区表”中,从而出现逻辑上连续但实际物理扇区却离散的问题,以致系统性能也受到影响。因此,有必要研发一种基于机械硬盘的坏扇区映射方法,以解决系统因扇区损坏而频繁出现IO错误和出现的逻辑上连续但实际物理扇区却离散的问题[1]。

1 技术方案提出

针对现有技术存在的上述问题和需求,该文提出一种基于机械硬盘的坏扇区映射方法,以解决系统因为扇区损坏而频繁出现IO错误的问题及出现的逻辑上连续但实际物理扇区却离散的问题,以提高系统IO读写性能、提升系统可靠性和稳定性,并延长机械硬盘的使用寿命。

该文所提出的坏扇区映射方法具体包括如下步骤[2-4]。

(1)系统启动后,坏扇区管理模块开始初始化,所述初始化内容包括:

向系统申请内存资源;创建和初始化坏扇区映射表;获取正在上线的硬盘磁道和盘片数量并据此建立从逻辑地址到物理地址的映射关系;获取正在上线的硬盘容量,并截留5%~20%的硬盘空间作为预留扇区以用于映射;获取正在上线的硬盘配置信息并据此创建坏扇区预测因子和预测坏扇区映射表[5-6];具体操作流程如图1所示。

(2)当硬盘上线完成后,系统先将IO请求的逻辑地址发送给坏扇区管理模块,由坏扇区管理模块转换为物理地址后进行是否命中坏扇区映射表的检测;如果检测结果为是,则坏扇区管理模块依据坏扇区映射表中的映射关系将替换后的物理地址返给系统;如果检测结果为否,则执行S3步骤。

(3)如果IO请求的物理地址没有命中坏扇区映射表,再由坏扇区管理模块检测是否命中预测坏扇区映射表;如果检测结果为否,则坏扇区管理模块将真实的物理地址再返给系统;如果检测结果为是,则执行S4步骤。

(4)如果IO请求的物理地址命中预测坏扇区映射表,则坏扇区管理模块需进一步检测预测坏扇区是否完成“数据迁移”,即:被标记为“已写过”;如果检测结果为是,则坏扇区管理模块依据预测坏扇区映射表中的映射关系将替换后的物理地址返给系统;如果检测结果为否,则坏扇区管理模块将真实的物理地址再返给系统。具体操作流程如图2所示。

(5)系统按坏扇区管理模块返回的物理地址进行硬盘读写,如果读写成功,则IO结束,返回成功;如果读写失败,则触发坏扇区管理模块执行坏扇区映射操作。

(6)系统按映射后的物理地址重试IO,如果再次发生错误,则再次触发坏扇区管理模块执行坏扇区映射操作,直至读写成功。

2 结语

该文提出通过采用预测方法,在执行坏扇区映射操作时,同时建立真实坏扇区的映射关系和预测坏扇区的映射关系两条映射记录,依据真实坏扇区的物理地址及创建的坏扇区预测因子对真实坏扇区进行三个维度的预测扩展,并通过使系统先将IO请求发送给坏扇区管理模块进行相应检测后,再依据坏扇区管理模块经检测后返回的物理地址进行硬盘读写操作,从而可有效避免系统因连续扇区损坏所导致的IO频繁报错的问题,可极大提高系统的稳定性;以及,因预测坏扇区是依据真实坏扇区进行三维度的连续扩展得到,因此,也可有效避免逻辑上连续但实际物理扇区却离散的问题,使系统性能也得到明显提高,非常符合机械硬盘扇区损坏的特点,对大量使用机械硬盘的安防、传统存储领域具有重要意义。

参考文献

[1]郑勇,杨小兰.基于信号提纯的机械故障检测系统设计[J].现代电子技术,2019,42(4):49-52.

[2]王一芃.面向智能电网业务与应用的无线传感网若干理论方法研究[D].北京:北京交通大学,2020.

[3]周颖.无线传感网中高能效数据汇聚关键算法研究[D].南京:南京邮电大学,2020.

[4]石崗,李希胜,李雪峰,等.航向测量系统中三轴磁传感器标定的等效两步法[J].仪器仪表学报,2017,38(2):402-407.

[5]王勇军.融合多源信息的小型多旋翼无人机位姿估计方法研究[D].桂林:桂林电子科技大学,2021.

[6]徐祥,刘铭,曹国灿,等.基于自适应参数估计的三轴磁传感器实时校正方法[J].中国惯性技术学报,2019,27(3):384-389.

猜你喜欢

映射离线性能
夏季五招提高种鹅繁殖性能
基于卷积神经网络的离线笔迹鉴别系统
新版Windows 10补丁离线安装更简单
生与死的尊严(散文)
桌面端,GTX 1650并不是千元价位的显卡好选择
RMI原则在代数学教学中的应用
论美国动画电影题材变化及现实映射意义
概念隐喻在构建语篇连贯中的作用探析
好进难出 应对迅雷“口袋战”
离线发文件 不是会员也能用