写在前面
为什么要再聊天Pass Through?
因为在QNX + Linux Android的技术方案下,我们会遇到LA发生reboot或异常panic后,无法正常开机。而再次异常的原因确实最头疼的Memory Corruption。观察下来是由于一些DMA外设如使用UART的一些设备在重启或panic后,没有正常走Shutdown流程,导致Buffer仍然被使用。所以这里再进行一些总结。
一,设备直接分配技术
设备直接分配技术允许将物理设备直接暴漏给进程或虚拟机,无需经过宿主机操作系统的中介。使它能够像访问本地设备一样直接访问这些物理设备。
其设计的目的是为了提高设备访问效率和性能,减少虚拟化带来的系统开销。它的主要实现方法包括PassThrough和SR-IOV。这里我们只讨论PassThrough。
二,PassThrough简介
PassThrough(也称为设备直通或设备透传)是设备直接分配技术的一种具体实现。它允许宿主机中的物理设备(如PCI/PCIe设备)被直接分配给虚拟机,是虚拟机能够像物理设备一样直接使用这些设备。
某些直通设备,特别是需要进行大量数据传输的设备(如WIFI,处处设备等)。这些设备通常支持DMA操作,能够独立完成内存与设备之间的数据传输。
三,Q+LA方案下的PassThrough
在该方案下,I2C,SPI,UART,PCIe和USB都为PassThrough设备。
默认情况的