CN104317656A - 一种块设备输入输出请求调度的方法及装置 - Google Patents

一种块设备输入输出请求调度的方法及装置 Download PDF

Info

Publication number
CN104317656A
CN104317656A CN201410541441.2A CN201410541441A CN104317656A CN 104317656 A CN104317656 A CN 104317656A CN 201410541441 A CN201410541441 A CN 201410541441A CN 104317656 A CN104317656 A CN 104317656A
Authority
CN
China
Prior art keywords
output request
block device
device input
input output
request
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.)
Granted
Application number
CN201410541441.2A
Other languages
English (en)
Other versions
CN104317656B (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.)
SHENZHEN STREAMING VIDEO TECHNOLOGY Co Ltd
Original Assignee
SHENZHEN STREAMING VIDEO TECHNOLOGY 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 SHENZHEN STREAMING VIDEO TECHNOLOGY Co Ltd filed Critical SHENZHEN STREAMING VIDEO TECHNOLOGY Co Ltd
Priority to CN201410541441.2A priority Critical patent/CN104317656B/zh
Priority to US15/323,966 priority patent/US10254965B2/en
Priority to PCT/CN2014/092691 priority patent/WO2016058247A1/zh
Priority to EP14904085.9A priority patent/EP3166010A4/en
Publication of CN104317656A publication Critical patent/CN104317656A/zh
Application granted granted Critical
Publication of CN104317656B publication Critical patent/CN104317656B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明提供了一种块设备输入输出请求调度的方法及装置,属于计算机存储器领域。在本发明中,首先生成块设备输入输出请求,块设备输入输出请求包括写操作请求;然后判断生成的块设备输入输出请求是否能与请求队列中的块设备输入输出请求合并,若否,则当生成的块设备输入输出请求的目的设备是固态盘或SD卡时,将生成的块设备输入输出请求送入请求队列的最前位置。本发明通过所述块设备输入输出请求调度的方法及装置,提高了写操作的效率。

Description

