Ref. https://projectacrn.github.io/1.1/developer-guides/hld/hv-dev-passthrough.html
Device Passthrough — Project ACRN™ v 1.1 documentation
Device Passthrough A critical part of virtualization is virtualizing devices: exposing all aspects of a device including its I/O, interrupts, DMA, and configuration. There are three typical device virtualization methods: emulation, para-virtualization, and
projectacrn.github.io
A critical part of virtualization is virtualizing devices: exposing all aspects of a device including its I/O, interrupts, DMA, and configuration. There are three typical device virtualization methods: emulation, para-virtualization, and passthrough. Both emulation and passthrough are used in ACRN project. Device emulation is discussed in I/O Emulation high-level design and device passthrough will be discussed here.
(Kor) Virtualization의 Critical한 부분은 "virtualizing devices"이다
-> I/O, Interrupts, DMA 그리고 configuration을포함한 Device의 모든부분을 노출하는것.
-> 3 가지 virtualization 방법이 있음 : emulation, para-virtualization, passthrough
The difference between device emulation and passthrough is shown in Figure 101. You can notice device emulation has a longer access path which causes worse performance compared with passthrough. Passthrough can deliver near-native performance, but can’t support device sharing.
(Kor) Device emulation과 Passthrough의 차이점은 아래 그림과 같다. Device emulation이 더 긴 access path 가지고 이는 passthrough 방식과 비교해 나쁜 performance를 야기시킨다. Passthrough은 native와 근접한 performance를 갖는다. 하지만, device sharing은 지원하지 않는다.

Figure 101 Difference between Emulation and passthrough