进程调度方法、装置、电子设备及计算机可读存储介质制造方法及图纸

技术编号:34972885 阅读:25 留言:0更新日期:2022-09-21 14:13
本申请公开了一种进程调度方法、装置、电子设备及计算机可读存储介质,涉及云技术、计算机及操作系统技术领域,该方法包括:获取待运行进程的进程类型;若待运行进程的进程类型为目标类型,在待运行进程所对应的物理核的至少一个逻辑核上运行属于目标类型的至少一个进程,在物理核的逻辑核上运行的非目标类型的进程被挂起,若待运行进程的进程类型为非目标类型,且在物理核上当前运行的进程不包括目标类型的进程,在物理核的逻辑核上运行待运行进程;若在物理核上当前运行的进程包括目标类型的进程,挂起待运行进程。根据本申请的方法,基于进程的进程类型,动态调度进程,使得进程运行时不浪费逻辑核的资源,从而提升CPU的使用效率。效率。效率。

【技术实现步骤摘要】
进程调度方法、装置、电子设备及计算机可读存储介质


[0001]本申请涉及云技术、计算机及操作系统
,具体而言,本申请涉及一种进程调度方法、装置、电子设备及计算机可读存储介质。

技术介绍

[0002]现有的操作系统中,针对需要独占物理核运行的业务进程,通常在这种类型的进程运行时,让业务进程独享一个完整的物理核,但对于同一个物理核包括多个逻辑核的场景,由于多个逻辑核之间彼此有独立的资源,也有共享的资源,让业务进程独占一个完整的物理核来运行,可能会导致逻辑核之间的共享资源不再使用,造成资源浪费。因此,如何在保证业务进程的运行效果的情况下,提升CPU的使用效率是目前亟待解决的问题。

技术实现思路

