Patent ID: 8244919

Claim:
A data transfer system, comprising: a user process space where a plurality of user processes is executed; a kernel space comprising a kernel thread; and a hardware space configured to perform data input/output according to an input/output request of each of the user processes, wherein when input data based on an input request is received by the hardware space, the data transfer system checks whether a user process requesting the data input is in an execution state, and allows the kernel thread to copy the input data from the kernel space to the user process space if the user process is in the execution state and to delay the copying of the input data until the user process is executed if the user process is not in the execution state, and wherein the kernel thread is configured to copy output data from the user process space to the kernel space according to an output request of a user process, and the copied output data are outputted to the hardware space based on the output request.