最近工作中遇到一个问题,系统还原慢,32G的Emmc,一次系统还原的时间在5~20分钟左右。查看打印信息,发现在recovery执行到Format data分区时,卡住,很慢。data分区无数据时,稍快一点,data分区数据填满时,Format data分区的时间超长(20分钟左右)。
经过多次实验调试,发现同一份软件,不同型号Emmc,系统还原时间明显有差异,所以怀疑是不同Emmc固件的原因,随后对2种型号的Emmc(三星的一款、SanDisk的一款)做了MMC erase测试,测试数据表明两款在MMC erase clean block差异较小,但在MMC erase dirty block时,其中一款速度降低了大约80%。
后与Emmc厂家交涉,因该Emmc型号较老,已停产,很难推动厂家更新固件。后讨论Format的方式由secure erase改为discard方式。
emmc安全擦除执行的是secure erase的操作; 非安全擦除执行的是discard操作。 两者的差异是这样的: secure erase在物理上做擦除; discard只做逻辑上的擦除,类似擦除索引文件,但不会擦除器件上的每个物理位。 Secure erase优势主要体现在被擦除数据安全性上,数据恢复难度比discard大很多。 Discard执行会比secure erase快很多。
最后附上修改:
[Recovery] 系统还原慢-- secure erase和discard erase
网友评论