Patent ID: 8589601

Claim:
An I/O controller to which an I/O device can be connected, and instructs the I/O device to execute a process, the I/O controller comprising: a descriptor transfer device that transfers one or more descriptors indicating contents of one or more processes to be executed, the descriptor transfer device being connected to a processor that instructs the I/O device to execute the one or more processes based on the one or more descriptors transferred from the descriptor transfer device and connected to a main memory that stores information that is used by the processor, the processor writing the one or more descriptors to the main memory such that a first one of the one or more descriptors includes first source type information and subsequent ones of the one or more descriptors include second source type information; and an execution instruction unit that instructs the I/O device to execute the process, based on the one or more descriptors transferred from the descriptor transfer device, wherein the descriptor transfer device includes: a memory unit configured to store the one or more descriptors; and a descriptor reading unit that reads the one or more descriptors from the main memory and transfers the read one or more descriptors to the execution instruction unit, wherein the descriptor reading unit transfers the read one or more descriptors including the second source type information from the main memory directly to the execution instruction unit, and first writes the read first one of the one or more descriptors including the first source type information to the memory unit and then transfers the first one of the one or more descriptors to the execution instruction unit.