一种块设备输入输出请求调度的方法及装置
技术领域
本发明涉及计算机存储器领域,特别涉及一种块设备输入输出请求调度的方法及装置。
背景技术
传统的操作系统(如Linux和windows等)的块设备输入输出调度算法以优化机械磁盘输入输出性能为目标,尽可能地让机械磁头往一个方向连续移动,以减少机械磁头寻道定位的时间开销。
随着技术的发展,采用闪存颗粒的固态硬盘和SD卡(Secure Digital MemoryCard,安全数码卡)开始逐渐取代带有机械磁盘磁头的机械磁盘。与机械硬盘的一个主要差别是:闪存颗粒没有机械磁头寻道定位的开销,但闪存内部需要后台运行垃圾回收操作,擦除无用数据块,为后续写入操作预先腾出空间。
在测试中发现,操作系统的块设备调度算法与闪存的垃圾及时回收存在配合冲突问题。表现如下:持续不断地写SD卡,每次写64KB,写地址随机。一段时间后,出现连续的数十次前后相邻写操作耗时均超过3秒,个别写操作耗时甚至长达数十秒。持续1~2分钟后恢复短暂正常,然后又重现。在实时性很强的数据采集应用场景,如此持续时间长的连续耗时过长写操作会导致数据缓冲阻塞,造成严重的实时数据丢失事故。
发明内容
本发明提供了一种块设备输入输出请求调度的方法及装置,提高了写操作的效率。
一方面,本发明提供了一种块设备输入输出请求调度的方法,所述方法包括:
A.生成块设备输入输出请求,所述块设备输入输出请求包括写操作请求;
B.判断生成的所述块设备输入输出请求是否能与请求队列中的块设备输入输出请求合并,若否,执行步骤C1;
C1.当生成的所述块设备输入输出请求的目的设备是固态盘或SD卡时,将生成的所述块设备输入输出请求送入所述请求队列的最前位置。
第二方面,本发明提供了一种块设备输入输出请求调度的装置,所述装置包括:
生成模块,用于生成块设备输入输出请求,所述块设备输入输出请求包括写操作请求;
判断模块,用于判断生成的所述块设备输入输出请求是否能与请求队列中的块设备输入输出请求合并,若否,执行步骤C1;
送入模块,用于当生成的所述块设备输入输出请求的目的设备是固态盘或SD卡时,将生成的所述块设备输入输出请求送入所述请求队列的最前位置。
在本发明中,由于首先生成块设备输入输出请求,块设备输入输出请求包括写操作请求;然后判断生成的块设备输入输出请求是否能与请求队列中的块设备输入输出请求合并,若否,则当生成的块设备输入输出请求的目的设备是固态盘或SD卡时,将生成的块设备输入输出请求送入请求队列的最前位置,因此,提高了写操作的效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的块设备输入输出请求调度的方法一种流程图;
图2为本发明实施例一提供的块设备输入输出请求调度的方法另一种流程图;
图3为本发明实施例三提供的块设备输入输出请求调度的装置一种结构示意图;
图4为本发明实施例三提供的一种块设备输入输出请求调度的装置修复模块结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一:
本发明实施例一提供了一种块设备输入输出请求调度的方法,参见图1,块设备输入输出请求调度的方法包括以下步骤:
101.生成块设备输入输出请求,块设备输入输出请求包括写操作请求。
102.判断生成的块设备输入输出请求是否能与请求队列中的块设备输入输出请求合并,若否,执行步骤103a。
步骤102中判断生成的块设备输入输出请求是否能与请求队列中的块设备输入输出请求合并具体为:判断生成的块设备输入输出请求的起始目的地址是否与请求队列中的块设备输入输出请求的结束目的地址是否相同,或判断生成的块设备输入输出请求的结束目的地址是否与请求队列中的块设备输入输出请求的起始目的地址是否相同。
103a.当生成的块设备输入输出请求的目的设备是固态盘或SD卡时,将生成的块设备输入输出请求送入请求队列的最前位置。
如图2所示,当步骤102判断为否时,步骤102之后还包括步骤103b。
103b.当生成的块设备输入输出请求的目的设备是机械硬盘时,按照目的地址的先后顺序对生成的块设备输入输出请求与请求队列中的块设备输入输出请求进行排序以更新请求队列。
如图2所示,当步骤102判断为是时,步骤102之后还包括步骤103c。
103c.将生成的块设备输入输出请求与请求队列中的块设备输入输出请求合并。
如图2所示,步骤103a之后还包括步骤104a。
104a.执行请求队列的最前位置的块设备输入输出请求。
例如,文件系统生成写操作请求,目的地址为00000至0045 H,请求队列中的写操作请求的目的地址为00600至006 H 7,则判定生成的写操作请求不能与请求队列中的写操作请求合并,当生成的写操作请求的目的设备是固态盘时,将生成的写操作请求送入请求队列的最前位置,并执行请求队列的最前位置的写操作请求。
再例如,文件系统生成写操作请求,目的地址为00000至0045 H,请求队列中的第一写操作请求的目的地址为00600至006 H 7,请求队列中的第二写操作请求的目的地址为00700至008F4,当生成的块设备输入输出请求的目的设备是机械硬盘时,按照目的地址的先后顺序对生成的块设备输入输出请求与请求队列中的块设备输入输出请求进行排序以更新请求队列,即更新后的请求队列中写操作请求顺序为新生成的写操作请求、第一写操作请求和第二写操作请求。
再例如,文件系统生成写操作请求,目的地址为00000至0045 H,请求队列中的写操作请求的目的地址为0045 H至001H 7,生成的写操作请求的结束目的地址与请求队列中的写操作请求的起始目的地址相同,则将生成的写操作请求与请求队列中的写操作请求合并为一个新的写操作请求,其目的地址为00000至至001 H 7。
本实施例通过首先生成块设备输入输出请求,块设备输入输出请求包括写操作请求;然后判断生成的块设备输入输出请求是否能与请求队列中的块设备输入输出请求合并,若否,则当生成的块设备输入输出请求的目的设备是固态盘或SD卡时,将生成的块设备输入输出请求送入请求队列的最前位置,因此,提高了写操作的效率。
实施例二:
本发明实施例二提供了一种块设备输入输出请求调度的装置,如图3所示,块设备输入输出请求调度的装置30包括生成模块310、判断模块320和送入模块330a。
生成模块310,用于生成块设备输入输出请求,块设备输入输出请求包括写操作请求;
判断模块320,用于判断生成的块设备输入输出请求是否能与请求队列中的块设备输入输出请求合并,若否,执行步骤C1;
送入模块330a,用于当生成的块设备输入输出请求的目的设备是固态盘或SD卡时,将生成的块设备输入输出请求送入请求队列的最前位置。
可选的,如图4所示,块设备输入输出请求调度的装置30还包括排序模块330b、合并模块330c和执行模块340a。
排序模块330b,用于当生成的块设备输入输出请求的目的设备是机械硬盘时,按照目的地址的先后顺序对生成的块设备输入输出请求与请求队列中的块设备输入输出请求进行排序以更新请求队列。
合并模块330c,用于将生成的块设备输入输出请求与请求队列中的块设备输入输出请求合并。
执行模块340a,用于执行请求队列的最前位置的块设备输入输出请求。
其中,判断模块320判断生成的块设备输入输出请求是否能与请求队列中的块设备输入输出请求合并具体为:判断生成的块设备输入输出请求的起始目的地址是否与请求队列中的块设备输入输出请求的结束目的地址是否相同,或判断生成的块设备输入输出请求的结束目的地址是否与请求队列中的块设备输入输出请求的起始目的地址是否相同。
本实施例通过首先生成块设备输入输出请求,块设备输入输出请求包括写操作请求;然后判断生成的块设备输入输出请求是否能与请求队列中的块设备输入输出请求合并,若否,则当生成的块设备输入输出请求的目的设备是固态盘或SD卡时,将生成的块设备输入输出请求送入请求队列的最前位置,因此,提高了写操作的效率。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种块设备输入输出请求调度的方法,其特征在于,所述方法包括:
A.生成块设备输入输出请求,所述块设备输入输出请求包括写操作请求;
B.判断生成的所述块设备输入输出请求是否能与请求队列中的块设备输入输出请求合并,若否,执行步骤C1;
C1.当生成的所述块设备输入输出请求的目的设备是固态盘或SD卡时,将生成的所述块设备输入输出请求送入所述请求队列的最前位置。
2.根据权利要求1所述的方法,其特征在于,步骤B判断为否时,所述步骤B之后还包括:
C2.当生成的所述块设备输入输出请求的目的设备是机械硬盘时,按照目的地址的先后顺序对生成的所述块设备输入输出请求与所述请求队列中的块设备输入输出请求进行排序以更新所述请求队列。
3.根据权利要求1所述的方法,其特征在于,所述步骤B具体为:
判断生成的所述块设备输入输出请求的起始目的地址是否与请求队列中的块设备输入输出请求的结束目的地址是否相同,或判断生成的所述块设备输入输出请求的结束目的地址是否与请求队列中的块设备输入输出请求的起始目的地址是否相同。
4.根据权利要求1所述的方法,其特征在于,所述步骤B判断为是时,所述步骤B之后还包括以下步骤:
C3.将生成的所述块设备输入输出请求与所述请求队列中的块设备输入输出请求合并。
5.根据权利要求4所述的方法,其特征在于,所述步骤C1之后还包括:
执行所述请求队列的最前位置的块设备输入输出请求。
6.一种块设备输入输出请求调度的装置,其特征在于,所述装置包括:
生成模块,用于生成块设备输入输出请求,所述块设备输入输出请求包括写操作请求;
判断模块,用于判断生成的所述块设备输入输出请求是否能与请求队列中的块设备输入输出请求合并,若否,执行步骤C1;
送入模块,用于当生成的所述块设备输入输出请求的目的设备是固态盘或SD卡时,将生成的所述块设备输入输出请求送入所述请求队列的最前位置。
7.根据权利要求6所述的装置,其特征在于,还包括:
排序模块,用于当生成的所述块设备输入输出请求的目的设备是机械硬盘时,按照目的地址的先后顺序对生成的所述块设备输入输出请求与所述请求队列中的块设备输入输出请求进行排序以更新所述请求队列。
8.根据权利要求6所述的装置,其特征在于,所述判断模块判断生成的所述块设备输入输出请求是否能与请求队列中的块设备输入输出请求合并具体为:
判断生成的所述块设备输入输出请求的起始目的地址是否与请求队列中的块设备输入输出请求的结束目的地址是否相同,或判断生成的所述块设备输入输出请求的结束目的地址是否与请求队列中的块设备输入输出请求的起始目的地址是否相同。
9.根据权利要求6所述的装置,其特征在于,还包括:
合并模块,用于将生成的所述块设备输入输出请求与所述请求队列中的块设备输入输出请求合并。
10.根据权利要求6所述的装置,其特征在于,还包括:
执行模块,用于执行所述请求队列的最前位置的块设备输入输出请求。
CN201410541441.2A 2014-10-14 2014-10-14 一种块设备输入输出请求调度的方法及装置 Active CN104317656B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201410541441.2A CN104317656B (zh) 2014-10-14 2014-10-14 一种块设备输入输出请求调度的方法及装置
US15/323,966 US10254965B2 (en) 2014-10-14 2014-12-01 Method and apparatus for scheduling block device input/output requests
PCT/CN2014/092691 WO2016058247A1 (zh) 2014-10-14 2014-12-01 一种块设备输入输出请求调度的方法及装置
EP14904085.9A EP3166010A4 (en) 2014-10-14 2014-12-01 Method and apparatus for scheduling block device input/output requests

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410541441.2A CN104317656B (zh) 2014-10-14 2014-10-14 一种块设备输入输出请求调度的方法及装置

