本文主要是介绍【Western Digital】固件区学习之缺陷表(30、31、32、33、34、35、36模块),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
今天来探讨一下关于硬盘固件区缺陷表和译码表的相关模块。关于缺陷表的解释:
P-list(永久缺陷表,P表):
硬盘厂商在出厂时在自动校准的过程中找出的缺陷磁道和缺陷扇区,记录在P-list中。
G-list(增长缺陷表,G表):
硬盘厂商设计的一个自动修复机制,在硬盘使用过程中,如果发现一个缺陷扇区,则自动分配一个备用的扇区替换该扇区。并将该扇区记录在G-list中。
35模块 (固件区缺陷表):
固件区缺陷列表,用来记录硬盘固件区产生的缺陷。
T-list(磁道缺陷表,道表):
也就是压缩后的P表,因为固件的存储空间有限,当向其中加入的缺陷信息数据量太大,达到一定程度时,
将无法继续写入,这时就可将P表进行压缩,将缺陷过多的磁道记录为Track,增加P表容量,继续写入缺陷信息。
译码表:用来管理缺陷表和段位表之间的关系,译码表出问题会导致硬盘逻辑地址出错,硬盘数据不能正常读取。
上面缺陷表对应的硬盘固件区模块分别是 33、34、35、36号模块。
与之相关的译码表为30(固件区译码表) 一般存放在硬盘ROM中,31(P-list译码表),32号(G-list译码表)模块。
下面我拿一块320G的笔记本硬盘来分析一下这些模块
P表 :
对应的33号模块:
G表和固件区缺陷表同理。
T表:
对应的36号模块:
这篇关于【Western Digital】固件区学习之缺陷表(30、31、32、33、34、35、36模块)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!