Shadow descriptor tables must therefore be used to track changes made to the descriptor tables by the guest OS.[5] I/O device emulation: Unsupported devices on the guest OS must be emulated by a device emulator that runs in the host OS.[6]