Publications (2)

Publication Number Publication Date
CN104317656A true CN104317656A (zh) 2015-01-28
CN104317656B CN104317656B (zh) 2018-01-16

Family

ID=52372891

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410541441.2A Active CN104317656B (zh) 2014-10-14 2014-10-14 一种块设备输入输出请求调度的方法及装置

Country Status (4)

Country Link
US (1) US10254965B2 (zh)
EP (1) EP3166010A4 (zh)
CN (1) CN104317656B (zh)
WO (1) WO2016058247A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106325994A (zh) * 2016-08-24 2017-01-11 广东欧珀移动通信有限公司 一种控制写请求的方法及终端设备
CN107832020A (zh) * 2017-11-24 2018-03-23 苏州韦科韬信息技术有限公司 一种固态硬盘的写入方法
CN107943413A (zh) * 2017-10-12 2018-04-20 记忆科技(深圳)有限公司 一种固态硬盘提升读性能的方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6148363A (en) * 1991-07-26 2000-11-14 Sandisk Corporation Device and method for controlling solid-state memory system
CN101354636A (zh) * 2008-09-08 2009-01-28 创新科存储技术(深圳)有限公司 一种向磁盘阵列中写入数据的方法及系统
CN102402401A (zh) * 2011-12-13 2012-04-04 云海创想信息技术(无锡)有限公司 一种磁盘io请求队列调度的方法
CN103064636A (zh) * 2012-12-24 2013-04-24 创新科存储技术有限公司 一种固态硬盘读写方法以及一种固态硬盘
CN103823636A (zh) * 2012-11-19 2014-05-28 苏州捷泰科信息技术有限公司 Io调度方法及装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5687390A (en) * 1995-11-14 1997-11-11 Eccs, Inc. Hierarchical queues within a storage array (RAID) controller
US6160812A (en) * 1998-05-04 2000-12-12 Cabletron Systems, Inc. Method and apparatus for supplying requests to a scheduler in an input buffered multiport switch
US6490635B1 (en) * 2000-04-28 2002-12-03 Western Digital Technologies, Inc. Conflict detection for queued command handling in disk drive controller
US6954835B1 (en) * 2002-10-30 2005-10-11 Emc Corporation Intercepting control of a host I/O process
US7596670B2 (en) * 2005-11-30 2009-09-29 International Business Machines Corporation Restricting access to improve data availability
US7493419B2 (en) * 2005-12-13 2009-02-17 International Business Machines Corporation Input/output workload fingerprinting for input/output schedulers
US8135924B2 (en) * 2009-01-14 2012-03-13 International Business Machines Corporation Data storage device driver
US8078799B2 (en) * 2009-06-10 2011-12-13 Lsi Corporation Method and system of an adaptive input/output scheduler for storage arrays
CN101639763B (zh) 2009-08-27 2011-08-24 中兴通讯股份有限公司 一种io调度方法及调度装置
US8301805B2 (en) * 2009-09-15 2012-10-30 Hewlett-Packard Development Company, L.P. Managing I/O request in a storage system
TW201111986A (en) * 2009-09-29 2011-04-01 Silicon Motion Inc Memory apparatus and data access method for memories
US8732342B1 (en) * 2011-03-31 2014-05-20 Emc Corporation I/O scheduling system and method
US9134909B2 (en) * 2011-08-30 2015-09-15 International Business Machines Corporation Multiple I/O request processing in a storage system
US9116625B2 (en) * 2012-05-11 2015-08-25 Micron Technology, Inc. Write command overlap detection
WO2014002126A1 (en) * 2012-06-25 2014-01-03 Hitachi, Ltd. Computer system and method of controlling i/o with respect to storage apparatus
US9026819B2 (en) * 2012-10-01 2015-05-05 College Of William And Mary Method of conserving power based on electronic device's I/O pattern
US9256384B2 (en) * 2013-02-04 2016-02-09 Avago Technologies General Ip (Singapore) Pte. Ltd. Method and system for reducing write latency in a data storage system by using a command-push model

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6148363A (en) * 1991-07-26 2000-11-14 Sandisk Corporation Device and method for controlling solid-state memory system
CN101354636A (zh) * 2008-09-08 2009-01-28 创新科存储技术(深圳)有限公司 一种向磁盘阵列中写入数据的方法及系统
CN102402401A (zh) * 2011-12-13 2012-04-04 云海创想信息技术(无锡)有限公司 一种磁盘io请求队列调度的方法
CN103823636A (zh) * 2012-11-19 2014-05-28 苏州捷泰科信息技术有限公司 Io调度方法及装置
CN103064636A (zh) * 2012-12-24 2013-04-24 创新科存储技术有限公司 一种固态硬盘读写方法以及一种固态硬盘

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106325994A (zh) * 2016-08-24 2017-01-11 广东欧珀移动通信有限公司 一种控制写请求的方法及终端设备
CN106325994B (zh) * 2016-08-24 2018-05-29 广东欧珀移动通信有限公司 一种控制写请求的方法及终端设备
CN107943413A (zh) * 2017-10-12 2018-04-20 记忆科技(深圳)有限公司 一种固态硬盘提升读性能的方法
CN107832020A (zh) * 2017-11-24 2018-03-23 苏州韦科韬信息技术有限公司 一种固态硬盘的写入方法

