再谈 linux bug #59695 (High frequency of load/unload cycles)

笔记本/便携移动设备,手机平板等软硬件
回复
wangcgfan
帖子: 4
注册时间: 2008-05-24 12:49

再谈 linux bug #59695 (High frequency of load/unload cycles)

#1

帖子 wangcgfan » 2008-05-24 13:51

最近半年来,linux 社区论坛尤其是ubuntu这个板块对这个问题争论的太多太多了,以前我用的是台式机所以基本上也没有关注这个问题,最近刚买了一台笔记本,发现确实在大多数的LINUX 发行版本里面都存在这个BUG。结合这一段时间的研究,想对这个问题发表一下个人意见。
1 出现这个问题的硬件基础:
这个问题基本上可以说是发生在笔记本用户上面,也就是说是便携式硬盘上出现的问题。究其原因我查询了相关的 资料 ,发现出现这个问题的硬盘都是最近一两年新推出的节能降躁型的硬盘,这类硬盘普遍采用斜坡加载技术,1 为了数据的安全考虑 硬盘的record head在硬盘空闲的时候会收回去,放在一个安全的不会由于震动等原因导致record head 碰到盘片进而引起数据损坏的地方。2 在硬盘一定时间闲置后降低盘片的转速,当转速降到一定的速度 不足一浮起record head的时候record head就必须收回,这种情况就是相关文档上说的 spin down。以上两种情况都会引起load/unload cycles的增加 。前一种record head收回的情况就是引起这个BUG的原因,后一种record head收回情况于这个BUG无关,由这种情况引起的 Load_Cycle_Count过快增长是操作系统要求的节电模式过高引起的(hdparm -B 1),修改一下系统的配置就可以了 另外在极端节电需求下这种情况也是必须的。

2 过多的LOAD/RELOAD究竟对硬盘有没有伤害
现在的硬盘内部都是机械结构,既然是机械结构,record heat过得的收放肯定会引起机械磨损,最终导致record head定位不准,影响磁盘性能,最终引起磁盘损坏 数据丢失,硬盘坏了可以花银子换新的,但是数据没了可就是无法挽回的了。各硬盘的最大record head收放次数是一个概率值,不是说 你到了那个值硬盘就一定就坏,也不是说你没有到那个值硬盘就一定是完好的,这个值的意义大家要把我好!但是普遍来说这个值是衡量硬盘因为load/reload引起损坏的标准。

3 这个问题是不是UBUNTU 独有的
答案是否定的,这个问题在linux的其它发行版本上基本 上都有。前几天天装系统,就是想知道其他的linux是不是也存在这个问题。我试过 ubuntu 这个问题存在 ,7.10 8.04上都有,Fedora core 9 上也有这个问题,opensuse 10.3 上我试过了,没有这个问题,我用 hdparm -I 命令查看了一下 opensuse10.3的的电源管理状态,显示的是unknow.
而在出现这个BUG的linux上用此命令查看状态是128。也许这就能说明一点问题了吧!
至于WINDOWS 下有没有这个问题,我的是VISTA 用HDTUNE 发现没有这个问题 Load_Cycle_Count基本上没有变化,不会增加。XP 我没有试过。
关与这个问题我想多说几句,总是有人喜欢和WINDOWS 比 ,说什么WINDOWS下也有这个BUG 。事实是只要是BUG 就是问题 WINDOWS 下有这个问题 说明它也不完善,不能说WINDOWS下有这个BUG ,Linux下的这个BUG就是正常的!不要把WINDOWS 当作标准 当作神!为什么LINXU不能做得比Windows好呢?难道windows作不到的linux就做不到吗?

