购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

4.2 内核中断设计

Hypervisor的内核中断设计涉及以下4个方面。

1)中断管理器:Hypervisor必须能管理和分发中断,以确保所有虚拟机都能及时响应中断。

2)中断虚拟化:由于虚拟机是在Hypervisor上运行的,因此Hypervisor必须能够虚拟化中断,以使虚拟机能够感知和响应中断。这涉及将来自物理硬件的中断转换为虚拟中断,并将该虚拟中断投递给相应的虚拟机。

3)中断控制:Hypervisor还必须能够控制虚拟机中断的分发和处理,以确保虚拟机的资源和时间得到充分利用。这涉及分区客户系统中的任务优先级调度和中断屏蔽等技术,以确保高优先级任务能够及时响应中断。

4)中断处理程序:在收到中断后,Hypervisor必须能够调用适当的中断处理程序来处理中断。这涉及虚拟化硬件设备、更新虚拟机状态等操作,以确保虚拟机能正确响应中断。

PRTOS使用的是基于QEMU或者VMware搭建的X86硬件平台。单核硬件平台使用的是两片级联的i8259A PIC,如图4-2所示。

多核硬件平台采用的是APIC中断控制器。与传统的PIC不同,APIC能够提供更多的中断处理功能,具体如下。

1)更高的中断处理能力:APIC支持更多的中断输入,最多可以支持255个中断请求。

2)更快的中断响应速度:APIC能够快速识别和响应中断请求,从而减少处理器延迟。

3)更好的中断管理:APIC可以动态地分配和管理中断请求,从而避免中断冲突和竞争。

图4-2 i8259A PIC

APIC通常由多个子设备组成,包括LAPIC和I/O APIC。LAPIC位于处理器上,用于管理处理器内部的中断请求;I/O APIC则位于系统总线上,用于管理外部设备(如网卡、磁盘控制器等)的中断请求,如图4-3所示。

PRTOS中的中断驱动是一种软件组件,它负责PRTOS内核和物理硬件平台之间的中断传递。当外部设备发出中断请求时,PRTOS会拦截这个请求,并根据PRTOS配置向量,来决定中断请求的处理方式。PRTOS内核中断向量表IDT(Interrupt Descriptor Table,中断描述符表)的初始化请参考3.1.2小节,这里不再赘述。

图4-3 APIC中断控制器 e6SAgJsq0ISgcUovKhMC2RLml/sIIigxjKqptetwsjucv0EnPHw9rdU6X8K+oKC5

点击中间区域
呼出菜单
上一章
目录
下一章
×