I/O调度的优化方法、装置、存储介质及智能终端制造方法及图纸

技术编号:21183528 阅读:42 留言:0更新日期:2019-05-22 14:38
本申请实施例公开了一种I/O调度的优化方法、装置、存储介质及智能终端。该方法包括:检测到目标应用程序发送的磁盘I/O请求;判断所述磁盘I/O请求是否为所述目标应用程序在交互场景下产生的请求;根据判断结果将所述磁盘I/O请求添加到至少两个预设I/O调度队列中的一个,并按照预设处理策略对至少两个所述预设I/O调度队列内的磁盘I/O请求进行处理。通过采用上述技术方案,可以避免出现交互场景下的磁盘I/O请求得不到及时响应的问题,改善了交互场景下终端的卡顿问题。

Optimizing Method, Device, Storage Medium and Intelligent Terminal of I/O Scheduling

The embodiment of this application discloses an optimization method, device, storage medium and intelligent terminal for I/O scheduling. The method includes: detecting disk I/O requests sent by the target application program; determining whether the disk I/O requests are generated by the target application program in an interactive scenario; adding the disk I/O requests to at least one of the two preset I/O scheduling queues based on the results of the judgment, and applying the preset processing strategy to at least two disks in the preset I/O scheduling queue. / O request processing. By adopting the above technical scheme, the problem that disk I/O requests in interactive scenarios can not be responded in time can be avoided, and the Carton problem of terminals in interactive scenarios can be improved.

