Patent ID: 8312182

Claim:
A data processing system comprising a processing unit on which a control program runs, a plurality of operating systems (OSs) configured to run under control of said control program, a Peripheral Component Interchange (PCI) bus coupled to the processing unit, and one channel adaptor shared by the plurality of OS's for data transmission/ reception, wherein: the channel adaptor is coupled to the PCI bus on a PCI bus side of the channel adaptor, and the channel adaptor includes a connecting port on an input/output (I/O) side of the channel adapter; the channel adaptor includes a channel control register for controlling the channel adaptor; each OS has input/output process control data and an address translation table (TPT) indicating a physical address of the input/output process control data for executing an input/output process between each OS and the channel adaptor; wherein the input/output process control data includes a physical address of a transmission data buffer and a physical address of a reception data buffer, a channel driver in each OS controls the input/output process control data, and activates a data transfer process for the channel adaptor; a virtual channel driver configured to run under control of said control program controls the channel adaptor; and when the channel driver in each OS seeks to access the channel control register, the control program intercepts the access function, and the virtual channel driver accesses the channel control register instead of the channel driver in each OS, wherein the channel control register includes a TPT base address register indicating a start physical address of the address translation table (TPT); and when the channel driver in each OS seeks to set a value to the TPT base address register, the control program intercepts the access function, and the virtual channel driver writes a physical start address of a virtual address translation table (VTPT) including each OS's TPT information to the TPT base address register, wherein the channel adapter fetches the virtual address translation table (VTPT) using the value in the TPT base address register, and fetches the input/output process control data using the virtual address translation table (VTPT), and fetches a transmission data buffer in accordance with the fetched input/output process control data, and executes the data transfer using the transmission data buffer.