The invention provides a method and system for managing flash memory buffer, a cold chain, cold chain and clean dirty hotlinked table three lists in this buffer, clean dirty data pages, page data management respectively cold and thermal data, are laid off in the hot data, according to the head from the table to table tail in order to determine whether to severance data pages through life value, life value contains the number of visits, novelty and read and write the three factors of the cost value, considering the frequency, the data page is accessed be accessed again and the probability of flash memory read and write delay, thus, improve the hit rate of data access. To improve the performance of the cache.
【技术实现步骤摘要】
一种闪存缓存区的管理方法及系统
本专利技术涉及存储系统领域,特别涉及一种闪存缓存区的管理方法及系统。
技术介绍
随着大数据应用的不断发展,对存储介质的性能的要求也越来越高,闪存是新型非易失存储介质的代表,具有读写速度高、低功耗和抗震等优点,广泛应用于消费类电子产品和企业级存储系统中。LRU(LeastRecentlyUsed)是最基本的缓存算法,即优先替换最近最少使用的缓存数据页,在该算法中,根据数据页的新颖度将数据页链接到链表中,链表的表头一端为较早访问的数据页,链表的表尾一端为最近访问的数据页,在进行缓存数据页淘汰时,从表头一端进行淘汰。然而,该LRU算法,很难做到淘汰最近最少使用的数据页,而且,闪存具有读写不对称的特点,在写操作之前需要进行擦除操作,写操作相对读操作需要更长时间的代价,因此,在缓存管理中,希望尽量减少对闪存的写操作,以提高闪存操作的整体性能。基于闪存的特点,对LRU算法做了一系列的改进,在一个现有的改进的LRU算法中,在缓存区中分别建立冷干净链表、冷脏链表和热链表,在冷干净链表中存放只进行了一次读操作的数据页,该数据页称为冷干净页,在冷脏链表 ...
【技术保护点】
一种闪存缓存区的管理方法,其特征在于,包括:根据对闪存的访问特性,分别在缓存区建立冷干净链表、冷脏链表和热链表,冷干净链表中存放只进行了一次读操作的数据页,冷脏链表中存放只进行了一次写操作的数据页,热链表中存放冷干净链表或冷脏链表中的数据页被再次访问后而迁移的数据页,上述链表的数据页设置有读写标志以及访问次数;当需要从热链表遣散数据页到冷干净链表或冷脏链表时,进行遣散处理,遣散处理具体包括:按照从表头至表尾顺序,依次判断热链表中的数据页的生命值是否小于预定值或访问次数为1,若是,则根据数据页的读写标志将数据页遣散至冷干净链表或冷脏链表,若否,则将数据页的访问次数减1;其中, ...
【技术特征摘要】
1.一种闪存缓存区的管理方法,其特征在于,包括:根据对闪存的访问特性,分别在缓存区建立冷干净链表、冷脏链表和热链表,冷干净链表中存放只进行了一次读操作的数据页,冷脏链表中存放只进行了一次写操作的数据页,热链表中存放冷干净链表或冷脏链表中的数据页被再次访问后而迁移的数据页,上述链表的数据页设置有读写标志以及访问次数;当需要从热链表遣散数据页到冷干净链表或冷脏链表时,进行遣散处理,遣散处理具体包括:按照从表头至表尾顺序,依次判断热链表中的数据页的生命值是否小于预定值或访问次数为1,若是,则根据数据页的读写标志将数据页遣散至冷干净链表或冷脏链表,若否,则将数据页的访问次数减1;其中,生命值的权重因素包括访问次数、新颖度和读写代价,新颖度为在当前时刻数据页被再次访问的概率,数据页最近一次访问的时刻离当前时刻越近,则被再次访问的概率越高,读写代价中读操作的代价值小于写操作时代价值;当缓冲区的使用量达到替换阈值时,从缓冲区替换数据页。2.根据权利要求1所述的管理方法,其特征在于,还包括冷数据区大小动态调整,具体包括:当从冷干净链表和冷脏链表替换数据页时,分别记录从冷干净链表和冷脏链表替换数据页的次数,当替换比值大于闪存的写读代价比时,扩展冷干净链表的大小并减小冷脏链表的大小;当替换比值小于闪存的写读代价比时,减小冷干净链表的大小并扩展冷脏链表的大小,其中,替换比值为从冷干净链表替换数据页的次数与从冷脏链表替换数据页的次数的比值,写读代价比为闪存的读延迟与写延迟之和与读延迟的比值。3.根据权利要求1所述的管理方法,其特征在于,当缓冲区的使用量达到替换阈值时,从缓冲区替换数据页的步骤包括:当缓冲区的使用量达到替换阈值时,判断冷干净链表的大小是否大于第一阈值,若是,则从冷干净链表的表头淘汰数据页;若否,判断冷脏页链表的大小是否大于第一阈值,若是,则从冷脏链表的表头淘汰数据页;若否,判断冷干净页链表的大小是否大于第二阈值,若是,则从冷干净链表的表头淘汰数据页;若否,判断冷脏页链表的大小是否大于第二阈值,若是,则从冷脏链表的表头淘汰数据页,其中,第一阈值大于第二阈值;若否,则从热链表淘汰数据页。4.根据权利要求3所述的管理方法,其特征在于,从热链表淘汰数据页的步骤包括:按照从热链表的表头至表尾顺序,依次判断热链表中的数据页的生命值是否小于预定值或访问次数为1,若是,则淘汰数据页;若否,则将数据页的访问次数减1。5.根据权利要求4所述的管理方法,其特征在于,所述管理方法采用多线程实现,包括主线程和一个子线程,子线程用于进行遣散处理、从缓冲区替换数据页以及冷数据区大小动态调整,主线程在接收到访问请求后,判断是否需要调用的子线程并激活子线程。6.根据权利要求1-5中任一项所述的管理方法,其特征在于,新颖度R的计算公式如下:其中,Tr为数据页最近一次被访问的时刻,Tf为数据页首次被访问的时刻,Tc为当前时刻。7.根据权利要求1-5中任一项所述的管理方法,其特征在于,写操作的代价值为读操作时的代价值为1,其中,Cw为闪存的写延时,Cr为闪存的读延时。8.一种闪存缓存区的管理系统,其特征在于,包括:根据对闪存的访问特性分别在缓存区建立的冷干净链表、冷脏链表和热链表,其数据页设置有读写标志以及访问次数,冷干净链表中存放只进行了一次读操作的数据页,冷脏链...
【专利技术属性】
技术研发人员:王力玉,陈岚,
申请(专利权)人:中国科学院微电子研究所,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。