【技术实现步骤摘要】
线程调度方法、装置、设备及存储介质
[0001]本申请涉及计算机
,尤其涉及一种线程调度方法、装置、设备及存储介质。
技术介绍
[0002]QNX操作系统是一种分布式实时操作系统,其中,分布式操作系统,指的是可以将网络中的多台计算机耦合起来,任何一台计算机上的任何一个进程可以和其它计算机上的任何进程通信;实时操作系统,指的是被触发运行的代码能够在规定时限内执行完毕,并能在规定时限内对外部异步事件做出响应。QNX是一种理想的实时操作系统,它提供了一个实时操作系统所需要的一切基本要素:多任务、优先级驱动的紧急者优先式的调度方式和快速的上下文切换等。
[0003]在现有技术中,一个系统级芯片(System on Chip,SOC)包括一个或者多个中央处理器(central processing unit,CPU),每个CPU包括一个或者多个处理核,当多进程并行运行时,由操作系统负责给各进程中的线程分配CPU资源,选择在哪个处理核上运行该线程。
[0004]在QNX系统中,调度模块会根据当下各线程的优先级高低, ...
【技术保护点】
【技术特征摘要】
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个任务进程分别对应的运行优先级次序;其中,所述守护进程根据多个线程属性结构信息设置运...
【专利技术属性】
技术研发人员:张文骢,
申请(专利权)人:上海元驰彗行汽车科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。