![硬盘性能出现单个缓慢点,但是没有坏扇区?](https://linux22.com/image/1304526/%E7%A1%AC%E7%9B%98%E6%80%A7%E8%83%BD%E5%87%BA%E7%8E%B0%E5%8D%95%E4%B8%AA%E7%BC%93%E6%85%A2%E7%82%B9%EF%BC%8C%E4%BD%86%E6%98%AF%E6%B2%A1%E6%9C%89%E5%9D%8F%E6%89%87%E5%8C%BA%EF%BC%9F.png)
我使用三星 1.5TB 硬盘(EcoGreen F2),最近清理了很多空间。所以写入了 500GB,其余的是空闲的。现在,当我复制一些大文件(GB 大小)时,硬盘显示全速高达 100MB/s,但在某些地方速度会严重下降到 2-5MB/s。
我检查过,数据可以成功写入驱动器。但是这些位置的速度相当慢。当我写入文件时,可能会有 10、20GB 的全速区域,然后速度再次变慢。问题是,没有坏扇区(根据 SMART 数据),而且由于数据实际上是正确写入的,硬盘不太可能将这些区域标记为坏扇区。
是否有可能提高整体速度或让驱动器仅将错误点标记为错误,以便下一次复制过程更快?目前,我正在使用 Windows 7 上的 HD Tune 运行错误检查。但我不确定它会改变什么。
答案1
这里有几个因素在起作用...如果没有关于驱动器机制、状态和磁盘上已有内容的更多信息,我只能猜测一些事情。
首先,将大型文件复制到磁盘时,您不太可能获得 500gb 的单个块(连续)。更有可能的是,您最终会在整个磁盘上获得一些零散的空间段(如果不是很多的话)。因此,在写入文件时...它必须在磁盘的不同区域之间来回工作。
其次,如今大多数驱动器都有多个盘片和磁头,它们必须共享一个轴才能访问磁盘的各个部分。例如,如果您的文件被写入第一个盘片顶部的前几个块……然后下一个块被分配到第二个盘片上靠近磁盘中间的位置……您最终可能会发现磁盘磁头必须在两个段之间来回跳转(这会增加更多在扇区之间“搜索”的时间),而这个问题因“总线主控”等技术而变得更加严重,这些技术试图变得聪明并填满所有可用的总线带宽……通过尝试以“多线程”方式进行读/写。例如,写入操作被分解为同时进行的 5 个写入操作……第一个写入块 1-10,第二个写入块 11-20……等等。不幸的是,基于盘片的硬盘驱动器必须花时间在每个扇区之间尝试写入和验证数据……因此,这种技术实际上可能造成的问题比它能解决的问题更多。另一方面,SSD 几乎没有寻道时间......因此它们的表现会好得多。
第三,这是一个“绿色”驱动器……它试图节省能源。根据设计,它们会不时“进入休眠”状态以降低功耗,并在访问磁盘时立即重新旋转。曾经出现过这样的问题:驱动器决定进入休眠状态(出于随机的未知原因),然后必须重新唤醒。旋转时间和旋转时间会导致读/写作业的巨大延迟。您的硬盘驱动器可能有固件可以解决此问题……或者您可能需要联系制造商并让他们解决此问题。(对于“个人/消费者”来说,这几乎是不可能的)
第四,是的,盘片可能会坏掉……但坏到不足以将扇区标记为坏扇区。大多数驱动器都内置了一些模糊逻辑,可以写入磁盘……返回并读取写入的内容以验证写入是否正确……如果没有……则再次写入……然后再次验证……如果失败次数太多,它最终会将该扇区标记为坏扇区。但如果第二次尝试成功……它暂时还不会被标记为“坏扇区”。
我希望这能对你有所帮助...但我承认,这还远远不够。还有许多其他原因可能导致基于盘片的磁盘成为性能的“瓶颈”。
答案2
当您移除硬盘上的大量松散项时,硬盘上会到处留下非连续的空洞。在硬盘上,顺序写入和顺序访问比随机访问快很多倍。MFT 保留可能正在使用或未使用,某些程序甚至系统写入的不连续混乱也会使其变得混乱。
至少进行一次完整的空间整合碎片整理,或者进行一次彻底的重新排序碎片整理,都会留下大量空白。根据这些程序(再次),它们会找到一个洞并填补它,造成另一个无序混乱。最好在晚上某个时候进行碎片整理。完整碎片整理的妙处在于,如果您需要恢复数据,那么它的顺序性会非常方便。所以痛苦是有目的的 :-)
如果是坏块和寻道错误,那么 SMART 测试应该会显示发生了什么。
如果速度低至 2-5MB/s,也请参阅 Comp Wizs 的答案。
对于其他所有东西,都有“无用”的碎片整理,任何碎片整理过的人都知道,当你追求最大速度时,它没有什么无用的。它是连续的,它有助于预读,它可以提高恢复能力,这只是让它成为一个非常耗时的过程,最好在你不在场的时候完成。
解决方法:真正彻底的碎片整理还可以包括使用 fsutil 刷新/清除日志和资源混乱。