Also Published As

Publication number Publication date
WO2016058247A1 (zh) 2016-04-21
US10254965B2 (en) 2019-04-09
EP3166010A4 (en) 2018-03-14
US20170206008A1 (en) 2017-07-20
EP3166010A1 (en) 2017-05-10
CN104317656B (zh) 2018-01-16

Similar Documents

Publication Publication Date Title
US10303600B2 (en) Method and storage device for collecting garbage data
CN102982180B (zh) 数据存储方法及设备
CN104166606B (zh) 文件备份方法和主存储设备
CN103870514B (zh) 重复数据删除方法和装置
CN104461936A (zh) 缓存数据的刷盘方法及装置
CN105446814A (zh) 一种缓存回收方法和装置
CN105243027A (zh) 在存储设备中存储数据的方法和存储控制器
CN1645516B (zh) 用于闪速存储器的数据恢复设备和方法
CN104317656A (zh) 一种块设备输入输出请求调度的方法及装置
CN103678337A (zh) 数据清除方法、装置及系统
CN103077163B (zh) 数据预处理方法、装置及系统
CN107229414A (zh) 存储空间回收方法及装置
EP1701358B1 (en) Data write-in method for flash memory
CN107632789A (zh) 基于分布式存储的重删方法、系统及数据重复检测方法
CN104834648A (zh) 日志查询方法和装置
CN106293882A (zh) 一种虚拟磁盘快照实现方法及装置
CN103955440A (zh) 一种非易失存储设备及其进行数据操作的方法
CN111813347B (zh) 垃圾回收空间管理方法、装置及计算机可读存储介质
CN104050057A (zh) 一种历史感知的数据去重碎片消除方法与系统
CN109375870A (zh) 一种加速ssd主控芯片d2h无映射读取的方法及其系统
CN106844236A (zh) 终端设备的数据存储方法和装置
CN102467523A (zh) 索引文件的建立方法与利用索引文件查询数据区块的方法
CN106611364B (zh) 存储碎片整理方法及装置
CN105224250A (zh) 高性能域名解析处理方法和装置
CN105677244B (zh) 一种降低tlc闪存的固态硬盘写放大的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: Nanshan District Xueyuan Road in Shenzhen city of Guangdong province 518000 No. 1001 Nanshan Chi Park B1 building 22 floor

Applicant after: STREAMAX TECHNOLOGY CO., LTD.

Address before: 518000, Guangdong Shenzhen Nanshan District science and technology two road Shenzhen software park three, five floor

Applicant before: Shenzhen Streaming Video Technology Co., Ltd.

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant