gpt4 book ai didi

kernel - 中断在硬件虚拟化中是如何工作的?

转载 作者:行者123 更新时间:2023-12-04 15:09:46 25 4
gpt4 key购买 nike

认为

  • 虚拟机 (VM1) 正在运行并创建 IO 请求(文件读取)
  • 在请求完成之前,VMM 调度了另一个虚拟机 (VM2)
  • 现在IO完成,DMA引起中断。此中断将导致调用 VM2 的中断处理程序,本不应如此

  • 那么它是如何工作的呢?

    最佳答案

    Now the IO is finished and DMA causes interrupt. This interrupt will cause interrupt handler of VM2 called which should not be the case



    这是不正确的。虽然这取决于所使用的确切管理程序,但几乎没有人会允许这种情况发生。

    通常(例如,不包括设备到 VM 的直接映射等),中断将传递给管理程序,因为管理程序是实际执行读取请求的对象。假设是虚拟设备,当 VM 发起读取请求时,它实际上并不与硬件对话,而是与虚拟机管理程序模拟的假设备对话。管理程序实际管理设备,因此将从设备接收所有中断。当再次调度 VM 时,如果需要进行设备模拟,虚拟机管理程序将向 VM 伪造硬件中断。

    现在,在将设备直接映射到 VM 的情况下,VM 将管理设备。但是,管理程序仍然可以阻止其他 VM 从该设备接收中断,因此情况与管理程序类似,即管理程序阻止并且不将中断交付给不应接收它们的 VM。

    关于kernel - 中断在硬件虚拟化中是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32573053/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com