4 这是不是BUG
毫无疑问这是个BUG ,是硬件生产商的BUG 还是操作系统的BUG ?这不是硬件的BUG,是操作系统的BUG !
从硬件的角度来说,硬盘在闲置的时候必须把磁头收回,因为磁盘在很多时候是不在操作系统下使用的,比如进入BIOS的时候主板对硬盘检测完以后就不在读取硬盘上的数据了,所以磁头就需要马上收回来,在操作系统下就不是这个样子了,所以硬盘的默认设置就必须考虑使用硬盘所有可能出现的情况。所以硬盘的默认设置是毫无问题没有问题的。
问题是操作系统要根据需要对硬盘的设置作适当的调整,操作系统(OPERATING SYSATEM)的基本作用就是操作硬件,硬件都用不好 就是忘本。所以我本人对于Ubuntu 官方对这个BUG的解释为Ubuntu 不改变硬盘盘的默认设置为由推卸责任表示不解!LINUX需要作的是根据需要调整一下硬盘在空闲时间收回磁头(record head)的时间间隔,这个问题就解决了!但是很遗憾的是,在一两年里没有人解决这个问题。!
5 现在官方提供的解决方法(work around)是否合适
不合适,本人试过了,于VISTA相比 硬盘的温度升高了将近5度,用了官方的办法以后(hdparm -B 254 $HDD)硬盘不管在什么情况下盘片都是以高速旋转,噪音大 发热大,另一方面 这对硬盘的使用寿命和数据安全也是一种威胁!
头像
yiding_he
帖子: 2677
注册时间: 2006-10-25 18:10
来自: 长沙
联系:

#2

帖子 yiding_he » 2008-05-24 13:59

楼主并没有讲(搞)清楚,为什么过多的 LOAD/RELOAD 对硬盘有伤害?硬盘的 record head 在空闲的时候收回去,这个动作造成了什么样的机械磨损?这个动作造成的磨损,和硬盘本身旋转造成的磨损来比,谁更经得久?
你是自由的。别人也是。
wangcgfan
帖子: 4
注册时间: 2008-05-24 12:49

#3

帖子 wangcgfan » 2008-05-24 14:08

yiding_he 写了:楼主并没有讲(搞)清楚,为什么过多的 LOAD/RELOAD 对硬盘有伤害?硬盘的 record head 在空闲的时候收回去,这个动作造成了什么样的机械磨损?这个动作造成的磨损,和硬盘本身旋转造成的磨损来比,谁更经得久?
1 本人不是硬盘工程师,有些常识性的东西 没法说清楚。
2 两种不必要的磨损都是因该避免的,你说的是BUG和用官方的work around之间应该选哪个! 正常状态下都是不应该有的!
wangcgfan
帖子: 4
注册时间: 2008-05-24 12:49

#4

帖子 wangcgfan » 2008-05-24 14:10

硬盘的 record head 在空闲的时候收回去---》就有机械运动--》机械磨损---》影响使用寿命
地球人都知道!硬盘的 record head 在空闲的时候收回去
niniubi
帖子: 3
注册时间: 2008-05-24 14:37

#5

帖子 niniubi » 2008-05-24 15:15

问题就是问题 不要因为喜欢UBUNTU就不正视问题,出了问题,影响使用,就要解决问题,象有些人那么推脱的说法是很不负责任的,也不利于UBUNTU的发展。
hetao
帖子: 175
注册时间: 2008-01-03 16:25
联系:

Re: 再谈 linux bug #59695 (High frequency of load/unload cycles)

#6

帖子 hetao » 2009-12-09 14:48

收回去的时候磁头是沿着斜坡滑上去的,磨损发生在斜坡与磁头之间,影响寿命是肯定的,有人问了日立的工程师后说的。
官方的方法是让硬盘时刻全速运转,当然会温度升高
hetao
帖子: 175
注册时间: 2008-01-03 16:25
联系:

Re: 再谈 linux bug #59695 (High frequency of load/unload cycles)

#7

帖子 hetao » 2009-12-09 14:53

没用斜坡加载的时候磨损会更大,是磁头与盘片之间,不过没用斜坡技术的硬盘磁头是不敢随便收回去的所以没这个问题,硬盘厂商以为用了斜坡硬盘就安全了,谁知Ubuntu对硬盘的使用频率正好在这个抖动线上
这个问题涉及到两个方面,一个是斜坡技术,另一个是节能技术,官方的解决办法过于保守,把节能降躁也给关了,其实这在普通硬盘上都能用。
回复