Patent ID: 8863123
Filing Date: 2014-10-14
Classification: G06F

Abstract:
1. An apparatus for virtualizing Input/Output (I/O) devices, comprising: a hardware device control unit configured to control I/O devices of a computer terminal; a guest Operating System (OS) unit configured to run a guest OS for running an application program via a virtual machine; a virtual machine monitor unit configured to include shared memory for transferring I/O data and an event channel for transferring events between the quest OS and a host OS, to store an instruction and data, corresponding to an I/O request signal, in the shared memory when the I/O request signal is received from the guest OS unit, and to transfer the stored instruction and the data to the host OS via the event channel; and a host OS unit configured to perform an operation of assigning the shared memory to the virtual machine monitor unit, an operation of generating the event channel, and an operation corresponding to the I/O instruction via the hardware device control unit when the I/O instruction is received via the event channel, to store results of performance of the operations in the shared memory, and to perform control so that the results of the performance of the operations are sent to the guest OS unit via the event channel, wherein the guest OS unit includes one or more guest OS virtual device drivers and sends the I/O request signal to the virtual machine monitor unit via the event channel using the guest OS virtual device drivers, and wherein the host OS unit includes one or more host OS virtual device drivers and performs the operation corresponding to the received I/O instruction using the host OS virtual device drivers.