[0003]本申请的目的旨在至少能解决上述的技术缺陷之一,特提出以下技术方案,以解决提高CPU使用效率的问题。
[0004]根据本申请的一个方面,提供了一种进程调度方法,该方法包括:
[0005]获取待运行进程的进程类型;
[0006]若待运行进程的进程类型为目标类型,则在待运行进程所对应的物理核的至少一个逻辑核上运行属于目标类型的至少一个进程,在物理核的逻辑核上运行的非目标类型的进程被挂起,其中,目标类型为需要独占物理核的进程;
[0007]若待运行进程的进程类型为非目标类型,且在物理核的逻辑核上当前运行的进程不包括目标类型的进程,则在物理核的逻辑核上运行待运行进程;
[0008]若待运行进程的进程类型为非目标类型,且在物理核的逻辑核上当前运行的进程包括目标类型的进程,则挂起待运行进程。
[0009]根据本申请的另一个方面,提供了一种进程调度装置,该装置包括:
[0010]进程类型获取模块,用于获取待运行进程的进程类型;
[0011]进程调度模块,用于若待运行进程的进程类型为目标类型,则在待运行进程所对应的物理核的至少一个逻辑核上运行属于目标类型的至少一个进程,在物理核的逻辑核上运行的非目标类型的进程被挂起,其中,目标类型为需要独占物理核的进程;若待运行进程的进程类型为非目标类型,且在物理核的逻辑核上当前运行的进程不包括目标类型的进程,则在物理核的逻辑核上运行待运行进程;若待运行进程的进程类型为非目标类型,且在物理核上当前运行的进程包括目标类型的进程,则挂起待运行进程。
[0012]在一种可能的实现方式中,进程调度模块在待运行进程的进程类型为目标类型,则在待运行进程所对应的物理核的至少一个逻辑核上运行属于目标类型的至少一个进程时,具体用于:
[0013]确定待运行进程所对应的物理核;
[0014]若待运行进程的进程类型为目标类型,且待运行进程所对应的物理核不是空闲的
物理核,则在待运行进程所对应的物理核的至少一个逻辑核上运行属于目标类型的至少一个进程;
[0015]该装置还包括:
[0016]进程运行模块,用于若待运行进程所对应的物理核是空闲的物理核,则在空闲的物理核的逻辑核上运行待运行进程。
[0017]在一种可能的实现方式中,进程调度模块在确定待运行进程所对应的物理核时,具体用于:
[0018]若只有一个物理核,将该物理核作为待运行进程所对应的物理核;
[0019]若存在至少两个物理核,且至少两个物理核中存在空闲的物理核,将空闲的物理核作为待运行进程所对应的物理核;
[0020]若存在至少两个物理核,且至少两个物理核中不存在空闲的物理核,则基于预配置的物理核确定策略,从至少两个物理核中确定待运行进程所对应的物理核;
[0021]其中,物理核确定策略括以下至少一项:
[0022]将至少两个物理核中负载最低的物理核作为待运行进程所对应的物理核;
[0023]将至少两个物理核中调用顺序靠前的物理核作为待运行进程所对应的物理核。
[0024]在一种可能的实现方式中,在空闲的物理核的逻辑核上运行待运行进程之后,该装置还包括:
[0025]进程管理模块,用于在待运行进程运行结束之前,不在待运行进程对应的物理核的逻辑核上运行其他进程。
[0026]在一种可能的实现方式中,进程调度模块在待运行进程的进程类型为目标类型,则在待运行进程所对应的物理核的至少一个逻辑核上运行属于目标类型的至少一个进程时,具体用于:
[0027]若待运行进程所对应的物理核的逻辑核上当前运行的进程中不包括属于目标类型的进程,则在待运行进程所对应的物理核的一个逻辑核上运行待运行进程;
[0028]若待运行进程所对应的物理核的逻辑核上当前运行的进程中包括属于目标类型的第一进程,则在待运行进程所对应的物理核的至少一个逻辑核上运行待运行进程或第一进程中的至少一个进程。
[0029]在一种可能的实现方式中,进程调度模块在待运行进程所对应的物理核的一个逻辑核上运行待运行进程时,具体用于:
[0030]若存在空闲的逻辑核,则在空闲的逻辑核上运行待运行进程;
[0031]若不存在空闲的逻辑核,则在物理核上运行的非目标类型的进程被挂起之后,在任一空闲的逻辑核上运行待运行进程。
[0032]在一种可能的实现方式中,该装置还包括:
[0033]进程确定模块,用于根据预配置的进程调度策略确定至少一个进程;
[0034]进程调度策略包括以下至少一项:
[0035]运行第一进程,挂起待运行进程;
[0036]运行待运行进程,挂起第一进程;
[0037]运行待运行进程和第一进程;
[0038]运行待运行进程和第一进程中优先级较高的进程,挂起优先级较低的进程。
[0039]在一种可能的实现方式中,在任一目标类型的进程运行结束时,该装置还包括:
[0040]挂起进程处理模块,用于在运行结束的目标类型的进程所对应的物理核中存在被挂起的进程时,运行被挂起的进程中的至少一个。
[0041]在一种可能的实现方式中,若同一个物理核的逻辑核上同时运行至少两个目标类型的进程,且任一目标类型的进程为至少两个目标类型的进程中的最后一个运行结束的进程,挂起进程处理模块在运行结束的目标类型的进程所对应的物理核中存在被挂起的进程,则运行被挂起的进程中的至少一个时,具体用于:
[0042]若同一个物理核中存在被挂起的非目标类型的进程,则运行被挂起的非目标类型的进程中的至少一个。
[0043]在一种可能的实现方式中,该装置应用于CPU中,CPU包括物理核,物理核包括至少两个逻辑核。
[0044]根据本申请的再一个方面,提供了一种电子设备,该电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行该计算机程序时实现本申请的进程调度方法。
[0045]根据本申请的又一个方面,提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现本申请的进程调度方法。
[0046]本专利技术实施例还提供了一种计算机程序产品或计算机程序,该计算机程序本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种进程调度方法,其特征在于,所述方法包括:获取待运行进程的进程类型;若所述待运行进程的进程类型为目标类型,则在所述待运行进程所对应的物理核的至少一个逻辑核上运行属于所述目标类型的至少一个进程,在所述物理核的逻辑核上运行的非目标类型的进程被挂起,其中,所述目标类型为需要独占物理核的进程;若所述待运行进程的进程类型为非目标类型,且在所述物理核的逻辑核上当前运行的进程不包括所述目标类型的进程,则在所述物理核的逻辑核上运行所述待运行进程;若所述待运行进程的进程类型为非目标类型,且在所述物理核的逻辑核上当前运行的进程包括所述目标类型的进程,则挂起所述待运行进程。2.根据权利要求1所述的方法,其特征在于,所述若所述待运行进程的进程类型为目标类型,则在所述待运行进程所对应的物理核的至少一个逻辑核上运行属于所述目标类型的至少一个进程,包括:确定所述待运行进程所对应的物理核;若所述待运行进程的进程类型为目标类型,且所述待运行进程所对应的物理核不是空闲的物理核,则在所述待运行进程所对应的物理核的至少一个逻辑核上运行属于所述目标类型的至少一个进程;所述方法还包括:若所述待运行进程所对应的物理核是空闲的物理核,则在所述空闲的物理核的逻辑核上运行所述待运行进程。3.根据权利要求2所述的方法,其特征在于,所述确定所述待运行进程所对应的物理核,包括:若只有一个物理核,将该物理核作为所述待运行进程所对应的物理核;若存在至少两个物理核,且所述至少两个物理核中存在空闲的物理核,将所述空闲的物理核作为所述待运行进程所对应的物理核;若存在至少两个物理核,且所述至少两个物理核中不存在空闲的物理核,则基于预配置的物理核确定策略,从所述至少两个物理核中确定所述待运行进程所对应的物理核;其中,所述物理核确定策略括以下至少一项:将所述至少两个物理核中负载最低的物理核作为所述待运行进程所对应的物理核;将所述至少两个物理核中调用顺序靠前的物理核作为所述待运行进程所对应的物理核。4.根据权利要求2所述的方法,其特征在于,所述在所述空闲的物理核的逻辑核上运行所述待运行进程之后,还包括:在所述待运行进程运行结束之前,不在所述待运行进程对应的物理核的逻辑核上运行其他进程。5.根据权利要求1至4中任一项所述的方法,其特征在于,所述若所述待运行进程的进程类型为目标类型,则在所述待运行进程所对应的物理核的至少一个逻辑核上运行属于所述目标类型的至少一个进程,包括:若所述待运行进程所对应的物理核的逻辑核上当前运行的进程中不包括属于所述目标类型的进程,则在所述待运行进程所对应的物理核的一个逻辑核上运行所述待运行进
程;若所述待运行进程所对应的物理核的逻辑核上当前运行的进程中包括属于所述目标类型的第一进程,则在所述待运行进程所对应的物理核的至少一个逻辑核上运行所述待运行进程或...

【专利技术属性】
技术研发人员:刘华
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1