[发明专利]线程调度方法、装置、设备及存储介质在审
| 申请号: | 202211412741.1 | 申请日: | 2022-11-11 |
| 公开(公告)号: | CN116048747A | 公开(公告)日: | 2023-05-02 |
| 发明(设计)人: | 张文骢 | 申请(专利权)人: | 上海元驰彗行汽车科技有限公司 |
| 主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50;G06F15/78 |
| 代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 杨爱平 |
| 地址: | 200233 上海市嘉定*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 线程 调度 方法 装置 设备 存储 介质 | ||
1.一种线程调度方法,其特征在于,应用于系统级芯片SOC,所述SOC用于运行QNX操作系统,且所述SOC部署有守护进程,所述方法包括:
在所述QNX操作系统启动的情况下,启动所述守护进程,所述守护进程在启动之后生成线程队列,所述线程队列包括多个线程中每个线程分别对应的线程属性结构信息,所述多个线程归属于N个任务进程,每个任务进程对应于M个线程,N为大于或者等于2的正整数,M为大于或者等于1的正整数;
在所述N个任务进程分别对应的目标代码编译为可执行文件且所述可执行文件部署在所述SOC上之后,通过所述守护进程依次启动所述N个任务进程,以使所述N个任务进程在所述QNX操作系统运行;
通过所述守护进程设置所述N个任务进程分别对应的CPU核;
通过所述守护进程确定每个线程在时间轴上对应的时间片,其中,所述守护进程根据所述线程队列设置所述N个任务进程分别对应的CPU核、根据所述线程队列确定每个线程对应的时间片;
在到达目标线程的运行时刻时,通过所述守护进程确定所述目标线程对应的目标CPU核,将所述目标CPU核对应的CPU核资源分配给所述目标线程、控制所述目标线程运行。
2.根据权利要求1所述的方法,其特征在于,所述任务进程对应的目标代码为将所述任务进程对应的M个线程接口嵌入所述任务进程对应的框架代码后生成,所述任务进程对应的框架代码基于对应于所述N个任务进程的配置文件确定,且在所述配置文件更新的情况下,所述目标代码同步更新;
其中,所述目标代码的生成和更新基于目标脚本自动执行。
3.根据权利要求1或2所述的方法,其特征在于,所述线程属性结构信息基于线程属性结构体确定,每一线程对应于一所述线程属性结构体,所述线程属性结构体根据配置文件生成,所述配置文件对应于所述N个任务进程;
其中,所述线程属性结构体至少包括线程运行开始时间、线程运行时长、线程运行周期以及线程所属任务进程对应的CPU核。
4.根据权利要求3所述的方法,其特征在于,所述通过所述守护进程设置所述N个任务进程分别对应的CPU核、通过所述守护进程确定每个线程在时间轴上对应的时间片,包括:
通过所述守护进程根据多个线程属性结构信息,设置所述N个任务进程分别对应的CPU核;
通过所述守护进程根据所述多个线程属性结构信息,将所述多个线程在时间轴上排序,确定每个线程在时间轴上对应的时间片。
5.根据权利要求3所述的方法,其特征在于,所述配置文件包括归属于所述N个任务进程的所述每个线程对应的配置参数,所述线程对应的线程属性结构体基于所述线程对应的配置参数生成;在所述配置文件更新的情况下,所述线程属性结构体同步更新;
其中,所述线程属性结构体的生成和更新基于目标脚本自动执行。
6.根据权利要求3所述的方法,其特征在于,所述守护进程在启动之后生成线程队列,包括:
所述守护进程在启动后,根据所述多个线程分别对应的线程属性结构信息生成所述线程队列;
其中,所述守护进程在经过编译之后包括多个线程属性结构信息、所述守护进程在经过编译之前包括多个线程属性结构体。
7.根据权利要求3所述的方法,其特征在于,所述线程属性结构体还包括线程所属任务进程对应的运行优先级次序,所述方法还包括:
在通过所述守护进程设置所述N个任务进程分别对应的CPU核的情况下,通过所述守护进程设置所述N个任务进程分别对应的运行优先级次序;
其中,所述守护进程根据多个线程属性结构信息设置运行优先级次序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海元驰彗行汽车科技有限公司,未经上海元驰彗行汽车科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211412741.1/1.html,转载请声明来源钻瓜专利网。





