[发明专利]任务执行方法、装置、计算机设备、存储介质和程序产品在审
申请号: | 202210143135.8 | 申请日: | 2022-02-16 |
公开(公告)号: | CN114546642A | 公开(公告)日: | 2022-05-27 |
发明(设计)人: | 张文泰 | 申请(专利权)人: | 哲库科技(北京)有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/48;G06F9/54 |
代理公司: | 华进联合专利商标代理有限公司 44224 | 代理人: | 聂榕 |
地址: | 100020 北京市朝阳区朝*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 任务 执行 方法 装置 计算机 设备 存储 介质 程序 产品 | ||
1.一种任务执行方法,其特征在于,包括:
在第一任务运行至阻塞点时,将所述第一任务的相关数据备份至预设存储空间中之后,挂起所述第一任务;其中,所述预设存储空间为共享栈资源池之外的存储资源;
在所述第一任务被唤醒时,将所述预设存储空间中所述第一任务的相关数据写入第一栈内存中,并基于所述第一栈内存执行所述第一任务;所述第一栈内存是在所述第一任务被唤醒时从所述共享栈资源池中获取的。
2.根据权利要求1所述的方法,其特征在于,所述相关数据包括所述第一任务的寄存器配置、所述第一任务的任务栈帧的偏移值、所述第一任务在第二栈内存的保存寄存器偏移值、返回地址值、所述第一任务的封装线程局部变量和所述第一任务的接收消息局部变量中的至少一个;其中,所述第二栈内存为所述第一任务创建之前从所述共享栈资源池中确定的用于存储所述相关数据的栈内存。
3.根据权利要求2所述的方法,其特征在于,所述预设存储空间包括系统控制块和预设内存;所述将所述第一任务的相关数据备份至预设存储空间中,包括以下中的至少一项:
将所述第一任务的寄存器配置、所述第一任务的任务栈帧的偏移值、所述第二栈内存的保存寄存器偏移值和所述返回地址值中的至少一个,备份至所述预设内存中;
将所述第一任务的封装线程局部变量和/或所述第一任务的接收消息局部变量,备份至所述系统控制块中。
4.根据权利要求2或3所述的方法,其特征在于,所述第二栈内存为所述第一任务创建之前从所述共享栈资源池中确定的,包括:
所述第二栈内存为所述第一任务创建之前从所述第一任务所在核对应的共享栈资源池中确定的。
5.根据权利要求4所述的方法,其特征在于,所述第一栈内存为所述第一任务被唤醒时,从所述第一任务所在核对应的共享栈资源池中确定的。
6.根据权利要求5所述的方法,其特征在于,所述共享栈资源池包括多个栈内存,不同优先级的任务对应不同的栈内存。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在所述第一任务创建前,根据所述第一任务的优先级从所述共享栈资源池中确定所述第二栈内存。
8.根据权利要求2所述的方法,其特征在于,所述方法还包括:
将所述相关数据备份至所述预设存储空间中之后,释放所述第二栈内存。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
在释放之后的第二栈内存中执行第二任务。
10.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在将所述相关数据备份至所述预设存储空间的过程中,控制操作系统关闭抢占功能;以及,在释放所述第二栈内存之后,控制所述操作系统开启所述抢占功能;所述抢占功能表示允许所述第一任务之外的其他任务抢占所述第二栈内存。
11.一种任务执行装置,其特征在于,包括:
备份模块,用于在第一任务运行至阻塞点时,将所述第一任务的相关数据备份至预设存储空间中之后,挂起所述第一任务;其中,所述预设存储空间为共享栈资源池之外的存储资源;
第一执行模块,用于在所述第一任务被唤醒时,将所述预设存储空间中所述第一任务的相关数据写入第一栈内存中,并基于所述第一栈内存执行所述第一任务;所述第一栈内存是在所述第一任务被唤醒时从所述共享栈资源池中获取的。
12.一种计算机设备,包括存储器及处理器,所述存储器中储存有计算机程序,其特征在于,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至10中任一项所述的任务执行方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哲库科技(北京)有限公司,未经哲库科技(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210143135.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种生态住宅房建筑
- 下一篇:一种用于储能电池集装箱的安全系统