CN105740170B - 一种缓存脏页刷写方法及装置 - Google Patents

一种缓存脏页刷写方法及装置 Download PDF

Info

Publication number
CN105740170B
CN105740170B CN201610041801.1A CN201610041801A CN105740170B CN 105740170 B CN105740170 B CN 105740170B CN 201610041801 A CN201610041801 A CN 201610041801A CN 105740170 B CN105740170 B CN 105740170B
Authority
CN
China
Prior art keywords
block device
work object
dirty
dirty page
flashing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610041801.1A
Other languages
English (en)
Other versions
CN105740170A (zh
Inventor
卓保特
施培任
杨善松
赵鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Beijing Electronic Information Industry Co Ltd
Original Assignee
Inspur Beijing Electronic Information Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Beijing Electronic Information Industry Co Ltd filed Critical Inspur Beijing Electronic Information Industry Co Ltd
Priority to CN201610041801.1A priority Critical patent/CN105740170B/zh
Publication of CN105740170A publication Critical patent/CN105740170A/zh
Application granted granted Critical
Publication of CN105740170B publication Critical patent/CN105740170B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0882Page mode

Abstract

本发明公开了一种缓存脏页刷写方法及装置,创建块设备时为每个块设备单独分配内核刷写线程,所述缓存脏页刷写方法包括:每个块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中。可见,在本实施例中,通过为每个块设备分配单独内核刷写线程,可以保证每个块设备的脏页都得到及时的刷写,并且可以为每个块设备指定不同的脏页刷写算法,提高系统脏页刷写的灵活性,提高脏页刷写的并发度,从而提高系统脏页刷写的性能。

Description

一种缓存脏页刷写方法及装置
技术领域
本发明涉及计算机数据存储技术,更具体地说,涉及一种缓存脏页刷写方法及装置。
背景技术
随着数字化时代的到来,在人们的日常生活和科学研究中,越来越多的传统业务开始数字化、网络化,促使数据爆炸式增长,存储系统在整个业务处理系统中的地位也愈发重要,然而源源不断的数据流导致存储系统产生严重的I/O瓶颈问题。计算机系统的性能主要由处理子系统性能和I/O子系统的性能两部分决定。其中CPU的处理速度始终保持了高速的增长,而I/O子系统其存储容量虽然增长较快,但其处理速度的增长远跟不上CPU速度的增长,为解决上述问题,现代计算机系统中,从寄存器、L1/L2高速缓存、内存、闪存,到磁盘/光盘/存储网络,各级存储器硬件组成了一个金字塔结构,越是底层存储容量越大,访问速度也越慢。在操作系统层面通过缓存系统来对金字塔结构的存储硬件进行支持,用户的写操作会先写到内存而不是后端磁盘。内存中的脏数据在一定情况下需要刷写到后端磁盘。目前最通用的缓存脏页刷写方法是创建一定数量的全局内核线程,这些内核线程在需要进行脏页刷写时被唤醒。当某一个块设备脏页数量过多时,会导致一直刷写该块设备,从而其后面的块设备得不到刷写。
因此,如何合理的刷写缓存脏页,保证每个块设备的脏页都能得到及时的刷写是本领域技术人员需要解决的问题。
发明内容
本发明的目的在于提供一种缓存脏页刷写方法及装置,以实现合理的刷写缓存脏页,保证每个块设备的脏页都能得到及时的刷写。
为实现上述目的,本发明实施例提供了如下技术方案:
一种缓存脏页刷写方法,创建块设备时为每个块设备单独分配内核刷写线程,所述缓存脏页刷写方法包括:
每个块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中。
优选的,所述创建块设备时为每个块设备单独分配内核刷写线程之后,还包括:
为每个块设备单独分配定时器和work链表。
优选的,所述每个块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中,包括:
检测块设备的脏页比例是否超过预设阈值;
若是,则封装第一work对象,并将所述第一work对象添加至所述块设备的work对象链表;其中,所述第一work对象包括待刷写的脏页数量;
唤醒所述块设备的内核刷写线程,并根据所述第一work对象将所述块设备内的脏页刷写到磁盘中。
优选的,所述每个块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中,包括:
以预定时长为间隔调用定时器回调函数;
封装第二work对象,并将所述第二work对象添加至所述块设备的work对象链表;其中,所述第二work对象包括待刷写的脏页保存时长阈值;
唤醒所述块设备的内核刷写线程,并根据所述第二work对象将所述块设备内的脏页刷写到磁盘中。
优选的,所述每个块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中,包括:
检测系统空闲页比例是否低于预定比例值;若是,则依次检查全局块设备链表中的块设备是否有脏页,并将有脏页的块设备作为目标块设备;
封装第三work对象,并将所述第三work对象添加至所述目标块设备的work对象链表;其中,所述第三work对象包括待刷写的脏页数量;
唤醒所述目标块设备的内核刷写线程,并根据所述第三work对象将所述目标块设备内的脏页刷写到磁盘中。
一种缓存脏页刷写装置,包括:
第一分配模块,用于在创建块设备时为每个块设备单独分配内核刷写线程;
脏页刷写模块,用于在块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中。
优选的,还包括:
第二分配模块,用于为每个块设备单独分配定时器和work链表。
优选的,所述脏页刷写模块,包括:
第一检测单元,用于检测块设备的脏页比例是否超过预设阈值;若是,则触发第一封装单元;
所述第一封装模块,用于封装第一work对象;其中,所述第一work对象包括待刷写的脏页数量;
第一添加模块,用于将所述第一work对象添加至所述块设备的work对象链表,并唤醒所述块设备的内核刷写线程;
第一刷写单元,用于根据所述第一work对象将所述块设备内的脏页刷写到磁盘中。
优选的,所述脏页刷写模块,包括:
第二封装模块,用于以预定时长为间隔调用定时器回调函数后,封装第二work对象;其中,所述第二work对象包括待刷写的脏页保存时长阈值;
第二添加模块,用于将所述第二work对象添加至所述块设备的work对象链表,并唤醒所述块设备的内核刷写线程;
第二刷写单元,用于根据所述第二work对象将所述块设备内的脏页刷写到磁盘中。
优选的,所述脏页刷写模块,包括:
第二检测单元,用于检测系统空闲页比例是否低于预定比例值;若是,则依次检查全局块设备链表中的块设备是否有脏页,并将有脏页的块设备作为目标块设备;
第三封装模块,用于封装第三work对象,其中,所述第三work对象包括待刷写的脏页数量;
第三添加模块,用于将所述第三work对象添加至所述目标块设备的work对象链表,唤醒所述目标块设备的内核刷写线程;
第三刷写单元,用于根据所述第三work对象将所述目标块设备内的脏页刷写到磁盘中。
通过以上方案可知,本发明实施例提供的一种缓存脏页刷写方法及装置,创建块设备时为每个块设备单独分配内核刷写线程,所述缓存脏页刷写方法包括:每个块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中。可见,在本实施例中,通过为每个块设备分配单独内核刷写线程,可以保证每个块设备的脏页都得到及时的刷写,并且可以为每个块设备指定不同的脏页刷写算法,提高系统脏页刷写的灵活性,提高脏页刷写的并发度,从而提高系统脏页刷写的性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例公开的一种块设备结构示意图;
图2为本发明实施例公开的一种缓存脏页刷写装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种缓存脏页刷写方法及装置,以实现合理的刷写缓存脏页,保证每个块设备的脏页都能得到及时的刷写。
本发明实施例提供的一种缓存脏页刷写方法,在创建块设备时为每个块设备单独分配内核刷写线程,所述缓存脏页刷写方法包括:
每个块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中。
具体的,在本实施例中,在创建块设备时为每个块设备单独分配内核刷写线程,因此每个快设备可以根据本身缓存脏页的总量及时的将脏页刷写入磁盘中,这样就不会导致由于某个块设备一直占用刷写线程,而导致其它块设备得不到刷写的问题,从而从整体上提高了脏页刷写速度。
本发明实施例提供的一种缓存脏页刷写方法,创建块设备时为每个块设备单独分配内核刷写线程,所述缓存脏页刷写方法包括:每个块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中。可见,在本实施例中,通过为每个块设备分配单独内核刷写线程,可以保证每个块设备的脏页都得到及时的刷写,并且可以为每个块设备指定不同的脏页刷写算法,提高系统脏页刷写的灵活性,提高脏页刷写的并发度,从而提高系统脏页刷写的性能。
基于上述实施例,所述创建块设备时为每个块设备单独分配内核刷写线程之后,还包括:
为每个块设备单独分配定时器和work链表。
参见图1,在块设备驱动创建块设备对象时,为每个块设备创建一个内核刷写线程100、一个超时定时器200和一个work链表300,并将块设备加入到全局块设备链表。其中内核刷写线程的回调函数,不同块设备可以指定不同的脏页刷写算法。
其中,所述每个块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中,包括:
检测块设备的脏页比例是否超过预设阈值;
若是,则封装第一work对象,并将所述第一work对象添加至所述块设备的work对象链表;其中,所述第一work对象包括待刷写的脏页数量;
唤醒所述块设备的内核刷写线程,并根据所述第一work对象将所述块设备内的脏页刷写到磁盘中。
具体的,在有用户写该块设备时,如果检测到该块设备的脏页超过一定阈值,则创建一个work对象,work对象指明要刷写的脏页数,添加到块设备的work链表,并唤醒块设备的内核刷写线程,执行该work,将该块设备内相应的脏页刷写到磁盘中。
其中,所述每个块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中,包括:
以预定时长为间隔调用定时器回调函数;
封装第二work对象,并将所述第二work对象添加至所述块设备的work对象链表;其中,所述第二work对象包括待刷写的脏页保存时长阈值;
唤醒所述块设备的内核刷写线程,并根据所述第二work对象将所述块设备内的脏页刷写到磁盘中。
具体的,块设备的定时器在创建时即被激活,每一次到时会执行定时器回调函数,在回调函数中会创建一个work对象,work对象指明超过多长时间的脏页需要刷写,添加到块设备的work链表,并唤醒块设备的内核刷写线程,执行该work,将该块设备内相应的脏页刷写到磁盘中。
其中,所述每个块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中,包括:
检测系统空闲页比例是否低于预定比例值;若是,则依次检查全局块设备链表中的块设备是否有脏页,并将有脏页的块设备作为目标块设备;
封装第三work对象,并将所述第三work对象添加至所述目标块设备的work对象链表;其中,所述第三work对象包括待刷写的脏页数量;
唤醒所述目标块设备的内核刷写线程,并根据所述第三work对象将所述目标块设备内的脏页刷写到磁盘中。
具体的,若系统的内存分配模块发现系统空闲内存不足时,会遍历全局的块设备链表,对有脏页的块设备创建一个work对象,指明要刷写的脏页数,添加到块设备的work链表,并唤醒块设备的内核刷写线程。然后再检查下一个块设备,直到系统空闲内存页达到一定数量。
本发明实施例提供的一种缓存脏页刷写方法及装置,创建块设备时为每个块设备单独分配内核刷写线程,所述缓存脏页刷写方法包括:每个块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中。可见,在本实施例中,通过为每个块设备分配单独内核刷写线程,可以保证每个块设备的脏页都得到及时的刷写,并且可以为每个块设备指定不同的脏页刷写算法,提高系统脏页刷写的灵活性,提高脏页刷写的并发度,从而提高系统脏页刷写的性能。
下面对本发明实施例提供的一种缓存脏页刷写装置进行介绍,下文描述的一种缓存脏页刷写装置与上文描述的一种缓存脏页刷写方法可以相互参照。
参见图2,本发明实施例提供的一种缓存脏页刷写装置,包括:
第一分配模块100,用于在创建块设备时为每个块设备单独分配内核刷写线程;
脏页刷写模块200,用于在块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中。
本发明实施例提供的一种缓存脏页刷写装置,包括第一分配模块100,用于在创建块设备时为每个块设备单独分配内核刷写线程;脏页刷写模块200,用于在块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中。可见,在本实施例中,通过为每个块设备分配单独内核刷写线程,可以保证每个块设备的脏页都得到及时的刷写,并且可以为每个块设备指定不同的脏页刷写算法,提高系统脏页刷写的灵活性,提高脏页刷写的并发度,从而提高系统脏页刷写的性能。
基于上述实施例,所述缓存脏页刷写装置还包括:
第二分配模块,用于为每个块设备单独分配定时器和work链表。
其中,所述脏页刷写模块,包括:
第一检测单元,用于检测块设备的脏页比例是否超过预设阈值;若是,则触发第一封装单元;
所述第一封装模块,用于封装第一work对象;其中,所述第一work对象包括待刷写的脏页数量;
第一添加模块,用于将所述第一work对象添加至所述块设备的work对象链表,并唤醒所述块设备的内核刷写线程;
第一刷写单元,用于根据所述第一work对象将所述块设备内的脏页刷写到磁盘中。
其中,所述脏页刷写模块,包括:
第二封装模块,用于以预定时长为间隔调用定时器回调函数后,封装第二work对象;其中,所述第二work对象包括待刷写的脏页保存时长阈值;
第二添加模块,用于将所述第二work对象添加至所述块设备的work对象链表,并唤醒所述块设备的内核刷写线程;
第二刷写单元,用于根据所述第二work对象将所述块设备内的脏页刷写到磁盘中。
其中,所述脏页刷写模块,包括:
第二检测单元,用于检测系统空闲页比例是否低于预定比例值;若是,则依次检查全局块设备链表中的块设备是否有脏页,并将有脏页的块设备作为目标块设备;
第三封装模块,用于封装第三work对象,其中,所述第三work对象包括待刷写的脏页数量;
第三添加模块,用于将所述第三work对象添加至所述目标块设备的work对象链表,唤醒所述目标块设备的内核刷写线程;
第三刷写单元,用于根据所述第三work对象将所述目标块设备内的脏页刷写到磁盘中。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (6)

1.一种缓存脏页刷写方法,其特征在于,创建块设备时为每个块设备单独分配内核刷写线程,所述缓存脏页刷写方法包括:
每个块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中;其中,不同块设备指定不同的脏页刷写算法;
所述创建块设备时为每个块设备单独分配内核刷写线程之后,还包括:
为每个块设备单独分配定时器和work链表;
其中,所述每个块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中,包括:
以预定时长为间隔调用定时器回调函数;
封装第二work对象,并将所述第二work对象添加至所述块设备的work对象链表;其中,所述第二work对象包括待刷写的脏页保存时长阈值;
唤醒所述块设备的内核刷写线程,并根据所述第二work对象将所述块设备内的脏页刷写到磁盘中。
2.根据权利要求1所述的缓存脏页刷写方法,其特征在于,所述每个块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中,包括:
检测块设备的脏页比例是否超过预设阈值;
若是,则封装第一work对象,并将所述第一work对象添加至所述块设备的work对象链表;其中,所述第一work对象包括待刷写的脏页数量;
唤醒所述块设备的内核刷写线程,并根据所述第一work对象将所述块设备内的脏页刷写到磁盘中。
3.根据权利要求1所述的缓存脏页刷写方法,其特征在于,所述每个块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中,包括:
检测系统空闲页比例是否低于预定比例值;若是,则依次检查全局块设备链表中的块设备是否有脏页,并将有脏页的块设备作为目标块设备;
封装第三work对象,并将所述第三work对象添加至所述目标块设备的work对象链表;其中,所述第三work对象包括待刷写的脏页数量;
唤醒所述目标块设备的内核刷写线程,并根据所述第三work对象将所述目标块设备内的脏页刷写到磁盘中。
4.一种缓存脏页刷写装置,其特征在于,包括:
第一分配模块,用于在创建块设备时为每个块设备单独分配内核刷写线程;其中,不同块设备指定不同的脏页刷写算法;
脏页刷写模块,用于在块设备接收到脏页刷写指令后,调用本块设备的内核刷写线程,将本设备内的脏页刷写到磁盘中;
第二分配模块,用于为每个块设备单独分配定时器和work链表;
其中,所述脏页刷写模块,包括:
第二封装模块,用于以预定时长为间隔调用定时器回调函数后,封装第二work对象;其中,所述第二work对象包括待刷写的脏页保存时长阈值;
第二添加模块,用于将所述第二work对象添加至所述块设备的work对象链表,并唤醒所述块设备的内核刷写线程;
第二刷写单元,用于根据所述第二work对象将所述块设备内的脏页刷写到磁盘中。
5.根据权利要求4所述的缓存脏页刷写装置,其特征在于,所述脏页刷写模块,包括:
第一检测单元,用于检测块设备的脏页比例是否超过预设阈值;若是,则触发第一封装模块;
所述第一封装模块,用于封装第一work对象;其中,所述第一work对象包括待刷写的脏页数量;
第一添加模块,用于将所述第一work对象添加至所述块设备的work对象链表,并唤醒所述块设备的内核刷写线程;
第一刷写单元,用于根据所述第一work对象将所述块设备内的脏页刷写到磁盘中。
6.根据权利要求4所述的缓存脏页刷写装置,其特征在于,所述脏页刷写模块,包括:
第二检测单元,用于检测系统空闲页比例是否低于预定比例值;若是,则依次检查全局块设备链表中的块设备是否有脏页,并将有脏页的块设备作为目标块设备;
第三封装模块,用于封装第三work对象,其中,所述第三work对象包括待刷写的脏页数量;
第三添加模块,用于将所述第三work对象添加至所述目标块设备的work对象链表,唤醒所述目标块设备的内核刷写线程;
第三刷写单元,用于根据所述第三work对象将所述目标块设备内的脏页刷写到磁盘中。
CN201610041801.1A 2016-01-22 2016-01-22 一种缓存脏页刷写方法及装置 Active CN105740170B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610041801.1A CN105740170B (zh) 2016-01-22 2016-01-22 一种缓存脏页刷写方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610041801.1A CN105740170B (zh) 2016-01-22 2016-01-22 一种缓存脏页刷写方法及装置

Publications (2)

Publication Number Publication Date
CN105740170A CN105740170A (zh) 2016-07-06
CN105740170B true CN105740170B (zh) 2020-12-04

Family

ID=56247460

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610041801.1A Active CN105740170B (zh) 2016-01-22 2016-01-22 一种缓存脏页刷写方法及装置

Country Status (1)

Country Link
CN (1) CN105740170B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107885666B (zh) * 2016-09-28 2021-07-20 华为技术有限公司 一种内存管理方法和装置
CN107577439B (zh) * 2017-09-28 2020-10-20 苏州浪潮智能科技有限公司 分配处理资源的方法、装置、设备及计算机可读存储介质
CN115543187A (zh) * 2017-11-10 2022-12-30 成都华为技术有限公司 一种数据处理方法及设备
CN116880774B (zh) * 2023-09-06 2023-11-28 麒麟软件有限公司 一种Linux系统下的脏页回写方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7636745B1 (en) * 2004-03-12 2009-12-22 Sun Microsystems, Inc. Concurrent-marking-initiation heuristic
CN103902474A (zh) * 2014-04-11 2014-07-02 华中科技大学 一种支持固态盘缓存动态分配的混合存储系统和方法
CN105138481A (zh) * 2014-05-30 2015-12-09 华为技术有限公司 存储数据的处理方法、装置和系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101359326B (zh) * 2007-07-31 2010-11-10 英业达股份有限公司 一种刷新指定裸设备脏数据的系统及方法
CN101382871A (zh) * 2008-09-17 2009-03-11 武汉海恒信息存储有限责任公司 一种用于iSCSI目标器块设备I/O的方法
CN102521173B (zh) * 2011-11-17 2014-10-22 曙光信息产业(北京)有限公司 一种自动将缓存在易失介质中的数据写回方法
US10025711B2 (en) * 2012-01-16 2018-07-17 Qualcomm Incorporated Hybrid write-through/write-back cache policy managers, and related systems and methods
CN103049396B (zh) * 2012-12-10 2015-10-28 浪潮(北京)电子信息产业有限公司 数据的刷写方法及装置
CN103345451B (zh) * 2013-07-18 2015-05-13 四川九成信息技术有限公司 一种在多核处理器中缓冲数据的方法
CN103984508A (zh) * 2014-05-15 2014-08-13 中国人民解放军国防科学技术大学 基于飞腾处理器平台的raid多线程并发读写方法
CN105183667A (zh) * 2015-09-16 2015-12-23 浪潮(北京)电子信息产业有限公司 一种数据刷写方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7636745B1 (en) * 2004-03-12 2009-12-22 Sun Microsystems, Inc. Concurrent-marking-initiation heuristic
CN103902474A (zh) * 2014-04-11 2014-07-02 华中科技大学 一种支持固态盘缓存动态分配的混合存储系统和方法
CN105138481A (zh) * 2014-05-30 2015-12-09 华为技术有限公司 存储数据的处理方法、装置和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ISCSI双控制器存储系统缓存设计与实现;吴昌松;《中国优秀硕士学位论文全文数据库(信息科技辑》;中国学术期刊(光盘版)电子杂志社;20141015(第10期);第I137-35页 *

Also Published As

Publication number Publication date
CN105740170A (zh) 2016-07-06

Similar Documents

Publication Publication Date Title
KR102456085B1 (ko) 로우 버퍼 충돌을 감소시키기 위한 동적 메모리 재매핑
CN105740170B (zh) 一种缓存脏页刷写方法及装置
US9639280B2 (en) Ordering memory commands in a computer system
US20130091331A1 (en) Methods, apparatus, and articles of manufacture to manage memory
US7653799B2 (en) Method and apparatus for managing memory for dynamic promotion of virtual memory page sizes
US9727462B2 (en) Runtime backup of data in a memory module
EP2979189B1 (en) Storing data from cache lines to main memory based on memory addresses
US9645933B2 (en) Dynamic cache partitioning apparatus and method
US20120254507A1 (en) Write-absorbing buffer for non-volatile memory
CN107209726B (zh) 文件系统中的冲刷
US10496550B2 (en) Multi-port shared cache apparatus
JP2013521579A5 (zh)
Awad et al. Write-aware management of nvm-based memory extensions
CN111857589A (zh) 分布式存储系统中ssd缓存下刷速度控制方法及系统
US10120806B2 (en) Multi-level system memory with near memory scrubbing based on predicted far memory idle time
US20180032429A1 (en) Techniques to allocate regions of a multi-level, multi-technology system memory to appropriate memory access initiators
US20180095884A1 (en) Mass storage cache in non volatile level of multi-level system memory
EP2799996A1 (en) Information processing apparatus, control circuit, control program, and control method
CN108038062B (zh) 嵌入式系统的内存管理方法和装置
EP2506158A1 (en) Cross-region access method for embedded file system
US10073851B2 (en) Fast new file creation cache
US9128856B2 (en) Selective cache fills in response to write misses
TW201435586A (zh) 快閃記憶體儲存設備及其資料管理之方法與裝置
CN110209600B (zh) 一种基于精简lun的cache空间分配方法及系统
CN103176753A (zh) 存储设备及其数据管理方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant