CN114327767B - 任务处理的方法、装置、电子设备及计算机可读存储介质 - Google Patents

任务处理的方法、装置、电子设备及计算机可读存储介质 Download PDF

Info

Publication number
CN114327767B
CN114327767B CN202111629659.XA CN202111629659A CN114327767B CN 114327767 B CN114327767 B CN 114327767B CN 202111629659 A CN202111629659 A CN 202111629659A CN 114327767 B CN114327767 B CN 114327767B
Authority
CN
China
Prior art keywords
virtual machine
determining
task
target
candidate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111629659.XA
Other languages
English (en)
Other versions
CN114327767A (zh
Inventor
沈一聪
邹仕洪
姜哲
张广伟
张炯明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yuanxin Information Technology Group Co ltd
Original Assignee
Yuanxin Information Technology Group Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yuanxin Information Technology Group Co ltd filed Critical Yuanxin Information Technology Group Co ltd
Priority to CN202111629659.XA priority Critical patent/CN114327767B/zh
Publication of CN114327767A publication Critical patent/CN114327767A/zh
Application granted granted Critical
Publication of CN114327767B publication Critical patent/CN114327767B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请实施例提供了一种任务处理的方法、装置、电子设备及计算机可读存储介质,涉及虚拟化技术领域。该方法包括:若执行目标任务的初始虚拟机出现阻塞,则确定至少一个优先级低于初始虚拟机且处于空闲状态的参考虚拟机;从至少一个参考虚拟机中确定候选虚拟机;候选虚拟机符合第一预设条件且候选虚拟机的物理核心符合第二预设条件;从候选虚拟机中确定并调用目标虚拟机,执行目标任务。本申请实施例将初始虚拟机的阻塞服务转移到目标虚拟机上,该目标虚拟机优先级低于该初始虚拟机、处于空闲状态、符合第一预设条件,该目标虚拟机的物理核心符合第二预设条件,极大减少了初始虚拟机的阻塞次数和时间,提高了虚拟机整体的运行效率以及实时性能。

Description

任务处理的方法、装置、电子设备及计算机可读存储介质
技术领域
本申请涉及虚拟化技术领域,具体而言,本申请涉及一种任务处理的方法、装置、电子设备及计算机可读存储介质。
背景技术
虚拟化已经成为计算机领域一种流行的技术。虚拟化技术允许在同一物理主机上运行多个用户操作系统,通过将多个虚拟机整合到单个硬件平台上,可以降低成本并提高可管理性,同时,计算资源可以根据应用的需求进行灵活的调整和优化。提供虚拟化的软件或系统可以称为虚拟机监视器(Virtual Machine Monitor)或Hypervisor。
每个虚拟机运行于其所在的虚拟核心,虚拟核心是一个虚拟的核心处理器,虚拟核心和虚拟机监视器位于某个物理核心。虚拟机在运行过程中,某些特定的指令和任务需要通过虚拟机退出(VM Exit)进入到虚拟机监视器来处理,虚拟机退出实际上是虚拟机退出虚拟核心,进入该物理核心中的虚拟机监视器。在此过程中,虚拟机中的全部并发任务都会被阻塞,无法继续进行,极大影响了实时性。因此,虚拟机在运行过程中发生的虚拟机退出的频率以及每次虚拟机占用的时间直接影响了客户操作系统任务执行的效率,并且对系统的实时性造成了威胁。
现有方案为减少这些异常阻塞对系统实时性的影响,往往采取以下两种方式进行优化:第一种方式是优化虚拟机监视器的异常处理流程,尽可能缩短在虚拟机监视器中停留的时间,这种方式能够在一定程度上降低阻塞的时间,但降低阻塞的能力有限;第二种方式是在虚拟机监视器处理请求期间,将被阻塞的虚拟机种的其他任务转移到其他核心运行,这种方式在一定程序上可以避免异常陷入,但需要频繁的将虚拟机中的不同任务转移到不同的核心,导致实现方式较为复杂且开销过于庞大。
发明内容
本申请实施例提供了一种任务处理的方法、装置、电子设备、计算机可读存储介质及计算机程序产品,用于解决现有方案避免阻塞的方式复杂且成本高的技术问题。
根据本申请实施例的一个方面,提供了一种任务处理的方法,该方法包括:
若执行原始任务的初始虚拟机出现阻塞,则将原始任务转化为可异步执行的目标任务,并确定至少一个优先级低于初始虚拟机的参考虚拟机;
从至少一个参考虚拟机中确定候选虚拟机;候选虚拟机符合第一预设条件且候选虚拟机的物理核心符合第二预设条件;
从候选虚拟机中确定并调用目标虚拟机,执行目标任务。
在一个可能的实现方式中,从至少一个参考虚拟机中确定候选虚拟机,包括:
若参考虚拟机为非计算密集类型虚拟机,则确定参考虚拟机符合第一预设条件;
若参考虚拟机的物理核心可以与初始虚拟机的物理核心进行通信且参考虚拟机的物理核心运行的应用为非计算密集类型应用,则确定参考虚拟机的物理核心符合第二预设条件。
在一个可能的实现方式中,从候选虚拟机中确定并调用目标虚拟机,包括:
确定每个候选虚拟机的当前的任务数量,确定任务数量对应的第一权重,根据第一权重对任务数量进行加权,得到第一影响值;
确定每个候选虚拟机的优先级顺序,确定候选虚拟机的优先级顺序对应的第二权重,根据第二权重对虚拟机的优先级顺序进行加权,得到第二影响值;
确定每个候选虚拟机的物理核心的优先级顺序,确定物理核心的优先级顺序对应的第三权重,根据第三权重对候选虚拟机的物理核心的优先级顺序进行加权,得到第三影响值;
确定第一影响值、第二影响值以及第三影响值的总和,将总和最大的候选虚拟机作为目标虚拟机。
在一个可能的实现方式中,确定候选虚拟机的优先级顺序,包括:
确定候选虚拟机在物理核心中所占用的核心类型,根据核心类型确定候选虚拟机的优先级顺序;核心类型包括主核心和从核心;
确定每个候选虚拟机的物理核心的优先级顺序,包括:
确定每个候选虚拟机的物理核心的状态,状态包括空闲状态和运行状态;根据每个物理核心的状态确定物理核心的优先级顺序。
在一个可能的实现方式中,执行目标任务,之前还包括:
获取目标虚拟机的任务队列,将目标任务加入任务队列,并对任务队列中的所有任务进行优先级重排,确定目标任务的优先级顺序;
在接收到目标通知后,若目标任务当前的优先级顺序最高,则确定执行目标任务;目标通知可以为虚拟机监视器的主动通知、外部设备的中断通知以及目标虚拟机的通知中的任意一种。
在一个可能的实现方式中,对任务队列中的所有任务进行优先级重排,之前还包括:
若任务队列中存在可以和目标任务合并的异步任务,则将目标任务和异步任务合并,并确定合并后的任务的优先级为异步任务和目标任务中的较高优先级。
在一个可能的实现方式中,执行目标任务,之后还包括:
将执行结果发送至初始虚拟机,并发送目标通知至目标虚拟机;释放目标任务占用的资源,并清理数据缓存。
根据本申请实施例的另一个方面,提供了一种任务处理的装置,该装置包括:
参考虚拟机确定模块,用于若执行原始任务的初始虚拟机出现阻塞,则将原始任务转化为可异步执行的目标任务,并确定至少一个优先级低于初始虚拟机的参考虚拟机;
候选虚拟机确定模块,用于从至少一个参考虚拟机中确定候选虚拟机;候选虚拟机符合第一预设条件且候选虚拟机的物理核心符合第二预设条件;
目标虚拟机调用模块,用于从候选虚拟机中确定并调用目标虚拟机,执行目标任务。
根据本申请实施例的另一个方面,提供了一种电子设备,该电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现如第一方面所提供的方法的步骤。
根据本申请实施例的再一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所提供的方法的步骤。
根据本申请实施例的又一个方面,提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中,当计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行实现如第一方面所提供的方法的步骤。
本申请实施例提供的技术方案带来的有益效果是:
本申请实施例若执行目标任务的初始虚拟机出现阻塞,则确定至少一个优先级低于初始虚拟机且处于空闲状态的参考虚拟机;从至少一个参考虚拟机中确定候选虚拟机;候选虚拟机符合第一预设条件且候选虚拟机的物理核心符合第二预设条件;从候选虚拟机中确定并调用目标虚拟机,执行目标任务。本申请实施例将初始虚拟机的阻塞服务转移到目标虚拟机上,该目标虚拟机优先级低于该初始虚拟机、处于空闲状态、符合第一预设条件,该目标虚拟机的物理核心符合第二预设条件,极大减少了初始虚拟机的阻塞次数和时间,提高了虚拟机整体的运行效率以及实时性能。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供现有技术虚拟机的整个阻塞过程的示意图;
图2为本申请实施例提供的一种任务处理的方法的流程示意图;
图3为本申请实施例提供的在任务处理过程中优化虚拟机阻塞的示意图;
图4为本申请实施例提供的一种任务处理的装置的结构示意图;
图5为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面结合本申请中的附图描述本申请的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本申请实施例的技术方案的示例性描述,对本申请实施例的技术方案不构成限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“”和“该”也可包括复数形式。应该进一步理解的是,本申请实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作、元件和/或组件,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作、元件、组件和/或它们的组合等。应该理解,当我们称一个元件被“连接”或“耦接”到另一元件时,该一个元件可以直接连接或耦接到另一元件,也可以指该一个元件和另一元件通过中间元件建立连接关系。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的术语“和/或”指示该术语所限定的项目中的至少一个,例如“A和/或B”可以实现为“A”,或者实现为“B”,或者实现为“A和B”。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先对本申请涉及的几个名词进行介绍和解释:
任务远程核心分配(Task Remote Core Assignment,TRCA)是一个可以用来解决前文中所述多种不可抢占的内核阻塞事件造成的时间不确定性的新技术。本申请技术方案的设计借鉴了TRCA的思想。
虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统,在实体计算机中能够完成的工作一般在虚拟机中都能够实现。在计算机等电子设备中创建虚拟机时,需要将实体机的部分硬盘和内存容量作为虚拟机的硬盘和内存容量,每个虚拟机都可以视为有独立的硬件和操作系统,可以像使用实体机一样对虚拟机进行操作。
虚拟机监视器(Hypervisor),也可称做VMM(virtual machine monitor),是一种运行在物理硬件和操作系统之间的中间软件层,可允许多个操作系统或应用共享硬件。Hypervisors可以视为一种在虚拟环境中的“元”操作系统,可以访问包括磁盘和内存在内的所有物理硬件,Hypervisors不但协调着这些硬件资源的访问,同时也能在各个虚拟机之间施加防护。
为了能够充分利用硬件资源,往往需要让多个虚拟机共享同一底层硬件,并且通过全模拟(Full Emulation)或者半虚拟化(Virtio)的方式对上层虚拟机提供设备抽象。
在这一过程中,虚拟核心中的虚拟机监视器需要拦截上层虚拟机对所有设备的MMIO(Memory-mapped I/O,内存映射I/O)访问请求(即任务为对所有设备的MMIO访问请求),并且在内核或者类Dom0的虚拟机中完成I/O设备的请求和转发。这种情况下,如果虚拟机监视器提供的是基于阻塞工作模式的虚拟设备,那么只有当该MMIO请求访问完成或者超时之后才能从虚拟机监视器返回到发出MMIO请求的虚拟机中。在此期间,该虚拟机的所有的并发任务都被阻塞无法继续进行,极大地影响了实时性。对于非阻塞工作模式的虚拟设备,在MMIO请求被转发后可以直接返回虚拟机继续运行,但是依然有大量的CPU时钟周期被耗费在了MMIO请求的解析、MMIO队列的状态更新以及MMIO缓冲区的拷贝等。
如图1所示,其示例性示出了现有技术虚拟机的整个阻塞过程的示意图,包括虚拟机VM、虚拟机监视器Hypervisor以及硬盘Disk,以任务为MMIO请求为例,整个过程为:当MMIO请求到达VM时,VM执行该MMIO请求,在执行该MMIO请求过程中,该VM进行VM exit退出该VM,进入Hypervisor,Hypervisor将该MMIO加入其对应的任务队列,并准备缓存,在该MMIO请求优先级最高时,读取Disk中的资源,继续对该MMIO请求进行执行,执行完毕再返回VM。显然,在退出该VM后,该VM很长一段时间处于阻塞状态,VM中的其他任务无法被执行。
现有方案往往采取以下两种方式降低虚拟机的阻塞:第一种方式是优化虚拟机监视器的异常处理流程,尽可能缩短在虚拟机监视器中停留的时间,这种方式能够在一定程度上降低阻塞的时间,但降低阻塞的能力有限;第二种方式是在虚拟机监视器处理请求期间,将被阻塞的虚拟机种的其他任务转移到其他核心运行,这种方式在一定程序上可以避免异常陷入,但需要频繁的将虚拟机种的不同任务转移到不同的核心,导致实现方式较为复杂且开销过于庞大。
针对相关技术中所存在的上述至少一个技术问题或需要改善的缺陷,本申请提出一种任务处理的方法、装置、电子设备、计算机可读存储介质以及计算机程序产品,该方案通过将初始虚拟机的阻塞服务转移到目标虚拟机上,该目标虚拟机优先级低于该初始虚拟机、处于空闲状态、符合第一预设条件,该目标虚拟机的物理核心符合第二预设条件,极大减少了初始虚拟机的阻塞次数和时间,提高了虚拟机整体的运行效率及实时性能。
下面通过对几个示例性实施方式的描述,对本申请实施例的技术方案以及本申请的技术方案产生的技术效果进行说明。需要指出的是,下述实施方式之间可以相互参考、借鉴或结合,对于不同实施方式中相同的术语、相似的特征以及相似的实施步骤等,不再重复描述。
本申请实施例中提供了一种任务处理的方法,如图2所示,该方法包括:
步骤S201,若执行原始任务的初始虚拟机出现阻塞,则将原始任务转化为可异步执行的目标任务,并确定至少一个优先级低于初始虚拟机的参考虚拟机。
本申请实施例初始虚拟机一般指实时虚拟机,该实时虚拟机属于计算密集虚拟机,运算量较大,和其他非实时虚拟机相比处理的任务的数量多。
本申请中的任务可以看作为一个包括类型、上下文、优先级、时间限制以及回调函数的状态机,一个任务可能会有多个节点去执行,多个节点共同执行一个任务。在某节点,当任务需要的资源被其他任务占用时,进入睡眠状态;当其他任务完成了对资源的使用后,通过异步通知或者定时器定期轮询的方式使得较高优先级的、处于睡眠状态的任务获得资源进入就绪状态,然后通过调用回调函数不断推进到下一个节点,在下一个节点,该任务可能会再次处于睡眠状态,也可能处于任务超时或者任务完成等其他状态。
初始虚拟机在运行过程中执行原始任务时,需要通过虚拟机退出进入到虚拟机监视器来继续对该原始任务进行处理,由于虚拟机退出,虚拟机中的其他任务会被阻塞,即原始任务是引起虚拟机阻塞的任务,例如I/O请求。
为避免初始虚拟机阻塞,若执行原始任务的初始虚拟机开始出现阻塞,初始虚拟机会立即中断该原始任务,将该原始任务转化为可异步执行的目标任务,需确定出可执行该目标任务的其他虚拟机或其他虚拟机所在的核心,即实现异步对该目标任务进行处理。
若执行原始任务的初始虚拟机开始出现阻塞,则将该原始任务转化为目标任务,并确定出比该初始虚拟机优先级低的参考虚拟机,参考虚拟机的优先级低于初始虚拟机,使得目标任务可以抢占该参考虚拟机。
步骤S202,从至少一个参考虚拟机中确定候选虚拟机;候选虚拟机符合第一预设条件且候选虚拟机的物理核心符合第二预设条件。
本申请实施例确定出至少一个参考虚拟机后,需进一步确定该参考虚拟机的类型,虚拟机的类型包括计算密集类型虚拟机和非计算密集类型虚拟机。本申请实施例初始虚拟机为计算密集类型虚拟机,运算性能高,但一旦该虚拟机出现阻塞,将会影响整个系统的实时性,因此,为了避免对整个系统的实时性产生影响,候选虚拟机需为非计算密集类型虚拟机,否则,若某个参考虚拟机和初始虚拟机是同一种类型的虚拟机,那么即使抢占了该参考虚拟机,该参考虚拟机出现阻塞的情况和初始虚拟机的阻塞是类似的。与计算密集类型虚拟机相反,非计算密集类型虚拟机的任务较少,很多时候处于空闲状态,频繁的VMexit对整个系统的实时性影响较小,本申请实施例在参考虚拟机为非计算密集类型虚拟机时,确定参考虚拟机符合第一预设条件。
当然,除了考虑该参考虚拟机的类型之外,还需判断该参考虚拟机所在的物理核心是否符合第二预设条件。本申请实施例若确定该参考虚拟机的物理核心可以和初始虚拟机的物理核心进行通信且该参考虚拟机的物理核心运行的应用为非计算密集类型应用,则确定该参考虚拟机符合第二预设条件。
虚拟机之间的通信实际上是虚拟机所在的物理核心之间的通信,若两个虚拟机所在的物理核心之间没有建立连接,那么这两个虚拟机的物理核心之间无法进行通信,则一个虚拟机也无法异步处理另一个虚拟机的任务。
参考虚拟机的物理核心运行有对应的应用,若这些应用为计算密集类型应用,那么一旦该参考虚拟机的物理核心被目标任务占用,计算密集类型应用的任务将会被阻塞,同样会影响整个系统的实时性,因此,参考虚拟机的物理核心运行的应用需为非计算密集类型应用。
本申请实施例在参考虚拟机符合第一预设条件且该参考虚拟机的物理核心符合第二预设条件时,确定该参考虚拟机为候选虚拟机。
步骤S203,从候选虚拟机中确定并调用目标虚拟机,执行目标任务。
本申请实施例在确定出候选虚拟机后,需进一步从候选虚拟机中确定一个目标虚拟机,调用该目标虚拟机,执行目标任务。
本申请实施例若执行目标任务的初始虚拟机出现阻塞,则确定至少一个优先级低于初始虚拟机且处于空闲状态的参考虚拟机;从至少一个参考虚拟机中确定候选虚拟机;候选虚拟机符合第一预设条件且候选虚拟机的物理核心符合第二预设条件;从候选虚拟机中确定并调用目标虚拟机,执行目标任务。本申请实施例将初始虚拟机的阻塞服务转移到目标虚拟机上,该目标虚拟机优先级低于该初始虚拟机、处于空闲状态、符合第一预设条件,该目标虚拟机的物理核心符合第二预设条件,极大减少了初始虚拟机的阻塞次数和时间,提高了虚拟机整体的运行效率以及实时性能。
本申请实施例提供了一种可能的实现方式,从至少一个参考虚拟机中确定候选虚拟机,包括:
若参考虚拟机为非计算密集类型虚拟机,则确定参考虚拟机符合第一预设条件;
若参考虚拟机的物理核心可以与初始虚拟机的物理核心进行通信且参考虚拟机的物理核心运行的应用为非计算密集类型应用,则确定参考虚拟机的物理核心符合第二预设条件。
计算密集类型是指计算、逻辑判断量较大且集中的类型,因为占用较大CPU资源,所以也称之为CPU密集型,比较消耗CPU。与之相反,非计算密集类型的计算和逻辑判断较少,占用较少的CPU。
计算密集类型虚拟机有较多的任务,且很多任务为计算密集类型任务,需要进行大量的计算和逻辑判断,也比较浪费CPU资源。非计算密集类型虚拟机的任务的数量少,且没有大量的计算和逻辑判断,在较长时间内处于空闲状态,速度较快。因此,为了避免对整个系统的实时性产生影响,候选虚拟机需为非计算密集类型虚拟机,候选虚拟机的物理核心运行的应用为非计算密集类型应用。
虚拟机之间的通信实际上是虚拟机所在的物理核心之间的通信,若两个虚拟机所在的物理核心之间没有建立连接,那么这两个虚拟机的物理核心之间无法进行通信,则一个虚拟机也无法异步处理另一个虚拟机的任务。
本申请实施例若参考虚拟机为非计算密集类型虚拟机,则确定该参考虚拟机符合第一预设条件,若该参考虚拟机的物理核心可以与初始的物理核心之间进行通信,且参考虚拟机的物理核心运行的应用为非计算密集类型应用,则确定该参考虚拟机符合第二预设条件。
若参考虚拟机符合第一预设条件且参考虚拟机的物理核心符合第二预设条件,则确定该参考虚拟机为候选虚拟机,候选虚拟机的物理核心可作为代理核心,使得候选虚拟机在执行该目标任务时,通过VM exit进入到该候选虚拟机的虚拟机监视器。
本申请实施例提供了一种可能的实现方式,从候选虚拟机中确定并调用目标虚拟机,包括:
确定每个候选虚拟机的当前的任务数量,确定任务数量对应的第一权重,根据第一权重对任务数量进行加权,得到第一影响值;
确定每个候选虚拟机的优先级顺序,确定候选虚拟机的优先级顺序对应的第二权重,根据第二权重对虚拟机的优先级顺序进行加权,得到第二影响值;
确定每个候选虚拟机的物理核心的优先级顺序,确定物理核心的优先级顺序对应的第三权重,根据第三权重对物理核心的优先级顺序进行加权,得到第三影响值;
确定第一影响值、第二影响值以及第二影响值的总和,将总和最大的候选虚拟机作为目标虚拟机。
本申请实施例在确定出候选虚拟机之后,需进一步从候选虚拟机中确定出目标虚拟机,调用该目标虚拟机执行该目标任务。
本申请实施例综合每个候选虚拟机当前的任务数量、优先级顺序以及每个候选虚拟机的物理核心的状态来从候选虚拟机中确定出目标虚拟机。
具体地,当同时存在多个可用的候选虚拟机时,还需考虑该候选虚拟机的负载均衡,即确定各个候选虚拟机的物理核心的任务数量,候选虚拟机的物理核心的任务数量对应第一权重,比如权重为0.1,根据该第一权重对任务数量进行加权,可以得到第一影响值。
本申请实施例候选虚拟机也有优先级,需确定出各个候选虚拟机的优先级顺序,候选虚拟机的优先级主要由候选虚拟机的占用的核心类型,核心类型包括主核心和从核心,从核心的优先级高于主核心,候选虚拟机的优先级顺序对应第二权重,根据该第二权重对候选虚拟机的优先级顺序进行加权,得到第二影响值。
本申请实施例候选虚拟机的物理核心也有优先级,需确定出每个候选虚拟机的物理核心的优先级顺序,各物理核心的优先级顺序对应第三权重,根据该第三权重对候选虚拟机的物理核心的优先级顺序进行加权,得到第三影响值。
本申请实施例在确定第一影响值、第二影响值以及第三影响值之后,计算第一影响值、第二影响值以及第三影响值的综合,将总和最大的候选虚拟机作为目标虚拟机。
在一个具体的实施例中,有3个候选虚拟机A、B和C,候选虚拟机的A、B和C任务数量分别为3个、2个以及2个,第一权重为0.2,可确定候选虚拟机的A、B和C第一影响值分别为0.6、0.4以及0.4。
候选虚拟机的A、B和C的优先级顺序由高到低为A=B>C,量化为数值后,候选虚拟机的A、B和C的优先级顺序分别对应的数值为2、2和1,第二权重为0.2,可确定候选虚拟机A、B和C的第二影响值分别为0.4、0.4以及0.2。
候选虚拟机A、B和C的物理核心的优先级顺序由高到低为A=B>C,量化为数值之后,候选虚拟机的A、B和C的优先级顺序分别对应的数值为3、3和1,第三权重为0.6,可确定候选虚拟机A、B和C的第三影响值分别为1.8、1.8和0.6。
由此可以确定虚拟机A、B和C各自的第一影响值、第二影响值以及第三影响值的总和分为为2.8、2.6和1.2,候选虚拟机A的总和最大,确定候选虚拟机为目标虚拟机。
本申请实施例提供了一种可能的实现方式,确定候选虚拟机的优先级顺序,包括:
确定候选虚拟机在物理核心中所占用的核心类型,根据核心类型确定候选虚拟机的优先级顺序;核心类型包括主核心和从核心。
本申请实施例需确定候选虚拟机在物理核心中所占用的核心类型,物理核心包括两种类型的核心,主核心和从核心。其中,从核心的优先级高于主核心。若候选虚拟机占用主核心,那么该候选虚拟机默认优先通过主核心来处理半虚拟化的设备的中断事件,为了不影响其他事件的执行,确定占据物理核心的从核心的虚拟机的优先级较高。
确定每个候选虚拟机的物理核心的状态,状态包括空闲状态和运行状态;根据每个物理核心的状态确定物理核心的优先级顺序。
本申请实施例虚拟机的物理核心的状态包括空闲状态和运行状态,处于空闲状态的物理核心能够及时调度目标任务所需的资源,因此处于空闲状态的物理核心的优先级高于处于运行状态的物理核心。
本申请实施例提供了一种可能的实现方式,执行目标任务,之前还包括:
获取目标虚拟机的任务队列,将目标任务加入任务队列,并对任务队列中的所有任务进行优先级重排,确定目标任务的优先级顺序。
在接收到目标通知后,若目标任务当前的优先级顺序最高,则确定执行目标任务;目标通知可以为虚拟机监视器的主动通知、外部设备的中断通知以及目标虚拟机的通知中的任意一种。
本申请实施例每个虚拟机都有各自对应的任务队列,任务队列中包括待执行的任务,在确定出目标虚拟机之后,获取该目标虚拟机的任务队列,将该目标任务加入该目标虚拟机的任务队列,对任务队列中的所有任务进行优先级重排,以使得重要任务的等待时间最短,对所有任务进行优先级重排之后,确定目标任务的优先级。
本申请实施例的目标通知用于表征任务执行完毕,目标通知可以为虚拟机监视器的主动通知、外部设备的中断通知以及候选虚拟机的通知中的任意一种,在接收到目标通知后,若目标任务当前的优先级最高,则确定执行该目标任务,该目标任务进入就绪状态,该目标任务就会被执行,执行该目标任务的节点包括硬件驱动、虚拟设备驱动、SMC子系统、目标虚拟机中的shyper内核模块、虚拟机监视器以及用户态守护进程中的一种或几种的组合,shyper内核中的执行该目标任务的子节点可以为Virtio Block、Virtio Net、底层存储介质、中介传递设备、Hypercall、SMC和VM电源管理等。
本申请实施例提供了一种可能的实现方式,对任务队列中的所有任务进行优先级重排,之前还包括:
若任务队列中存在可以和目标任务合并的异步任务,则将目标任务和异步任务合并,并确定合并后的任务的优先级为异步任务和目标任务中的较高优先级。
本申请实施例任务在对任务堆叠中的所有任务进行优先级重排之前,还判断这些任务中是否还包括可以和目标任务合并的异步任务,例如磁盘读写;若存在,则将目标任务和异步任务进行合并,并判断该目标任务和异步任务哪一方的优先级高,将较高优先级作为合并后的任务的优先级。
将目标任务和可合并的异步任务进行合并,可以提高系统整体性能。
执行目标任务得到执行结果,将执行结果返回给初始虚拟机,并发送目标通知目标虚拟机,以告知目标虚拟机目标任务执行完毕。
本申请在执行完毕目标任务后,释放目标任务占用的资源,清理数据缓存,以防止资源浪费。
如图3所示,其示例性示出了本申请实施例在任务处理过程中优化虚拟机阻塞的示意图,包括原始虚拟机VM1,VM1对应的虚拟机监视器Hypervisor1,目标虚拟机VM2,VM2对应的虚拟机监视器Hypervisor2,还包括硬盘Disk,以任务为MMIO任务为例,整个过程为:当MMIO请求到达VM1时,VM1执行该MMIO请求,在执行过程中,该VM1进行VM exit退出该VM1,进入Hypervisor1,在Hypervisor1准备缓存之前,将该MMIO请求转化为异步MMIO请求,并确定出目标虚拟机VM2,由VM2的虚拟机监视器Hypervisor2在收到该异步MMIO请求之后,将该异步MMIO请求加入对应的任务队列,并准备缓存,在该MMIO请求优先级最高时,读取Disk中的资源,继续执行该异步MMIO请求,并将该MMIO请求的执行结果返回给VM2,由VM2将执行结果转发给VM1,整个过程中VM1只短暂的处于阻塞状态。
本申请实施例提供了一种任务处理的装置,如图4所示,该任务处理装置40可以包括:
参考虚拟机确定模块410,用于若执行原始任务的初始虚拟机出现阻塞,则将原始任务转化为可异步执行的目标任务,并确定至少一个优先级低于初始虚拟机的参考虚拟机;
候选虚拟机确定模块420,用于从至少一个参考虚拟机中确定候选虚拟机;候选虚拟机符合第一预设条件且候选虚拟机的物理核心符合第二预设条件;
目标虚拟机调用与执行模块430,用于从候选虚拟机中确定并调用目标虚拟机,执行目标任务。
本申请实施例提供了一种可能的实现方式,参考虚拟机确定模块用于若参考虚拟机为非计算密集类型虚拟机,则确定参考虚拟机符合第一预设条件;若参考虚拟机的物理核心可以与初始虚拟机的物理核心进行通信且参考虚拟机的物理核心运行的应用为非计算密集类型应用,则确定参考虚拟机的物理核心符合第二预设条件。
本申请实施例若执行目标任务的初始虚拟机出现阻塞,则确定至少一个优先级低于初始虚拟机且处于空闲状态的参考虚拟机;从至少一个参考虚拟机中确定候选虚拟机;候选虚拟机符合第一预设条件且候选虚拟机的物理核心符合第二预设条件;从候选虚拟机中确定并调用目标虚拟机,执行目标任务。本申请实施例将初始虚拟机的阻塞服务转移到目标虚拟机上,该目标虚拟机优先级低于该初始虚拟机、处于空闲状态、符合第一预设条件,该目标虚拟机的物理核心符合第二预设条件,极大减少了初始虚拟机的阻塞次数和时间,提高了虚拟机整体的运行效率以及实时性能。
本申请实施例提供了一种可能的实现方式,目标虚拟机确定模块还包括:
第一影响值获得子模块,用于确定每个候选虚拟机的当前的任务数量,确定任务数量对应的第一权重,根据第一权重对任务数量进行加权,得到第一影响值;
第二影响值获得子模块,用于确定每个候选虚拟机的优先级顺序,确定候选虚拟机的优先级顺序对应的第二权重,根据第二权重对虚拟机的优先级顺序进行加权,得到第二影响值;
第三影响值获得子模块,用于确定每个候选虚拟机的物理核心的优先级顺序,确定物理核心的优先级顺序对应的第三权重,根据第三权重对候选虚拟机的物理核心的优先级顺序进行加权,得到第三影响值;
目标虚拟机确定子模块,用于确定第一影响值、第二影响值以及第三影响值的总和,将总和最大的候选虚拟机作为目标虚拟机。
本申请实施例提供了一种可能的实现方式,第二影响值获得子模块包括:候选虚拟机优先级顺序确定单元,用于确定候选虚拟机在物理核心中所占用的核心类型,根据核心类型确定候选虚拟机的优先级顺序;核心类型包括主核心和从核心;
第三影响值获得子模块包括:物理核心的状态确定单元,用于确定每个候选虚拟机的物理核心的状态,状态包括空闲状态和运行状态;根据每个物理核心的状态确定物理核心的优先级顺序。
本申请实施例提供了一种可能的实现方式,目标虚拟机调用与执行模块还包括:优先级重排子模块,用于获取目标虚拟机的任务队列,将目标任务加入任务队列,并对任务队列中的所有任务进行优先级重排,确定目标任务的优先级顺序;
确定执行子模块,用于在接收到目标通知后,若目标任务当前的优先级顺序最高,则确定执行目标任务;目标通知可以为虚拟机监视器的主动通知、外部设备的中断通知以及目标虚拟机的通知中的任意一种。
本申请实施例提供了一种可能的实现方式,目标虚拟机调用与执行模块还包括:合并模块,用于若任务队列中存在可以和目标任务合并的异步任务,则将目标任务和异步任务合并,并确定合并后的任务的优先级为异步任务和目标任务中的较高优先级。
本申请实施例的装置可执行本申请实施例所提供的方法,其实现原理相类似,本申请各实施例的装置中的各模块所执行的动作是与本申请各实施例的方法中的步骤相对应的,对于装置的各模块的详细功能描述具体可以参见前文中所示的对应方法中的描述,此处不再赘述。
本申请实施例中提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,该处理器执行上述计算机程序以实现任务处理的方法的步骤,与相关技术相比可实现:本申请实施例若执行目标任务的初始虚拟机出现阻塞,则确定至少一个优先级低于初始虚拟机且处于空闲状态的参考虚拟机;从至少一个参考虚拟机中确定候选虚拟机;候选虚拟机符合第一预设条件且候选虚拟机的物理核心符合第二预设条件;从候选虚拟机中确定并调用目标虚拟机,执行目标任务。本申请实施例将初始虚拟机的阻塞服务转移到目标虚拟机上,该目标虚拟机优先级低于该初始虚拟机、处于空闲状态、符合第一预设条件,该目标虚拟机的物理核心符合第二预设条件,极大减少了初始虚拟机的阻塞次数和时间,提高了虚拟机整体的运行效率以及实时性能。
在一个可选实施例中提供了一种电子设备,如图5所示,图5所示的电子设备5000包括:处理器5001和存储器5003。其中,处理器5001和存储器5003相连,如通过总线5002相连。可选地,电子设备5000还可以包括收发器5004,收发器5004可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器5004不限于一个,该电子设备5000的结构并不构成对本申请实施例的限定。
处理器5001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器5001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线5002可包括一通路,在上述组件之间传送信息。总线5002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线5002可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器5003可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质、其他磁存储设备、或者能够用于携带或存储计算机程序并能够由计算机读取的任何其他介质,在此不做限定。
存储器5003用于存储执行本申请实施例的计算机程序,并由处理器5001来控制执行。处理器5001用于执行存储器5003中存储的计算机程序,以实现前述方法实施例所示的步骤。
其中,电子设备包可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图5所示的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。与现有技术相比:本申请实施例若执行目标任务的初始虚拟机出现阻塞,则确定至少一个优先级低于初始虚拟机且处于空闲状态的参考虚拟机;从至少一个参考虚拟机中确定候选虚拟机;候选虚拟机符合第一预设条件且候选虚拟机的物理核心符合第二预设条件;从候选虚拟机中确定并调用目标虚拟机,执行目标任务。本申请实施例将初始虚拟机的阻塞服务转移到目标虚拟机上,该目标虚拟机优先级低于该初始虚拟机、处于空闲状态、符合第一预设条件,该目标虚拟机的物理核心符合第二预设条件,极大减少了初始虚拟机的阻塞次数和时间,提高了虚拟机整体的运行效率以及实时性能。
本申请实施例还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。与现有技术相比:本申请实施例若执行目标任务的初始虚拟机出现阻塞,则确定至少一个优先级低于初始虚拟机且处于空闲状态的参考虚拟机;从至少一个参考虚拟机中确定候选虚拟机;候选虚拟机符合第一预设条件且候选虚拟机的物理核心符合第二预设条件;从候选虚拟机中确定并调用目标虚拟机,执行目标任务。本申请实施例将初始虚拟机的阻塞服务转移到目标虚拟机上,该目标虚拟机优先级低于该初始虚拟机、处于空闲状态、符合第一预设条件,该目标虚拟机的物理核心符合第二预设条件,极大减少了初始虚拟机的阻塞次数和时间,提高了虚拟机整体的运行效率以及实时性能。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”、“1”、“2”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除图示或文字描述以外的顺序实施。
应该理解的是,虽然本申请实施例的流程图中通过箭头指示各个操作步骤,但是这些步骤的实施顺序并不受限于箭头所指示的顺序。除非本文中有明确的说明,否则在本申请实施例的一些实施场景中,各流程图中的实施步骤可以按照需求以其他的顺序执行。此外,各流程图中的部分或全部步骤基于实际的实施场景,可以包括多个子步骤或者多个阶段。这些子步骤或者阶段中的部分或全部可以在同一时刻被执行,这些子步骤或者阶段中的每个子步骤或者阶段也可以分别在不同的时刻被执行。在执行时刻不同的场景下,这些子步骤或者阶段的执行顺序可以根据需求灵活配置,本申请实施例对此不限制。
以上仅是本申请部分实施场景的可选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请的方案技术构思的前提下,采用基于本申请技术思想的其他类似实施手段,同样属于本申请实施例的保护范畴。

Claims (8)

1.一种任务处理的方法,其特征在于,包括:
若执行原始任务的初始虚拟机出现阻塞,则将所述原始任务转化为可异步执行的目标任务,并确定至少一个优先级低于所述初始虚拟机的参考虚拟机;
从所述至少一个参考虚拟机中确定候选虚拟机;所述候选虚拟机符合第一预设条件且所述候选虚拟机的物理核心符合第二预设条件;
从所述候选虚拟机中确定并调用目标虚拟机,执行所述目标任务;
所述从所述至少一个参考虚拟机中确定候选虚拟机,包括:
若所述参考虚拟机为非计算密集类型虚拟机,则确定所述参考虚拟机符合第一预设条件;
若所述参考虚拟机的物理核心可以与所述初始虚拟机的物理核心进行通信且所述参考虚拟机的物理核心运行的应用为非计算密集类型应用,则确定所述参考虚拟机的物理核心符合第二预设条件。
2.根据权利要求1所述的方法,其特征在于,从所述候选虚拟机中确定并调用目标虚拟机,包括:
确定每个候选虚拟机的当前的任务数量,确定所述任务数量对应的第一权重,根据所述第一权重对所述任务数量进行加权,得到第一影响值;
确定每个候选虚拟机的优先级顺序,确定所述候选虚拟机的优先级顺序对应的第二权重,根据所述第二权重对所述虚拟机的优先级顺序进行加权,得到第二影响值;
确定每个候选虚拟机的物理核心的优先级顺序,确定所述物理核心的优先级顺序对应的第三权重,根据所述第三权重对所述候选虚拟机的物理核心的优先级顺序进行加权,得到第三影响值;
确定所述第一影响值、第二影响值以及第三影响值的总和,将总和最大的候选虚拟机作为目标虚拟机。
3.根据权利要求2所述的方法,其特征在于,所述确定所述候选虚拟机的优先级顺序,包括:
确定所述候选虚拟机在所述物理核心中所占用的核心类型,根据所述核心类型确定所述候选虚拟机的优先级顺序;所述核心类型包括主核心和从核心;
所述确定每个候选虚拟机的物理核心的优先级顺序,包括:
确定每个所述候选虚拟机的物理核心的状态,所述状态包括空闲状态和运行状态;根据每个所述物理核心的状态确定所述物理核心的优先级顺序。
4.根据权利要求1所述的方法,其特征在于,所述执行所述目标任务,之前还包括:
获取所述目标虚拟机的任务队列,将所述目标任务加入所述任务队列,并对所述任务队列中的所有任务进行优先级重排,确定所述目标任务的优先级顺序;
在接收到目标通知后,若所述目标任务当前的优先级顺序最高,则确定执行所述目标任务;所述目标通知可以为虚拟机监视器的主动通知、外部设备的中断通知以及目标虚拟机的通知中的任意一种。
5.根据权利要求4所述的方法,其特征在于,所述对所述任务队列中的所有任务进行优先级重排,之前还包括:
若所述任务队列中存在可以和所述目标任务合并的异步任务,则将所述目标任务和所述异步任务合并,并确定合并后的任务的优先级为异步任务和目标任务中的较高优先级。
6.一种任务处理的装置,其特征在于,包括:
参考虚拟机确定模块,用于若执行原始任务的初始虚拟机出现阻塞,则将所述原始任务转化为可异步执行的目标任务,并确定至少一个优先级低于所述初始虚拟机的参考虚拟机;
候选虚拟机确定模块,用于从所述至少一个参考虚拟机中确定候选虚拟机;所述候选虚拟机符合第一预设条件且所述候选虚拟机的物理核心符合第二预设条件;
目标虚拟机调用模块,用于从所述候选虚拟机中确定并调用目标虚拟机,执行所述目标任务;
所述参考虚拟机确定模块用于若参考虚拟机为非计算密集类型虚拟机,则确定参考虚拟机符合第一预设条件;若参考虚拟机的物理核心可以与初始虚拟机的物理核心进行通信且参考虚拟机的物理核心运行的应用为非计算密集类型应用,则确定参考虚拟机的物理核心符合第二预设条件。
7.一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1-5任一项所述方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-5任一项所述的方法的步骤。
CN202111629659.XA 2021-12-28 2021-12-28 任务处理的方法、装置、电子设备及计算机可读存储介质 Active CN114327767B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111629659.XA CN114327767B (zh) 2021-12-28 2021-12-28 任务处理的方法、装置、电子设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111629659.XA CN114327767B (zh) 2021-12-28 2021-12-28 任务处理的方法、装置、电子设备及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN114327767A CN114327767A (zh) 2022-04-12
CN114327767B true CN114327767B (zh) 2022-08-05

Family

ID=81014129

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111629659.XA Active CN114327767B (zh) 2021-12-28 2021-12-28 任务处理的方法、装置、电子设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN114327767B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103677990A (zh) * 2013-12-13 2014-03-26 清华大学 虚拟机实时任务的调度方法、装置和虚拟机
CN112130963A (zh) * 2020-09-30 2020-12-25 腾讯科技(深圳)有限公司 虚拟机任务的调度方法、装置、计算机设备及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9009316B2 (en) * 2011-10-06 2015-04-14 Telefonaktiebolaget L M Ericsson (Publ) On-demand integrated capacity and reliability service level agreement licensing
US8789047B2 (en) * 2012-01-26 2014-07-22 Empire Technology Development Llc Allowing world switches between virtual machines via hypervisor world switch security setting
US10860390B2 (en) * 2017-06-28 2020-12-08 Intel Corporation Microservices architecture
CN109491761A (zh) * 2018-11-07 2019-03-19 中国石油大学(华东) 基于eda-ga混合算法的云计算多目标任务调度方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103677990A (zh) * 2013-12-13 2014-03-26 清华大学 虚拟机实时任务的调度方法、装置和虚拟机
CN112130963A (zh) * 2020-09-30 2020-12-25 腾讯科技(深圳)有限公司 虚拟机任务的调度方法、装置、计算机设备及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Real-Time Scheduling for Xen-ARM Virtual Machines;Seehwan Yoo等;《IEEE Transactions on Mobile Computing》;20130822;第1857-1867页 *
VMSF—一种内核级虚拟机监控器调度框架;刘晓建等;《计算机工程与科学》;20120215;第78-81页 *

Also Published As

Publication number Publication date
CN114327767A (zh) 2022-04-12

Similar Documents

Publication Publication Date Title
JP5644307B2 (ja) 情報処理装置、情報処理装置の制御方法及び制御プログラム
AU2014311463B2 (en) Virtual machine monitor configured to support latency sensitive virtual machines
JP4690988B2 (ja) 持続的なユーザレベルスレッド用の装置、システムおよび方法
US9098337B2 (en) Scheduling virtual central processing units of virtual machines among physical processing units
WO2017070900A1 (zh) 多核数字信号处理系统中处理任务的方法和装置
US9299121B2 (en) Preemptive context switching
WO2013192236A1 (en) Profiling application code to identify code portions for fpga implementation
US7366814B2 (en) Heterogeneous multiprocessor system and OS configuration method thereof
US9378047B1 (en) Efficient communication of interrupts from kernel space to user space using event queues
US20110219373A1 (en) Virtual machine management apparatus and virtualization method for virtualization-supporting terminal platform
CN113010275B (zh) 一种中断处理方法和装置
CN112491426B (zh) 面向多核dsp的服务组件通信架构及任务调度、数据交互方法
US20210389966A1 (en) Micro kernel based extensible hypervisor and embedded system
US7962926B2 (en) Method, system, and program storage device for generating a retry message when a thread in a real-time application is unavailable to process a request to utilize the real-time application
CN103744716A (zh) 一种基于当前vcpu调度状态的动态中断均衡映射方法
WO2012082690A1 (en) Processing device context switching
CN114780463A (zh) 中断控制方法、设备、分布式系统及存储介质
US20110055831A1 (en) Program execution with improved power efficiency
CN113535341B (zh) Linux下CPU核间中断通信的实现方法及装置
CN114327767B (zh) 任务处理的方法、装置、电子设备及计算机可读存储介质
WO2024021475A1 (zh) 一种容器调度方法及装置
Takada et al. " Linux on ITRON": a hybrid operating system architecture for embedded systems
CN101176061A (zh) 数字信号处理器上多任务的实现
CN117407054A (zh) 中断处理方法、电子设备和存储介质
US9619277B2 (en) Computer with plurality of processors sharing process queue, and process dispatch processing method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant