论文摘要
相对于CPU计算能力的提高、网络带宽加大,存储设备的发展已经跟不上计算机主要部件和网络发展的速度,以至于存储设备已经成为现代基于云计算的计算机系统的瓶颈。伴随着基于半导体技术的固态硬盘的出现,为存储行业提供了新的选择,并注入了新的活力。在便携式设备中,固态硬盘已经变成主要的存储设备,而在桌面设备领域,也出现了固态硬盘逐渐代替传统机械硬盘的趋势。固态硬盘有许多机械硬盘没有的特性,如更快的单元读写速度、更低的能耗、更强的移动可靠性等,然而,由于Flash介质固有的特点,基于Flash介质的固态硬盘也有许多不尽如人意之处,如写寿命较短,读写时间不均衡、必须擦除之后才能写等。这些缺点造成固态硬盘写性能,尤其是随机写性能低下,严重阻碍了固态硬盘在桌面领域的应用,因为在桌面领域,尤其是服务器,存在大量的随机写请求。为了提高固态硬盘随机写性能,对FTL层中的映射算法及垃圾回收算法进行深入的研究是非常有必要的。在FTL层之上加入缓存层,依据映射算法和垃圾回收算法的特点,在缓存层中重构随机写入固态硬盘的数据,使数据连续成块地写入FTL层,除了有效提高写性能外,还能减少固态硬盘中块的擦除次数,延长固态硬盘的寿命。通过计算机仿真方法对设计的缓存算法进行了测试,测试结果显示,加入缓存层之后,吞吐率显著提升,擦除次数明显减少。另外,与FAB缓存算法相比,我们实现的算法在现实应用的trace测试中,效果也更好。