[发明专利]控制由计算系统执行的任务有效
申请号: | 201811207891.2 | 申请日: | 2014-04-23 |
公开(公告)号: | CN109614170B | 公开(公告)日: | 2022-02-25 |
发明(设计)人: | C·W·斯坦菲尔 | 申请(专利权)人: | 起元科技有限公司 |
主分类号: | G06F9/448 | 分类号: | G06F9/448 |
代理公司: | 隆天知识产权代理有限公司 72003 | 代理人: | 石海霞;金鹏 |
地址: | 美国马*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 控制 计算 系统 执行 任务 | ||
1.一种执行任务的方法,所述方法包括:
在至少一个存储器中存储用于执行多个任务的指令,所述指令对于至少一些所述任务中的每一个任务包括相应的子程序,该子程序包括用于执行该任务的任务部分和控制后续任务的子程序执行的控制部分;并且
由至少一个处理器执行至少一些所存储的子程序,所述执行包括:
生成用于执行第一任务的第一子程序的第一进程,所述第一子程序包括第一任务部分和第一控制部分;并且
在所述第一任务部分返回之后,调用所述第一控制部分中所包括的至少一个函数,该函数确定是否生成用于执行第二子程序的第二进程,所述第二子程序不同于所述第一子程序。
2.根据权利要求1所述的方法,其中所述函数被配置为:
减小与所述第二子程序相关的计数器,并且基于所述计数器的值确定是否初始化所述第二子程序的执行。
3.根据权利要求1或2所述的方法,其中当使用识别对应于所述第二子程序的第二任务的参数来调用函数时,所述函数被配置为基于状态信息来确定是否初始化所述第二子程序的执行,所述状态信息捕捉之前以识别所述第二任务的参数来调用该函数的历史。
4.根据权利要求3所述的方法,其中所述函数是多个不同函数中的一个,并且所述状态信息捕捉之前以识别所述第二任务的参数来调用所述多个不同函数中任意函数的历史。
5.根据权利要求1所述的方法,其中所述函数被配置为:在所述第一进程中初始化所述第二子程序的执行,并且响应于所述第二子程序的执行时间超过预定阈值,生成所述第二进程以继续执行所述第二子程序。
6.根据权利要求5所述的方法,其中所述函数被配置为将与所述第一进程相关的栈框架提供给所述第二进程。
7.根据权利要求5或6所述的方法,其中所述函数被配置为在生成所述第二进程之后返回以使得所述第一进程继续与所述第二进程同时执行。
8.根据权利要求1所述的方法,其中所述第一控制部分包括确定所述第一任务部分是否被调用的逻辑。
9.根据权利要求8所述的方法,其中所述逻辑基于与所述第一任务相关的标志的值来确定所述第一任务部分是否被调用。
10.根据权利要求1所述的方法,其中所述第二子程序对应于第二任务,并且所述第一控制部分至少部分基于指定多个任务中至少部分排序的排序信息,所述多个任务包括所述第一任务和所述第二任务。
11.根据权利要求10所述的方法,其中所述排序信息包括控制流图,所述控制流图包括在表示相应任务的节点的各对之间的有向边,其中从上游节点到下游节点的有向边表明在所述部分排序中由所述上游节点表示的所述任务先于由所述下游节点表示的所述任务。
12.根据权利要求1所述的方法,其中调用所述第一控制部分中所包括的至少一个函数包括调用所述第一控制部分中所包括的、确定是否生成所述第二进程的至少一个函数,所述第二进程用于在没有调用中央任务调度进程的情况下执行所述第二子程序。
13.一种计算机可读存储介质,具有存储于其上的计算机程序,用于执行任务,所述计算机程序包括用于使计算系统执行下述步骤的指令:
存储用于执行多个任务的指令,所述指令对于至少一些所述任务中的每一个任务包括相应的子程序,该子程序包括用于执行该任务的任务部分和控制后续任务的子程序执行的控制部分;并且
执行至少一些所存储的子程序,所述执行包括:
生成用于执行第一任务的第一子程序的第一进程,所述第一子程序包括第一任务部分和第一控制部分;并且
在所述第一任务部分返回之后,调用所述第一控制部分中所包括的至少一个函数,该函数确定是否生成用于执行第二子程序的第二进程,所述第二子程序不同于所述第一子程序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于起元科技有限公司,未经起元科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811207891.2/1.html,转载请声明来源钻瓜专利网。