【技术实现步骤摘要】
中断控制器的处理方法、装置及电子设备
本专利技术公开涉及一种计算机技术,尤其涉及一种中断控制器的处理方法、装置及电子设备。
技术介绍
随着虚拟机技术的不断发展,其可被广泛应用于数据中心、云计算服务等场景中。内核虚拟机(Kernel-BasedVirtualMachine,简称KVM)所管理的每一个虚拟机实例被操作系统看作是一个进程。输入输出(InputandOutput,简称IO)虚拟化是指与设备相关的虚拟化,其实质是由虚拟机通过虚拟机监控器(VirtualMachineMonitor,简称VMM)构建的虚拟设备复用有限的物理主机的外设资源以模拟真实外设访问的效果。而IO中断虚拟化是IO虚拟化的一部分,虚拟机使用将使用虚拟机的中断控制器来管理多个IO外设中断。图1示出了现有技术中的一种虚拟机中断处理流程的示意图;如图1所示的,流程示意图中的粗线表示会引发处理器例外或状态切换的动作,其中实线代表访问中断控制器的寄存器。QEMU是一个主机上的VMM(virtualmachinemonitor),通过动态二进制转换来模拟CPU,并 ...
【技术保护点】
1.一种虚拟机的中断控制器的处理方法,其特征在于,包括:/n虚拟机监测到虚拟处理器中断,启动虚拟机中的中断处理程序,以使所述中断处理程序向中断控制器发起对其状态寄存器的读取请求;/n当所述内核虚拟机捕获所述虚拟处理器发生缺页异常且缺页异常的地址指向所述中断控制器时,内核虚拟机将根据中断控制器的状态寄存器在虚拟机中的地址,对所述虚拟处理器的运行状态进行判断;/n当所述运行状态为中断状态时,中断控制器的缺页处理程序启动并将虚拟机中预设的内存地址填入所述虚拟机的页表中,以使所述页表的属性置为只读;/n返回所述中断处理程序向中断控制器发起对其状态寄存器的读取请求的步骤,并输出读取结果。/n
【技术特征摘要】
1.一种虚拟机的中断控制器的处理方法,其特征在于,包括:
虚拟机监测到虚拟处理器中断,启动虚拟机中的中断处理程序,以使所述中断处理程序向中断控制器发起对其状态寄存器的读取请求;
当所述内核虚拟机捕获所述虚拟处理器发生缺页异常且缺页异常的地址指向所述中断控制器时,内核虚拟机将根据中断控制器的状态寄存器在虚拟机中的地址,对所述虚拟处理器的运行状态进行判断;
当所述运行状态为中断状态时,中断控制器的缺页处理程序启动并将虚拟机中预设的内存地址填入所述虚拟机的页表中,以使所述页表的属性置为只读;
返回所述中断处理程序向中断控制器发起对其状态寄存器的读取请求的步骤,并输出读取结果。
2.根据权利要求1所述的处理方法,其特征在于,在所述虚拟机的页表的属性为只读,且虚拟机执行对所述中断控制器的状态寄存器进行写操作时,所述方法还包括:
内核虚拟机调用预存的中断控制器逻辑代码以根据所述预设的内存地址将所述虚拟处理器的运行状态更新为非中断状态;
虚拟机执行对所述中断控制器的状态寄存器进行写操作。
3.根据权利要求1所述的处理方法,其特征在于,所述虚拟机监测到虚拟处理器中断,启动虚拟机中的中断处理程序之前,还包括:
内核虚拟机接收到虚拟机发送的中断请求;
内核虚拟机的中断控制器执行预存在内核虚拟机中的所述硬件逻辑代码,以将所述预设的内存地址将所述虚拟处理器的运行状态更新为中断状态。
4.根据权利要求3所述的处理方法,其特征在于,所述虚拟机监测到虚拟处理器中断,包括:
所述中断控制器将生成的中断请求发送至所述虚拟处理器,以使虚拟机监测到所述虚拟处理器中断。
5.根据权利要求1-4任一项所述的处理方法,其特征在于,还包括:
设置虚拟机中的预设的内存地址,所述预设的内存地址用于记录虚拟处理器的运行状态;
其中,所述预设的内存地址与中断控制器的状态寄存器在虚拟机中的地址相同。
6.一种虚拟机的中断控制器的处理装置,其特征在于,包括:
虚拟机用于在监测到虚拟处理器中断,启动虚拟机中的中断处理程序,以使所述中断处理程序向中断控制器发起对其状态寄存器的读取请求;
内核虚拟机用于捕获所述虚拟处理器发生缺页异常且缺页异常的地址指向所述中断控制器时,根据中断控制器的状态寄存器在虚拟机中的地址对所述虚拟处理器的运行状态进行判断;
当所述运行状态为中断状态时,内核虚拟机中的中断控制器的缺页处理程序启动并将虚拟机中预设的内存地址填入...
【专利技术属性】
技术研发人员:高翔,朱琛,
申请(专利权)人:龙芯中科技术有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。