5 o& Y% G- h& Q! B3 [& P 1、强行断电或者强制关机对硬盘的硬件是没有影响的,但是硬盘能利用断电后碟片的旋转能使磁头归位。但是对数据的完整性会产生影响。一般来说,硬盘为增强写入性能而会默认开启写入缓存设置,异常断电后硬盘的写入会终止,缓存数据也遗失,数据完整性可能受影响。这也是为啥有些小伙伴强制断电之后再开机后不认盘的主要原因。不过有个带电静置三十分钟大法可救。还有一点需要注意的是写入时断电,很大概率导致坏块数增加,不过好在固态硬盘规划时基本都有冗余块用来替换。 " V4 _ L2 ?" o* S5 N ) U7 C) J# \2 v4 k* D 2、闪存颗粒在Program过程中断电,可能造成一些page damage而不能再运用了;这些损伤会通过内部控制器的算法来绕过,从而避免SSD变砖,但是不可避免的SSD寿命会受到一些影响。 $ O% f7 p$ k' f1 ^/ b( v 4 I5 Y t' M6 n( I$ s4 c+ K# `* I- A& F* B2 J( l
所以,接下来我们需要先了解机械硬盘预防断电数据遗失的原理,在这里小编给大家举例子:Toshiba在最新的10TB企业级机械硬盘上增加了一颗原本固态硬盘上才会运用的闪存芯片。在断电时借助盘片旋转的惯性发电,供主控将DRAM缓存内数据转移到闪存中安全保存,完美实现了断电数据不遗失,规划非常巧妙。 # A b [( b4 G- `* F 1 e; K3 ^1 H- l! @% j 对于企业级固态硬盘一般会增加断电保护电容供电来对缓存内数据的紧急写入。但这个操作使得电容寿命限制较多,部分可能存在闪存之前破坏以至于造成不可估量的问题,所以在家用固态硬盘中没有设置这个功能。而固态硬盘的DRAM缓存内主要存放FTL闪存映射表,只支持最多16MB容量用来短时缓存用户读写的数据,随着Flush指令的下达,这部分数据就会写入到NAND闪存中永久保存下来。 6 s3 L& A# q# O$ E* `6 _9 K2 D g7 J6 Q9 ?/ w# [$ p
, G: X+ `& ]1 L Flush指令是由Win系统自动定时发送的,会强制固态硬盘缓存区内数据实际写入到闪存永久保存。下面以ToshibaQ200 240G固态硬盘来进行测验。Q200是Toshiba原厂8通道MLC闪存SSD,当前性价比最高的原厂固态硬盘之一。 6 B' F9 B2 H ]5 ~& p4 g) W: K: T3 }5 A2 ~( y& E
运用名为sync的手动Flush软件来检验一下Flush指令的作用:* L# a, u/ X6 L' `
3 i" S4 Y3 T0 h$ z2 F; T! R+ m4 {5 b4 h; ] v. U8 i
文件复制完成后立刻断电,重新开机后文件MD5会出错,因为还有部分数据留在缓存中没有实际写入闪存:# w- k) m& P. |- T6 c- j+ c