flash写保护原理_为什么固态会掉盘?著名的30分钟大法修复是什么原理?

固态硬盘SSD在遭遇断电时容易出现掉盘现象,主要原因是FTL表损坏。FTL表是逻辑地址与物理地址的映射,用于寿命均衡和坏块管理。当FTL表在内存中未及时写回Flash时,突然断电会导致FTL丢失。高端SSD采用电容应急供电保护FTL,但低端产品可能因此受损。通过重建FTL表,SSD有机会恢复正常,这一过程可能需要几分钟到几十分钟。30分钟大法就是在断电后等待一段时间,给予SSD主控足够时间重建FTL,从而修复问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

d2d102bc6970fc60c313c035a6d0cd5c.png

如果现代的台式机或者笔记本忽然断电(Power Loss),你觉得哪个硬件部分容易损坏?出乎大多数人的意料的是,固态硬盘SSD最脆弱,容易出现掉盘的现象,也就是BIOS和操作系统不认盘的情况。今天我们就一起来Deep Dive一下原理和应对之道,并对有趣的“30分钟大法”的原理和是否正确进行一些分析。

FTL损坏和丢失

我介绍了很多SSD的原理,其中最重要的根本是对FTL的理解。SSD甚至SD卡、手机存贮的很多问题和解决方案都或多或少地和它相关,再怎么强调都不为过。为了理解后面的原理,我们先来简单回顾一下FTL:我们的写(Program)Flash操作只能把bit 1改成0,而不能从0改成1. 即我们可以把11110000改成11000000,但不能改成11111111。即有点像逻辑and操作(我们可以通过NAND这个名字联想记忆一下)。那么如何把0改回1呢?这就要靠擦除操作了,但是别忘了,NAND flash的寿命是由其擦写次数决定的(P/E数 (Program/Erase Count)来衡量的),频繁的擦除慢慢的会产生坏块,如FAT分区的文件分配表(老狼:FAT文件系统与UEFI)等。为了能够做到寿命均衡(Wear Levelling)和对坏块的遮蔽,就需要一个逻辑地址(LBA,logical block addresses )和物理地址(PBA, physical block addresses)的对应表,对外界暴露逻辑块,里面是具体是哪个物理块,固件自己做主,这个对应关系表就是FTL表:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值