Back to results
US 10,120,736 B2Granted
Executing a kernel device driver as a user space process
AssigneeInternational Business Machines Corporation
InventorsMichael Adda, Dan Aloni, Avner Braverman
Life of this patent
Estimating the term…
Abstract
Two or more ports of a same type are identified in a computer. A separate device driver process is initiated for each of the identified ports. A one-to-one correspondence between each of the ports and each of the device driver processes is established.
Claims8
A method, comprising:
- identifying two or more ports of a same type, the two or more ports physically located on separate devices;
- initiating a separate device driver process for each of the identified ports, each separate device driver process executing from a user space in lieu of a kernel space;
- wherein each separate device driver executes from the user space being a kernel extension in lieu of the kernel space by way of a separate emulation layer established for each separate device driver, wherein each emulation layer comprises a respective user space driver framework (UDF) library executing from the user space and a respective UDF kernel module executing from the kernel space receiving and processing kernel application programming interface (API) call functions from each separate device driver process executing from the user space, each respective emulation layer replicating a subset of the kernel API call functions;
- and wherein each respective UDF library and UDF kernel modules comprised within each separate emulation layer for each separate device driver process execute concurrently;
- and
- establishing a one-to-one correspondence between each of the ports and each of the device driver processes.
3 more elements
A computer program product, the computer program product comprising:
- a non-transitory computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising:
- computer readable program code configured to identify two or more ports of a same type, the two or more ports physically located on separate devices;
- computer readable program code configured to initiate a separate device driver process for each of the identified ports, each separate device driver process executing from a user space in lieu of a kernel space;
- wherein each separate device driver executes from the user space being a kernel extension in lieu of the kernel space by way of a separate emulation layer established for each separate device driver, wherein each emulation layer comprises a respective user space driver framework (UDF) library executing from the user space and a respective UDF kernel module executing from the kernel space receiving and processing kernel application programming interface (API) call functions from each separate device driver process executing from the user space, each respective emulation layer replicating a subset of the kernel API call functions;
- and wherein each respective UDF library and UDF kernel modules comprised within each separate emulation layer for each separate device driver process execute concurrently;
- and
- computer readable program code configured to establish a one-to-one correspondence between each of the ports and each of the device driver processes.
4 more elements
Dependencies are inferred from the claim text.