CN117492964A - 一种虚拟中断处理方法及相关产品 - Google Patents
一种虚拟中断处理方法及相关产品 Download PDFInfo
- Publication number
- CN117492964A CN117492964A CN202311567816.8A CN202311567816A CN117492964A CN 117492964 A CN117492964 A CN 117492964A CN 202311567816 A CN202311567816 A CN 202311567816A CN 117492964 A CN117492964 A CN 117492964A
- Authority
- CN
- China
- Prior art keywords
- interrupt
- mode
- switching
- virtual
- state
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title abstract description 9
- 238000000034 method Methods 0.000 claims abstract description 29
- 238000004590 computer program Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本申请公开了一种虚拟中断处理方法及相关产品。所述方法包括:当接收到第一物理中断信号时,将系统从第一工作模式切换到第二工作模式;在所述第二工作模式下,将与第一物理中断对应的第一虚拟中断的状态设置为预设状态;当所述第一虚拟中断的状态为所述预设状态时,将所述系统从所述第二工作模式切换到第一中断模式并执行所述第一虚拟中断。减少系统切换到虚拟中断模式过程中的模式切换数量,减小系统处理虚拟中断的整体时间以及系统的资源消耗。
Description
技术领域
本申请涉及中断虚拟化技术领域,特别是涉及一种虚拟中断处理方法及相关产品。
背景技术
中断虚拟化是将物理中断映射到虚拟中断,并在主机和客户机之间进行有效的中断传递。在嵌入式系统中,通常有一个运行在硬件上的主机操作系统(Host OS)以及至少一个运行在虚拟机中的客户机操作系统(Guest OS)。
相关技术中,当处理器在EL2模式中根据物理中断设置好虚拟中断之后,客户机操作系统会从EL2模式返回EL1模式,等待虚拟中断信号;当接收到虚拟中断信号之后,客户机操作系统从EL1模式切换到EL1 IRQ/FIQ模式并执行虚拟中断。然而,客户机操作系统从EL2模式切换到EL1模式,再从EL1模式切换到EL1 IRQ/FIQ模式,会增加系统处理虚拟中断的整体时间以及系统的资源消耗。
发明内容
基于上述问题,本申请提供了一种虚拟中断处理方法及相关产品,减小系统处理虚拟中断的整体时间以及系统的资源消耗。
本申请实施例公开了如下技术方案:
第一方面,本申请实施例提供一种拟中断处理方法,所述方法包括:
当接收到第一物理中断信号时,将系统从第一工作模式切换到第二工作模式;
在所述第二工作模式下,将与第一物理中断对应的第一虚拟中断的状态设置为预设状态;
当所述第一虚拟中断的状态为所述预设状态时,将所述系统从所述第二工作模式切换到第一中断模式并执行所述第一虚拟中断。
可选地,所述将系统从第一工作模式切换到第二工作模式,具体包括:
获取第一物理中断的类型;所述第一物理中断的类型包括中断请求和快速中断请求;
根据所述第一物理中断的类型将所述系统从所述第一工作模式切换到对应的第二工作模式。
可选地,所述当接收到第一物理中断信号时,将系统从第一工作模式切换到第二工作模式,具体包括:
当接收到第一物理中断信号时,将系统在第一工作模式下的程序执行状态和返回地址到寄存器中;
将所述系统从所述第一工作模式切换到第二工作模式;
所述方法还包括:
当所述第一虚拟中断执行完毕时,根据所述寄存器中的所述程序执行状态和所述返回地址将所述系统从第一中断模式切换到所述第一工作模式,并继续执行程序。
可选地,所述方法还包括:
当所述第一虚拟中断未执行完毕,且接收到优先级高于所述第一物理中断的第二物理中断信号时,将所述程序执行状态和所述返回地址压栈保存;
将所述系统从所述第一中断模式切换到所述第二工作模式;
在所述第二工作模式下,将与第二物理中断对应的第二虚拟中断的状态设置为预设状态;
当所述第二虚拟中断的状态为所述预设状态时,将所述系统从所述第二工作模式切换到第二中断模式并执行所述第二虚拟中断;
当所述第二虚拟中断执行完毕时,将所述系统从所述第二中断模式切换到所述第一中断模式,继续执行所述第一虚拟中断并将所述程序执行状态和所述返回地址弹栈恢复。
可选地,所述第一工作模式包括:运行应用程序模式和运行操作系统模式。
第二方面,本申请实施提供一种虚拟终端处理装置,所述装置包括:第一切换模块、设置模块和第二切换模块;
所述第一切换模块,用于当接收到第一物理中断信号时,将系统从第一工作模式切换到第二工作模式;
所述设置模块,用于在所述第二工作模式下,将与第一物理中断对应的第一虚拟中断的状态设置为预设状态;
所述第二切换模块,用于当所述第一虚拟中断的状态为所述预设状态时,将所述系统从所述第二工作模式切换到第一中断模式并执行所述第一虚拟中断。
可选地,所述第一切换模块,具体用于:
获取第一物理中断的类型;所述第一物理中断的类型包括中断请求和快速中断请求;
根据所述第一物理中断的类型将所述系统从所述第一工作模式切换到对应的第二工作模式。
可选地,所述第一切换模块,具体用于:
当接收到第一物理中断信号时,将系统在第一工作模式下的程序执行状态和返回地址到寄存器中;
将所述系统从所述第一工作模式切换到第二工作模式;
所述装置还包括:第三切换模块;
所述第三切换模块,用于当所述第一虚拟中断执行完毕时,根据所述寄存器中的所述程序执行状态和所述返回地址将所述系统从第一中断模式切换到所述第一工作模式,并继续执行程序。
可选地,该装置还包括:中断重入模块;所述中断重入模块,用于:
当所述第一虚拟中断未执行完毕,且接收到优先级高于所述第一物理中断的第二物理中断信号时,将所述程序执行状态和所述返回地址压栈保存;
将所述系统从所述第一中断模式切换到所述第二工作模式;
在所述第二工作模式下,将与第二物理中断对应的第二虚拟中断的状态设置为预设状态;
当所述第二虚拟中断的状态为所述预设状态时,将所述系统从所述第二工作模式切换到第二中断模式并执行所述第二虚拟中断;
当所述第二虚拟中断执行完毕时,将所述系统从所述第二中断模式切换到所述第一中断模式,继续执行所述第一虚拟中断并将所述程序执行状态和所述返回地址弹栈恢复。
可选地,所述第一工作模式包括:运行应用程序模式和运行操作系统模式。
第三方面,本申请实施例提供一种计算机设备,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如第一方面任一项所述的虚拟中断处理方法。
第四方面,本申请实施例提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如第一方面任一项所述的虚拟中断处理方法。
相较于现有技术,本申请具有以下有益效果:
当接收到第一物理中断信号时,将系统从第一工作模式切换到第二工作模式;在第二工作模式下,将与第一物理中断对应的第一虚拟中断的状态设置为预设状态;当第一虚拟中断的状态为所述预设状态时,将系统从所述第二工作模式切换到第一中断模式并执行第一虚拟中断。本申请实施例中,当第一虚拟中断的状态为预设状态时,直接将系统从第二工作模式切换到第一虚拟模式并执行第一虚拟中断,省略了从第二工作模式切换至第一工作模式以及从第一工作模式切换至第一中断模式的步骤,减小了系统处理虚拟中断的整体时间以及系统的资源消耗。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种相关技术的系统模式切换示意图;
图2为本申请实施例提供的一种虚拟中断处理方法的流程图;
图3为本申请实施例提供的一种系统的模式切换示意图;
图4为本申请实施例提供的另一种虚拟中断处理方法的流程图;
图5为本申请实施例提供的另一种系统的模式切换示意图;
图6为本申请实施例提供的又一种虚拟中断处理方法的流程图;
图7为本申请实施例提供的一种虚拟中断处理装置的结构示意图。
具体实施方式
正如前文描述,本申请实施例提供的一种相关技术的系统模式切换示意图,如图1所示。首先,接收到物理中断信号后,将系统从EL1模式切换到EL2模式设置虚拟中断;其次,系统从EL2模式返回到EL1模式中等待虚拟中断信号;然后,当接收到虚拟中断信号之后,系统从EL1模式切换到EL1 IRQ/FIQ;最后,执行虚拟中断。
可见,相关技术中,客户机操作系统从EL2模式切换到EL1模式,再从EL1模式切换到EL1 IRQ/FIQ模式,会增加系统处理虚拟中断的整体时间以及系统的资源消耗。
为解决上述技术问题,本申请实施例提供一种虚拟中断处理方法,该方法包括:当接收到第一物理中断信号时,将系统从第一工作模式切换到第二工作模式;在第二工作模式下,将与第一物理中断对应的第一虚拟中断的状态设置为预设状态;当第一虚拟中断的状态为所述预设状态时,将系统从所述第二工作模式切换到第一中断模式并执行第一虚拟中断。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参见图2,该图为本申请实施例提供的一种虚拟中断处理方法的流程图。
如图2所示,该方法包括:
S201:当接收到第一物理中断信号时,将系统从第一工作模式切换到第二工作模式。
其中,第一工作模式为EL0/EL1,第二工作模式为EL2。EL0、EL1和EL2是ARM架构中的异常级别(Exception Levels),代表了不同的特权级别(Privilege Levels)。
EL0为最低的特权级别,也被称为用户级(User Level)。在这个级别,处理器只能执行一些基本的指令,如数据传输和算术运算,不能直接访问系统级资源,如内存管理系统和硬件设备。
EL1为次低的特权级别,也被称为内核级(Kernel Level)。在这个级别,处理器可以执行更复杂的指令,包括对系统级资源的间接访问。通常,操作系统运行在EL1级别,以便访问和控制系统资源。
EL2为更高的特权级别,通常用于管理程序(Hypervisor)。这个级别提供了对虚拟化的支持。
作为示例,可以通过查看中断状态表,确定处理器是否接收到了第一物理中断信号。其中,中断状态表由中断控制器进行维护,其中记录了当前哪些中断被触发。
除此之外,还可以通过检查硬件设备的状态的方式,以及通过使用中断服务程序(Interrupt Service Routine,ISR)的方式来确定处理器是否接收到了第一物理中断信号。
S202:在第二工作模式下,将与第一物理中断对应的第一虚拟中断的状态设置为预设状态。
其中,第一虚拟中断模式可以是EL1中断请求(Interrupt Request,IRQ),或EL1快速中断请求(Fast Interrupt Request,FIQ)中的任意一种。
应当理解,物理中断与虚拟中断是存在预设映射关系的。比如物理中断A有对应的预设虚拟中断A,物理中断B有对应的预设虚拟中断B。
作为示例,预设状态为中断置起状态,指示中断请求被设置或激活。例如,虚拟中断的状态置为Pending。应当理解,Pending仅仅是表示虚拟中断被置起的一种方式,除此之外,还可以通过其他字符串来进行表示。
S203:当第一虚拟中断的状态为预设状态时,将系统从第二工作模式切换到第一中断模式并执行第一虚拟中断。
结合S201-S203,本申请实施例提供一种系统的模式切换示意图,如图3所示。在图3中,首先,接收到物理中断信号后,将系统从EL1模式切换到EL2模式设置虚拟中断的状态;然后,系统从EL2模式切换到EL1 IRQ/FIQ模式。本申请实施例中的系统执行两次模式转换,相较于相关技术中的三次模式转换节省了一次模式转换的时间。应当理解,系统在执行的过程中,需要大量的执行中断,若每一次执行虚拟中断均可少一次模式转换,可减小了系统处理虚拟中断的整体时间以及系统的资源消耗。
参见图4,该图为本申请实施例提供的另一种虚拟中断处理方法的流程图。
如图4所示,该方法包括:
S401:当接收到第一物理中断信号时,将系统在第一工作模式下的程序执行状态和返回地址到寄存器中并将系统从第一工作模式切换到第二工作模式。
应当理解,所保存的程序执行状态和返回地址是在系统跳转到第二工作模式之前的程序执行状态和返回地址到寄存器中。
除此之外,还获取第一物理中断的类型;第一物理中断的类型包括中断请求和快速中断请求;根据第一物理中断的类型将系统从第一工作模式切换到对应的第二工作模式。
其中,第一物理中断的类型包括:中断请求(Interrupt Request,IRQ)和快速中断请求(Fast Interrupt Request,FIQ)。
当第一物理中断的类型为IRQ时,将系统的工作模式从EL0/EL1切换到EL2 IRQ模式;当第一物理中断的类型FIQ时,将系统的工作模式从EL0/EL1切换到EL2 FIQ模式。
S402:在第二工作模式下,将与第一物理中断对应的第一虚拟中断的状态设置为预设状态。
应当理解,当第一物理中断的类型为IRQ时,第一虚拟中断的类型为IRQ;当第一物理中断的类型FIQ时,第一虚拟中断的类型为FIQ。
S403:当第一虚拟中断的状态为预设状态时,将系统从第二工作模式切换到第一中断模式并执行第一虚拟中断。
S404:当第一虚拟中断执行完毕时,根据寄存器中的程序执行状态和返回地址将系统从第一中断模式切换到第一工作模式,并继续执行程序。
结合S401-S404,本申请实施例提供另一种系统的模式切换示意图,如图5所示。在图5中,首先,接收到物理中断信号后,将系统从EL1模式切换到EL2模式设置虚拟中断的状态;然后,系统从EL2模式切换到EL1 IRQ/FIQ模式执行虚拟中断;最后,当虚拟中断执行完毕之后,根据程序执行状态和返回地址将系统从EL1 IRQ/FIQ模式切换到EL1模式继续执行进入中断时间点之后的程序。
当第一虚拟中断执行的过程中,又接到了第二物理中断信号,且第二中断的优先级高于第一中断时,涉及中断重入的场景。
针对中断重入的场景,本申请实施例提供了又一种虚拟中断处理方法的流程图,如图6所示。
在图6中,该方法包括:
S601:当接收到第一物理中断信号时,将系统在第一工作模式下的程序执行状态和返回地址到寄存器中并将系统从第一工作模式切换到第二工作模式。
S602:在第二工作模式下,将与第一物理中断对应的第一虚拟中断的状态设置为预设状态。
S603:当第一虚拟中断的状态为预设状态时,将系统从第二工作模式切换到第一中断模式并执行第一虚拟中断。
S604:当第一虚拟中断未执行完毕,且接收到优先级高于第一物理中断的第二物理中断信号时,将程序执行状态和返回地址压栈保存。
其中,压栈保存,即将寄存器中的程序服务状态和返回地址保存到堆栈指针指向的内存上面,将寄存器列表存入栈中。
S605:将系统从第一中断模式切换到第二工作模式。
需要注意的是,第二工作模式取决于第二物理中断的类型。例如,当第二物理中断的类型为IRQ时,第二工作模式为EL2 IRQ模式;当第二物理中断的类型为FIQ时,第二工作模式为EL2 FIQ模式。
S606:在第二工作模式下,将与第二物理中断对应的第二虚拟中断的状态设置为预设状态。
S607:当第二虚拟中断的状态为预设状态时,将系统从第二工作模式切换到第二中断模式并执行第二虚拟中断。
S608:当第二虚拟中断执行完毕时,将系统从第二中断模式切换到第一中断模式,继续执行第一虚拟中断并将程序执行状态和返回地址弹栈恢复。
其中,弹栈恢复,即将内存栈中存储的上一模式的寄存器现场恢复。
S609:当第一虚拟中断执行完毕时,根据寄存器中的程序执行状态和返回地址将系统从第一中断模式切换到第一工作模式,并继续执行程序。
本申请实施例中,当第一虚拟中断未执行完毕,且接收到优先级高于第一物理中断的第二物理中断信号时,将程序执行状态和返回地址压栈保存,可以避免中断抢占时寄存器的值被覆盖。
参见图7,该图为本申请实施例提供的一种虚拟中断处理装置的结构示意图。
如图7所示,该装置包括:第一切换模块701、设置模块702和第二切换模块703;
第一切换模块701,用于当接收到第一物理中断信号时,将系统从第一工作模式切换到第二工作模式;
设置模块702,用于在第二工作模式下,将与第一物理中断对应的第一虚拟中断的状态设置为预设状态;
第二切换模块703,用于当第一虚拟中断的状态为预设状态时,将系统从第二工作模式切换到第一中断模式并执行第一虚拟中断。
可选地,第一切换模块701,具体用于:
获取第一物理中断的类型;第一物理中断的类型包括中断请求和快速中断请求;
根据第一物理中断的类型将系统从第一工作模式切换到对应的第二工作模式。
可选地,第一切换模块701,具体用于:
当接收到第一物理中断信号时,将系统在第一工作模式下的程序执行状态和返回地址到寄存器中;
将系统从第一工作模式切换到第二工作模式;
装置还包括:第三切换模块;
第三切换模块,用于当第一虚拟中断执行完毕时,根据寄存器中的程序执行状态和返回地址将系统从第一中断模式切换到第一工作模式,并继续执行程序。
可选地,该装置还包括:中断重入模块;中断重入模块,用于:
当第一虚拟中断未执行完毕,且接收到优先级高于第一物理中断的第二物理中断信号时,将程序执行状态和返回地址压栈保存;
将系统从第一中断模式切换到第二工作模式;
在第二工作模式下,将与第二物理中断对应的第二虚拟中断的状态设置为预设状态;
当第二虚拟中断的状态为预设状态时,将系统从第二工作模式切换到第二中断模式并执行第二虚拟中断;
当第二虚拟中断执行完毕时,将系统从第二中断模式切换到第一中断模式,继续执行第一虚拟中断并将程序执行状态和返回地址弹栈恢复。
可选地,第一工作模式包括:运行应用程序模式和运行操作系统模式。
除此之外,本申请实施例提供一种计算机设备,包括:存储器,处理器,及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时,实现如前述实施例中的虚拟中断处理方法的任意步骤。
除此之外,本申请实施例提供一种计算机可读存储介质,其特征在于,计算机可读存储介质中存储有指令,当指令在终端设备上运行时,使得终端设备执行如前述实施例中的虚拟中断处理方法的任意步骤。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置及设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及设备实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元提示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述,仅为本申请的一种具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
Claims (10)
1.一种虚拟中断处理方法,其特征在于,所述方法包括:
当接收到第一物理中断信号时,将系统从第一工作模式切换到第二工作模式;
在所述第二工作模式下,将与第一物理中断对应的第一虚拟中断的状态设置为预设状态;
当所述第一虚拟中断的状态为所述预设状态时,将所述系统从所述第二工作模式切换到第一中断模式并执行所述第一虚拟中断。
2.根据权利要求1所述的方法,其特征在于,所述将系统从第一工作模式切换到第二工作模式,具体包括:
获取第一物理中断的类型;所述第一物理中断的类型包括中断请求和快速中断请求;
根据所述第一物理中断的类型将所述系统从所述第一工作模式切换到对应的第二工作模式。
3.根据权利要求1所述的方法,其特征在于,所述当接收到第一物理中断信号时,将系统从第一工作模式切换到第二工作模式,具体包括:
当接收到第一物理中断信号时,将系统在第一工作模式下的程序执行状态和返回地址到寄存器中;
将所述系统从所述第一工作模式切换到第二工作模式;
所述方法还包括:
当所述第一虚拟中断执行完毕时,根据所述寄存器中的所述程序执行状态和所述返回地址将所述系统从第一中断模式切换到所述第一工作模式,并继续执行程序。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
当所述第一虚拟中断未执行完毕,且接收到优先级高于所述第一物理中断的第二物理中断信号时,将所述程序执行状态和所述返回地址压栈保存;
将所述系统从所述第一中断模式切换到所述第二工作模式;
在所述第二工作模式下,将与第二物理中断对应的第二虚拟中断的状态设置为预设状态;
当所述第二虚拟中断的状态为所述预设状态时,将所述系统从所述第二工作模式切换到第二中断模式并执行所述第二虚拟中断;
当所述第二虚拟中断执行完毕时,将所述系统从所述第二中断模式切换到所述第一中断模式,继续执行所述第一虚拟中断并将所述程序执行状态和所述返回地址弹栈恢复。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述第一工作模式包括:运行应用程序模式和运行操作系统模式。
6.一种虚拟终端处理装置,其特征在于,所述装置包括:第一切换模块、设置模块和第二切换模块;
所述第一切换模块,用于当接收到第一物理中断信号时,将系统从第一工作模式切换到第二工作模式;
所述设置模块,用于在所述第二工作模式下,将与第一物理中断对应的第一虚拟中断的状态设置为预设状态;
所述第二切换模块,用于当所述第一虚拟中断的状态为所述预设状态时,将所述系统从所述第二工作模式切换到第一中断模式并执行所述第一虚拟中断。
7.根据权利要求6所述的装置,其特征在于,所述第一切换模块,具体用于:
获取第一物理中断的类型;所述第一物理中断的类型包括中断请求和快速中断请求;
根据所述第一物理中断的类型将所述系统从所述第一工作模式切换到对应的第二工作模式。
8.根据权利6所述的装置,其特征在于,所述第一切换模块,具体用于:
当接收到第一物理中断信号时,将系统在第一工作模式下的程序执行状态和返回地址到寄存器中;
将所述系统从所述第一工作模式切换到第二工作模式;
所述装置还包括:第三切换模块;
所述第三切换模块,用于当所述第一虚拟中断执行完毕时,根据所述寄存器中的所述程序执行状态和所述返回地址将所述系统从第一中断模式切换到所述第一工作模式,并继续执行程序。
9.一种计算机设备,其特征在于,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-5任一项所述的虚拟中断处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如权利要求1-5任一项所述的虚拟中断处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311567816.8A CN117492964A (zh) | 2023-11-22 | 2023-11-22 | 一种虚拟中断处理方法及相关产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311567816.8A CN117492964A (zh) | 2023-11-22 | 2023-11-22 | 一种虚拟中断处理方法及相关产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117492964A true CN117492964A (zh) | 2024-02-02 |
Family
ID=89670700
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311567816.8A Pending CN117492964A (zh) | 2023-11-22 | 2023-11-22 | 一种虚拟中断处理方法及相关产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117492964A (zh) |
-
2023
- 2023-11-22 CN CN202311567816.8A patent/CN117492964A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3410288B1 (en) | Online upgrade method, device and system | |
US9471342B2 (en) | Register mapping | |
EP3252608B1 (en) | Node system, server device, scaling control method, and program | |
US20200125397A1 (en) | Interrupt request processing method and apparatus, and virtualized device | |
EP2577450B1 (en) | Virtual machine migration techniques | |
US9946870B2 (en) | Apparatus and method thereof for efficient execution of a guest in a virtualized enviroment | |
US9697024B2 (en) | Interrupt management method, and computer implementing the interrupt management method | |
US9342348B2 (en) | Transparent high availability for stateful services | |
US20180060103A1 (en) | Guest code emulation by virtual machine function | |
US20110219373A1 (en) | Virtual machine management apparatus and virtualization method for virtualization-supporting terminal platform | |
EP1467282A2 (en) | Operating systems | |
US8544012B2 (en) | Changing a scheduler in a virtual machine monitor | |
JP2015503784A (ja) | グラフィックス処理部における仮想マシン間の移行 | |
US20160085568A1 (en) | Hybrid virtualization method for interrupt controller in nested virtualization environment | |
EP4220394A1 (en) | Chip system, method for processing virtual interrupt, and corresponding device | |
EP3846028A1 (en) | Method and device for resuming execution of application, and computer | |
US20170024231A1 (en) | Configuration of a computer system for real-time response from a virtual machine | |
JP2023538093A (ja) | コンピュータデバイス、例外処理方法および割り込み処理方法 | |
US20140143372A1 (en) | System and method of constructing a memory-based interconnect between multiple partitions | |
CN114417373A (zh) | 一种NVMe-oF用户态客户端的数据访问方法和装置 | |
CN111666036B (zh) | 一种迁移数据的方法、装置及系统 | |
CN117492964A (zh) | 一种虚拟中断处理方法及相关产品 | |
US7934073B2 (en) | Method for performing jump and translation state change at the same time | |
CN1867895B (zh) | 用于除了操作一个主操作系统外还操作一个辅助操作系统的方法和装置 | |
US10671425B2 (en) | Lazy timer programming for virtual machines |
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 |