[发明专利]一种基于固态盘读写特性的I/O调度方法有效

专利信息
申请号: 201510827493.0 申请日: 2015-11-25
公开(公告)号: CN106775438B 公开(公告)日: 2019-08-30
发明(设计)人: 周可;王桦;何爽;饶琦;陈光明 申请(专利权)人: 华中科技大学
主分类号: G06F3/06 分类号: G06F3/06
代理公司: 华中科技大学专利中心 42201 代理人: 朱仁玲
地址: 430074 湖北*** 国省代码: 湖北;42
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 固态 读写 特性 调度 方法
【说明书】:

技术领域

发明属于固态盘存储技术领域,更具体地,涉及一种基于固态盘不同读写特性的I/O调度方法。

背景技术

固态盘(Solid state disk,简称SSD)是一种利用NAND闪存芯片作为数据永久存储的硬盘,随着NAND闪存芯片的生产成本下降,SSD的价格也越来越被人们所接受,SSD在数据中心、个人电脑、各种类型的移动设备上的使用越来越广泛。但是,由于长期以来构建存储系统的设备都是硬盘驱动器(Hard disk drive,简称HDD),现有的系统软件大多数是面向HDD进行设计和优化的,直接使用SSD替换掉HDD并不能最大限度地发挥SSD的高性能。因此,针对SSD进行系统软件优化具有十分重要的意义。

HDD是一种机械旋转式的硬盘,它的读写操作主要有以下几个步骤:

1、寻道:磁头传动装置将所有的磁头移动到待访问的柱面,并获取当前需要使用的磁头号;2、旋转等待:定位到相应的盘面和磁道后,盘面就会旋转,在旋转的过程中,磁头会读取其正下方的扇区中的扇区头标中的信息,与需要读取/写入的扇区号进行比对,如果不匹配则盘面会继续旋转,如果匹配则从此扇区开始读/写数据;3、完成数据读写。HDD读写操作很大一部分时间消耗在寻道和旋转等待上,而Linux内核中的IO调度算法所做的优化主要也是为了降低寻道和旋转等待的时间消耗。

在Linux系统中,现有的IO调度算法主要是Noop算法,CFQ算法Deadline算法和Anticipatory算法。其中CFQ、Deadline和Anticipatory算法针对HDD寻道时间长,采取了合并连续的读写请求,这样就可以在寻道 结束后进行连续的读写。Noop算法对读写请求不予合并,只将新的请求插入队尾。

然而,上述IO调度算法存在以下方面的问题:1、在SSD中,顺序的写和随机的写性能基本相同,所以对写请求进行合并并不能提高SSD的速率,反而会影响系统的性能;2、在SSD中,在不超过聚簇页大小的前提下合并读请求才会提高读效率,读请求大小超过聚簇页大小后并不会提高读效率。

发明内容

针对现有技术的以上缺陷或改进需求,本发明提供了一种基于固态盘不同读写特性的I/O调度方法,其目的在于,解决现有IO调度方法中存在的连续读请求合并后过大或不能被合并、以及写请求存在不必要的合并的技术问题。

为实现上述目的,按照本发明的一个方面,提供了一种基于固态盘读写特性的IO调度方法,包括以下步骤:

(1)接收来自上层应用并经过文件系统处理后的bio请求,并判断该bio请求的类型是读请求还是写请求,如果是读请求则转入步骤(2),如果是写请求则转入步骤(3);

(2)判断该读请求是否能够与其邻近的读请求进行合并,若不能合并,则直接转入步骤(4);若可以合并且合并后的大小不超过聚簇页的大小,则将其与邻近的读请求进行合并,合并后的读请求仍然可以与其邻近的读请求进行合并,并且应当确保合并后的大小不超过聚簇页的大小。将最终合并后的读请求放入读队列和读红黑树中,以供系统读取数据。然后转入步骤(4)。

(3)判断该写请求是否能够与缓存中的写请求进行合并,如果可以则进行合并,并将合并后的写请求插入调度器队列末端,并转入步骤(4);否则判断其能否与哈希表中的写请求进行合并,如果可以则进行合并,并 将将合并后的写请求插入调度器队列末端,并转入步骤(4);

(4)将调度器队列中的请求分发到设备驱动器的请求队列中。

优选地,步骤(2)包括以下子步骤:

(2.1)针对该读请求,判断是否存在上次合并的读请求,若存在,则跳转到步骤(2.2);否则跳转到步骤(2.3);

(2.2)判断该读请求与上次合并后的读请求能否进行合并。如果不能合并,则跳转到步骤(2.3),如果能前向合并,则跳转到步骤(2.4),如果能后向合并,则跳转到步骤(2.5);

(2.3)判断该读请求能否与哈希链表中的请求进行后向合并,如果能则跳转到步骤(2.5);否则跳转到步骤(2.6);

(2.4)完成可前向合并的读请求Rfrq与该读请求的合并,并判断前向合并之后的读请求Rfrq能否继续与调度器中读红黑树中按照请求的起始访问地址排序的Rfrq的前一个读请求Rprev继续进行前向合并。能则跳转到步骤(2.7),否则跳转到步骤(2.8);

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201510827493.0/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top