【技术实现步骤摘要】
I/O调度的优化方法、装置、存储介质及智能终端
本申请实施例涉及终端
,尤其涉及一种I/O调度的优化方法、装置、存储介质及智能终端。
技术介绍
随着智能终端的技术发展,使得智能终端具有了更多的用途。例如,用户可以通过在智能终端内安装娱乐用途的应用程序,而使智能终端成为十分重要的个人娱乐工具。然而,用户根据自身的工作或生活需要在智能终端上安装大量的应用程序,这些应用程序可能在后台执行程序下载更新、数据备份以及拷贝文件等输入/输出(Input/Output,以下简称I/O)操作。当终端的性能不够高时,与用户交互的I/O请求可能因为产生在上述I/O操作之后而不能得到及时响应,从而导致用户在使用智能终端时出现卡顿现象。
技术实现思路
本申请实施例提供一种I/O调度的优化方法、装置、存储介质及智能终端,可以优化I/O调度方式,改善终端的卡顿问题。第一方面,本申请实施例提供了一种I/O调度的优化方法,包括:检测到目标应用程序发送的磁盘I/O请求;判断所述磁盘I/O请求是否为所述目标应用程序在交互场景下产生的请求;根据判断结果将所述磁盘I/O请求添加到至少两个预设I/O调度队列中的一个,并按照预设处理策略对至少两个所述预设I/O调度队列内的磁盘I/O请求进行处理,其中,不同的所述预设I/O调度队列的优先级不同。第二方面,本申请实施例还提供了一种I/O调度的优化装置,该装置包括:请求检测模块,用于检测到目标应用程序发送的磁盘I/O请求;请求判断模块,用于判断所述磁盘I/O请求是否为所述目标应用程序在交互场景下产生的请求;请求处理模块,用于根据判断结果将所述磁盘I/O请求添加到至少两个预设I/O调度队列中的一个,并按照预设处理策略对至少两个所述预设I/O调度队列内的磁盘I/O请求进行处理,其中,不同的所述预设I/O调度队列的优先级不同。第三方面,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请实施例所述的I/O调度的优化方法。第四方面,本申请实施例还提供了一种智能终端,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序;所述处理器执行所述计算机程序时实现如本申请实施例所述的I/O调度的优化方法。本申请实施例提供一种I/O调度的优化方案,检测到目标应用程序发送的磁盘I/O请求;判断该磁盘I/O请求是否为目标应用程序在交互场景下产生的请求;根据判断结果将磁盘I/O请求添加到至少两个预设I/O调度队列中的一个,并按照预设处理策略对至少两个所述预设I/O调度队列内的磁盘I/O请求进行处理。通过采用上述技术方案,在检测到磁盘I/O请求时,并不是顺序将其添加至一个I/O调度队列内,而是根据该磁盘I/O请求是否在交互场景下产生而将其添加至预先设置的至少两个优先级不同的I/O调度队列中的一个,并按照预设处理策略分别对至少两个I/O调度队列内的磁盘I/O请求进行处理,可以避免出现交互场景下的磁盘I/O请求得不到及时响应的问题,改善了交互场景下终端的卡顿问题。附图说明图1为本申请实施例提供的一种I/O调度的优化方法的流程图;图2为本申请实施例提供的另一种I/O调度的优化方法的流程图;图3为本申请实施例提供的又一种I/O调度的优化方法的流程图;图4为本申请实施例提供的一种I/O调度的优化装置的结构示意图;图5为本申请实施例提供的一种智能终端的结构示意图;图6为本申请实施例提供的一种智能手机的结构框图。具体实施方式下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。图1为本申请实施例提供的一种I/O调度的优化方法的流程图,该方法可以由I/O调度的优化装置来执行,其中,该装置可由软件和/或硬件实现,一般可集成在终端中。如图1所示,该方法包括:步骤110、检测到目标应用程序发送的磁盘I/O请求。需要说明的是,本申请实施例中的终端可包括手机、平板电脑、笔记本电脑、台式电脑、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等智能设备。需要说明的是,磁盘I/O请求可以是应用程序读写磁盘上数据的请求。其中,磁盘是信息的载体,可以反复被改写。如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。磁盘的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。示例性的,将向系统发送磁盘I/O请求的应用程序标记为目标应用程序。获取目标应用程序发送的磁盘I/O请求。步骤120、判断所述磁盘I/O请求是否为所述目标应用程序在交互场景下产生的请求。需要说明的是,交互场景可以是与用户存在交互行为的场景,该交互场景包括应用程序在前台运行的场景、分屏模式下应用程序的触摸输入场景或分屏模式下即时通信场景。例如,用户观看视频的场景,此时视频应用程序在前台运行。又如,用户通过即时通讯工具与他人聊天的场景,此时即时通信应用程序在前台运行。又如,分屏模式下用户在第一分屏的应用程序的界面中输入触摸操作,此时处于分屏模式下应用程序的触摸输入场景。又如,用户通过分屏模式下的即时通信工具与他人聊天等等。示例性的,监听安卓层的程序执行情况,根据该程序执行情况确定运行在前台的应用程序。例如,用户点击应用程序A的图标时,产生应用程序A的启动指示,该启动指示被传递至安卓层。安卓层在接收到该启动指示时,执行一系列操作以启动应用程序A。在检测到启动应用程序A的操作时,确定应用程序A为前台运行的应用程序。将前台运行的应用程序产生的磁盘I/O请求确定为该应用程序在交互场景下产生的请求。由于前台运行的应用程序在满足程序更新条件时,可能在后台下载更新文件并自动进行程序更新,此时前台运行的应用程序产生了非交互场景下的磁盘I/O请求。为了提高判断地准确度,可以采用人工智能技术识别磁盘I/O请求是否为所述目标应用程序在交互场景下产生的请求。其中,人工智能技术的相关算法可以包括循环神经网络(Recurrentneuralnetworks,RNN)、长短期记忆(LongShort-TermMemory,LSTM)网络、门限循环单元、简单循环单元、自动编码器、决策树、随机森林、特征均值分类、分类回归树、隐马尔科夫、K最近邻(k-NearestNeighbor,KNN)算法、逻辑回归模型、贝叶斯模型、高斯模型以及KL散度(Kullback–Lei本文档来自技高网...

【技术保护点】
1.一种I/O调度的优化方法,其特征在于,包括:检测到目标应用程序发送的磁盘I/O请求;判断所述磁盘I/O请求是否为所述目标应用程序在交互场景下产生的请求;根据判断结果将所述磁盘I/O请求添加到至少两个预设I/O调度队列中的一个,并按照预设处理策略对至少两个所述预设I/O调度队列内的磁盘I/O请求进行处理,其中,不同的所述预设I/O调度队列的优先级不同。

【技术特征摘要】
1.一种I/O调度的优化方法,其特征在于,包括:检测到目标应用程序发送的磁盘I/O请求;判断所述磁盘I/O请求是否为所述目标应用程序在交互场景下产生的请求;根据判断结果将所述磁盘I/O请求添加到至少两个预设I/O调度队列中的一个,并按照预设处理策略对至少两个所述预设I/O调度队列内的磁盘I/O请求进行处理,其中,不同的所述预设I/O调度队列的优先级不同。2.根据权利要求1所述的方法,其特征在于,判断所述磁盘I/O请求是否为所述目标应用程序在交互场景下产生的请求,包括:获取所述目标应用程序中所述磁盘I/O请求对应的目标运行数据,将所述目标运行数据输入预设的场景识别模型,得到所述磁盘I/O请求是所述目标应用程序在交互场景下产生的请求的概率,其中,所述场景识别模型是基于交互场景下应用程序的历史运行数据训练的神经网络模型;在所述概率超过设定概率阈值时,确定所述磁盘I/O请求是所述目标应用程序在交互场景下产生的请求;在所述概率未超过设定概率阈值时,确定所述磁盘I/O请求是所述目标应用程序在非交互场景下产生的请求。3.根据权利要求2所述的方法,其特征在于,根据判断结果将所述磁盘I/O请求添加到至少两个预设I/O调度队列中的一个,包括:若所述磁盘I/O请求是所述目标应用程序在交互场景下产生的请求,则将所述磁盘I/O请求添加到第一I/O调度队列中;若所述磁盘I/O请求是所述目标应用程序在非交互场景下产生的请求,则将所述磁盘I/O请求添加到第二I/O调度队列中,其中,所述第一I/O调度队列的优先级高于所述第二I/O调度队列。4.根据权利要求3所述的方法,其特征在于,按照预设处理策略对至少两个所述预设I/O调度队列内的磁盘I/O请求进行处理,包括循环执行如下步骤:由所述第一I/O调度队列内获取第一数量的第一磁盘I/O请求,并对所述第一磁盘I/O请求进行处理;在处理完成所述第一磁盘I/O请求时,由所述第二I/O调度队列内获取第二数量的第二磁盘I/O请求,并对所述第二磁盘I/O请...

【专利技术属性】
技术研发人员:周华材张诗明
申请(专利权)人:OPPO广东移动通信有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1