发明名称 一种固态盘的闪存转换层的实现方法
摘要 本发明公开了一种固态盘的闪存转换层的实现方法,包括:接收文件系统发出的读写请求,该读写请求对应于逻辑地址为K的页面,判断逻辑地址K是否在缓存映射表中命中,如果不是,则判断缓存映射表中是否能够再容得下一次调入缓存映射表的映射关系数目n,如果不能够容得下,则找出在缓存映射表中找出一个最近最少使用的一个映射关系的逻辑页号Victim_Num,在缓存映射表中找出和Victim_Num的映射关系在映射表中存储在同一页中的所有逻辑页号,并从这些逻辑页号对应的映射关系中找出n个最近最少使用的映射关系,根据Victim_Num在全局转换目录中寻找到相应的映射关系。本发明读写效率更高,并提高了系统的性能,延长固态盘的寿命。
申请公布号 CN102981963B 申请公布日期 2015.12.02
申请号 CN201210427484.9 申请日期 2012.10.30
申请人 华中科技大学 发明人 吴非;谢长生;周健;朱胜本;陈克
分类号 G06F12/02(2006.01)I;G06F3/06(2006.01)I 主分类号 G06F12/02(2006.01)I
代理机构 华中科技大学专利中心 42201 代理人 朱仁玲
主权项 一种固态盘的闪存转换层的实现方法,其特征在于,包括以下步骤:(1)接收文件系统发出的读写请求,该读写请求对应于逻辑地址为K的页面,其中K为正整数;(2)判断逻辑地址K是否在缓存映射表中命中,如果是则进入步骤(13),否则进入步骤(3);(3)判断缓存映射表中是否能够再容得下一次调入缓存映射表的映射关系数目n,如果能够容得下,则转步骤(11),否则转步骤(4);(4)在缓存映射表中找出一个最近最少使用的一个映射关系的逻辑页号Victim_Num;(5)在缓存映射表中找出和逻辑页号Victim_Num的映射关系在映射表中存储在同一页中的所有逻辑页号,并从这些逻辑页号对应的映射关系中找出n个最近最少使用的映射关系;(6)根据逻辑页号Victim_Num在全局转换目录中寻找到相应的映射关系,具体而言,用逻辑页号Victim_Num整除512后为E,余数为F,说明逻辑页号为逻辑页号Victim_Num的映射关系存储在逻辑映射页号为E、偏移为F的位置,通过全局转换目录查找到逻辑映射页号为E的页面存储在物理映射页号为B的位置;(7)在映射表中找到物理映射页号为B的页面,并和缓存映射表中的映射关系相比较,判断是否有逻辑页号相同但是对应的物理页号不同,如果有,则转步骤(8);否则转步骤(10);(8)在映射表中找到一个可用页,其物理映射页号为C,把物理映射页号B出现在缓存映射表中的映射关系更新到这个可用页C中,并把物理映射页号B中没有出现在缓存映射表中的映射关系复制到这个可用页C中,将物理映射页号为B的页面设置为无效,等待回收,并将物理映射页号为C的页面由可用设置为有效;(9)在全局转换目录中将逻辑映射页号E对应的物理映射页号B更改为C;(10)在缓存映射表中去掉n个最近最少使用的页面映射关系;(11)确定逻辑地址K整除512后为G,余数为H,并在全局转换目录中找到逻辑映射页号G对应的物理映射页号M;(12)在映射表中找到物理映射页号为M的页面,再找到其偏移H的映射关系,将其和后面的在同一页中的连续n‑1条映射关系调出来,加入到缓存映射表中;(13)在缓存映射表中找到逻辑页号为K的记录,得到其物理页号J;(14)在数据块中找到物理页号为J的页面,并将该页面的地址返回给文件系统。
地址 430074 湖北省武汉市洪山区珞喻路1037号