【技术实现步骤摘要】
一种基于Trim指令的SSD表更新方法、系统及装置
[0001]本专利技术涉及存储领域,特别是涉及一种基于Trim指令的SSD表更新方法、系统及装置。
技术介绍
[0002]SSD(Solid State Disk,固态硬盘)是一种用来存储用户数据的设备。SSD由控制器、NAND(闪存)介质等模块组成,SSD将用户数据存储在NAND介质中。
[0003]NAND介质具有不可复写的特性,意思是说,在NAND介质被擦除前,如果其中一个地址被写入过数据,则此地址不能再次被写入数据,直到NAND介质被擦除过之后才可以再次被写入数据。而且,在NAND介质的特性下要求数据只能按照page(页)写入、按照block(块)擦除,SSD中有多个物理block,一个block内有多个page。
[0004]用户按照SSD的LBA(Logical Block Address,逻辑地址)写入数据,但实际上用户写入的数据进入SSD之后,会由SSD为LBA分配一个空闲的PBA(Physics Block Address,物理地址,即NA ...
【技术保护点】
【技术特征摘要】
1.一种基于Trim指令的SSD表更新方法,其特征在于,包括:预先为SSD设置一个L2p表,并将所述SSD的LBA空间划分为多个LBA区段,且为每个LBA区段均设置一个VDFC表;其中,每个LBA区段对应的VDFC表均表征对应LBA区段下SSD内所有PBA的有效性;在接收到包含LBA无效范围的Trim指令时,将多个LBA区段划分为被所述LBA无效范围完全覆盖的第一LBA区段和未被所述LBA无效范围完全覆盖的第二LBA区段;将所述第一LBA区段对应的VDFC表中所有PBA的有效值进行统一擦除,并通过所述L2p表获取与所述第二LBA区段的LBA无效范围对应的目标PBA,且将所述第二LBA区段对应的VDFC表中所述目标PBA的有效值清零;将所有LBA区段对应的VDFC表进行汇总,得到整个SSD对应的VDFC表。2.如权利要求1所述的基于Trim指令的SSD表更新方法,其特征在于,将所述SSD的LBA空间划分为多个LBA区段的过程,包括:根据所述SSD的磁盘容量、内存可用数量及Trim操作速度要求,确定所述SSD的LBA空间可划分的最小区段数量和最大区段数量;将所述SSD的LBA空间划分为N个LBA区段;其中,N为正整数且所述最小区段数量≤N≤所述最大区段数量。3.如权利要求1所述的基于Trim指令的SSD表更新方法,其特征在于,所述基于Trim指令的SSD表更新方法还包括:在将所述第一LBA区段对应的VDFC表中所有PBA的有效值进行统一擦除的同时,将所述L2p表中与所述第一LBA区段的LBA无效范围对应的地址映射关系进行擦除;在通过所述L2p表获取与所述第二LBA区段的LBA无效范围对应的目标PBA之后,将所述L2p表中与所述第二LBA区段的LBA无效范围对应的地址映射关系进行擦除。4.如权利要求1所述的基于Trim指令的SSD表更新方法,其特征在于,将所有LBA区段对应的VDFC表进行汇总,得到整个SSD对应的VDFC表的过程,包括:将第2个VDFC表与第1个VDFC表对应累加,得到第1个VDFC累加表;将第n+2个VDFC表与第n个VDFC累加表对应累加,直至最后一个VDFC表累加完,得到整个SSD对应的VDFC表;其中,n为正整数。5.如权利要求1所述的基于Trim指令的SSD表更新方法,其特征在于,所述基于Trim指令的SSD表更新方法还包括:在所述SSD首次使用时,将所述L2p表初始化为全0的状态,并将每个VDFC表初始化为全最大值的状态。6.如权利要求1
‑
5任一项所述的基于Trim指令的SSD表更新方法,其特征在于,所述基于Trim指令的SSD表更新方法还包括:在接收到读写请求时,通过查询所述L2p表判断预写的目标L...
【专利技术属性】
技术研发人员:张博,
申请(专利权)人:山东英信计算机技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。