针对饥饿鲨TR150 240G的异常断电测试继续,这次与上期间隔时间较长,主要是因为每个测试循环的写入时间延长。
TEST6:垃圾回收过程断电
之前测了很多写入过程断电的情形,这次来检验TR150在写入与后台垃圾回收同时进行情况下,如果发生异常断电是否会影响盘上原有静态文件的完整性。和前面几个测试一样,盘上预留了60个2GB大小的静态文件,用于在异常断电测试结束后检验盘上数据完整性。
为了让饥饿鲨TR150长期处于垃圾回收工况,让IOMeter测试文件将盘内除静态测试文件之外的全部空间填满,进行4K QD32随机写入。每个测试循环进行600秒随机写入,然后切断饥饿鲨TR150的电源。本项异常断电测试共进行1575次,测试中共产生19118GB主机写入量。
测试过后校验盘上60个静态文件的MD5值,所有文件完整,没有因垃圾回收过程中异常断电造成破坏:
TEST7:写入数据并发送Flush指令后断电,检查写入数据的完整性
固态硬盘接收到Flush Cache指令后应该立刻将缓冲区数据实际写入闪存,以保证数据安全。由于饥饿鲨TR150并不具备完整断电保护功能,所以之前测试的项目的检验目标都是盘上原有静态数据,而非断电时刚写入的数据,上一期中有网友提议增加Flush指令后数据写入完整性的测试,这里我使用来自微软的一个小工具sync,来要求操作系统发送Flush指令。
测试使用脚本控制,从系统盘中复制一个2GB大小的测试文件到饥饿鲨TR150 240G,再使用sync /r X:发出Flush指令,随后立即切断TR150的电源。停电5秒后恢复供电,由脚本循环检测,当TR150被系统识别后,立刻使用certutil –hashfile命令来生成TR150上测试文件的MD5值并记录到LOG文件当中。完成MD5计算和记录之后删除TR150上的测试文件,延时45秒等待Trim完成工作,再从系统盘中重新复制测试文件继续测试循环。
本项测试共进行了1072次,其中有4次没有正常生成MD5信息,其他1068次记录显示TR150在接收到Flush指令后将缓存数据正确写入了闪存。
至于4次程序异常未能生成MD5校验信息,根据后来的验证应该是由于TR150在通电后没有及时响应读写请求造成的,具体来说就是脚本检测到了盘上的测试文件,然后开始运行certutil,但由于某些原因这时候TR150又短暂失去响应,造成程序执行失败。由于整个脚本运行过程并没有中断,可知TR150识别后又失去响应的状态持续很短,很快恢复正常。
截至目前,饥饿鲨TR150 240G已经经历各种异常断电5884次。欢迎大家继续提出更多有关异常断电的测试情景设想。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|