[发明专利]基于Linux的IO调度方法、装置、设备及存储介质在审
| 申请号: | 201710884154.5 | 申请日: | 2017-09-26 |
| 公开(公告)号: | CN107728939A | 公开(公告)日: | 2018-02-23 |
| 发明(设计)人: | 李佩;孙京本 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
| 主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F9/50;G06F13/10 |
| 代理公司: | 北京集佳知识产权代理有限公司11227 | 代理人: | 罗满 |
| 地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 linux io 调度 方法 装置 设备 存储 介质 | ||
技术领域
本发明涉及计算机应用技术领域,特别是涉及基于Linux的IO调度方法、装置、设备及存储介质。
背景技术
随着计算机技术的快速发展,基于Linux的各种应用系统逐渐增多。Linux系统多是使用IO调度算法对进程的磁盘IO操作进行重新排序,公平有效地实现IO调度算法对Linux系统性能的提升有着很大的影响。
目前,在Linux系统中,常用的IO调度方法为AS(Anticipatory,预期)算法。该算法是在需要读数据时,先从缓存中读数据,缓存中没有待读取的数据时,执行IO操作对磁盘进行读操作;在需要写数据时,先将待写入的数据写入缓存中,等待内存空闲低于阈值时,将数据再回写到磁盘中。
这种方法存在一定的缺点,数据写入到缓存中,如果等待较长时间内存空闲仍不低于阈值,使得数据无法回写到磁盘中,可能会导致数据丢失,即数据丢失概率较大。
发明内容
本发明的目的是提供基于Linux的IO调度方法、装置、设备及存储介质,以及时将数据回写入磁盘,降低数据丢失概率。
为解决上述技术问题,本发明提供如下技术方案:
一种基于Linux的IO调度方法,包括:
通过第一进程监听队列中的读操作;
如果所述第一进程监听到读缓存操作,则向第二进程发送数据回写启动消息,以使所述第二进程启动数据回写入磁盘的操作。
在本发明的一种具体实施方式中,还包括:
如果所述第一进程监听到读磁盘操作,则向所述第二进程发送数据回写暂停消息,以使所述第二进程暂停数据回写入磁盘的操作。
在本发明的一种具体实施方式中,还包括:
如果所述第一进程未监听到任何读操作,则向所述第二进程发送所述数据回写启动消息,以使所述第二进程启动数据回写入磁盘的操作。
在本发明的一种具体实施方式中,在所述通过第一进程监听队列中的读操作之前,还包括:
在达到设定的时间间隔时启动所述第一进程。
在本发明的一种具体实施方式中,所述通过第一进程监听队列中的读操作,包括:
在预设的监听时长内,通过第一进程监听队列中的读操作。
一种基于Linux的IO调度装置,包括:
监听模块,用于通过第一进程监听队列中的读操作;
第一消息发送模块,用于在所述第一进程监听到读缓存操作时,向第二进程发送数据回写启动消息,以使所述第二进程启动数据回写入磁盘的操作。
在本发明的一种具体实施方式中,还包括:
第二消息发送模块,用于在所述第一进程监听到读磁盘操作时,向所述第二进程发送数据回写暂停消息,以使所述第二进程暂停数据回写入磁盘的操作。
在本发明的一种具体实施方式中,所述第一消息发送模块,还用于:
在所述第一进程未监听到任何读操作时,向所述第二进程发送所述数据回写启动消息,以使所述第二进程启动数据回写入磁盘的操作。
一种基于Linux的IO调度设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述的基于Linux的IO调度方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的基于Linux的IO调度方法的步骤。
应用本发明实施例所提供的技术方案,通过第一进程监听队列中的读操作,如果第一进程监听到读缓存操作,则向第二进程发送数据回写启动消息,以使第二进程启动数据回写入磁盘的操作。当存在读缓存操作时,表明在缓存中读取数据,在这种情况下,第二进程启动数据回写入磁盘的操作,不会影响读性能,同时使得缓存中的数据能够及时回写入磁盘,降低数据丢失概率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中基于Linux的IO调度方法的一种实施流程图;
图2为本发明实施例中基于Linux的IO调度方法的另一种实施流程图;
图3为本发明实施例中基于Linux的IO调度过程的示意图;
图4为本发明实施例中一种基于Linux的IO调度装置的结构示意图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710884154.5/2.html,转载请声明来源钻瓜专利网。





