[发明专利]一种提高数据密集型应用实时性的CPU调度方法在审
申请号: | 202110499170.9 | 申请日: | 2021-05-08 |
公开(公告)号: | CN113282408A | 公开(公告)日: | 2021-08-20 |
发明(设计)人: | 贾刚勇;乐柯磊;周俶易;蒋从锋;万健 | 申请(专利权)人: | 杭州电子科技大学 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 浙江千克知识产权代理有限公司 33246 | 代理人: | 周希良 |
地址: | 310018 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 提高 数据 密集型 应用 实时 cpu 调度 方法 | ||
1.一种提高数据密集型应用实时性的CPU调度方法,其特征在于该方法包括如下步骤:
步骤1:采集模块通过周期性地访问进程的进程描述符,收集进程的资源使用快照,其中包括进程的CPU使用时间、读取的字节数和写入的字节数;
步骤2:计算模块通过分析进程资源使用快照,根据进程的CPU使用时间和读取、写入的字节数分别计算得到进程CPU利用率、IO资源利用率;同时根据当时系统负载情况,计算得到进程CPU利用率阈值和进程IO资源利用率阈值;
步骤3:分类模块通过判断当前进程的CPU利用率是否大于进程CPU利用率阈值和当前进程的IO资源利用率是否大于进程IO资源利用率阈值,得出该进程是否属于数据密集型应用,并将进程类型信息保存到进程描述符的新增标志位字段data_intensive中;
步骤4:调度模块每次从进程就绪队列中选出优先级最高的进程执行,并跟踪该进程,统计进程对IO资源和内存资源的使用情况;
步骤5:进程分配的时间片到期后,调度模块通过标志位判断当前进程是否属于数据密集型应用;对于非数据密集型应用,保持进程优先级不变;对于数据密集型应用,CPU调度算法根据进程的IO资源使用和内存资源使用来更新进程的优先级,并根据新的优先级将进程重新放入到就绪队列中;
步骤6:重复执行步骤4、5,直到所有进程执行完毕。
2.根据权利要求1所述的一种提高数据密集型应用实时性的CPU调度方法,其特征在于:所述的数据密集型应用同时满足当前进程的CPU利用率大于进程CPU利用率阈值和当前进程的IO资源利用率大于进程IO资源利用率阈值。
3.根据权利要求1所述的一种提高数据密集型应用实时性的CPU调度方法,其特征在于:步骤5中所述的CPU调度算法具体是:
步骤5-1:从就绪队列中选择一个优先级最高的进程;
步骤5-2:执行进程,投入运行的进程将获得CPU资源,按照指令顺序执行;
步骤5-3:每当一个时间片到期时,判断当前运行的进程是否执行结束;如果该进程执行结束,把该进程从就绪队列中移除;如果进程还没有执行结束,将会进行下一步的操作;
步骤5-4:判断当前运行的进程是否属于数据密集型应用;通过对进程的进程描述符中的data_intensive字段进行判断,得到该进程的应用类型信息;如果该进程不属于数据密集型应用,那么保持该进程的优先级不变,并将进程重新加入就绪队列;如果该进程属于数据密集型应用,那么执行步骤5-5;
步骤5-5:对于该数据密集型应用对应的进程,当这个进程第一次获得CPU时间片投入运行结束后,将该进程的优先级提高一个固定的增量;第一层的优先级调整结束后,进入第二层的优先级调整;
步骤5-6:完成优先级更新后,进程将会重新入队;每当进程执行一个时间片后,进程的优先级根据这个时间片的内存使用情况进行更新;入队时会按照新的优先级加入到对应的链表尾部,等待下一次被调度;
步骤5-7:重复步骤5-1至5-6;通过时间片轮转的方式将每个可执行进程轮流分配给CPU。
4.根据权利要求3所述的一种提高数据密集型应用实时性的CPU调度方法,其特征在于:所述的第二层的优先级调整是根据每个时间片内进程使用的内存大小来进一步调整进程的优先级,具体是:通过比较当前时间片的RSS值和上个时间片的RSS值,得出进程使用内存的大小是增加还是减少;如果该进程使用的内存大小增加,那么将进程的优先级提高一个单位;如果进程使用的内存大小减少,那么将进程的优先级降低一个单位。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州电子科技大学,未经杭州电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110499170.9/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置