Patent ID: 7024672

Claim:
For a computer system comprising one or more processes capable of operating in at toast one of (i) a relatively less restricted kernel mode, and (ii) a relatively more restricted user mode, and a hardware adaptor that allows the one or more processes to communicate with at least one hardware device over a communication link, a method of allowing for a single implementation of one or more operations that are common to both kernel mode processing and user mode processing relative to the hardware adapter, the method comprising acts of: defining a common interface name for at least one operation corresponding to the hardware adaptor and that is common to both kernel mode processing and user mode processing; providing a kernel mode implementation of the at least one operation that corresponds to the name; providing a user mode implemenatation of the at least one operation that corresponds to the name, wherein the kernel mode implementation includes more operations than the corresponding user mode implementation, including both operations that are common between the user mode and kernel mode as well as unique operations; and for a given process, mapping one or more common interface calls (i) to the kernel mode implementation if the given process is a kernel mode process, and (ii) to the user mode implementation if the given process is a user mode process.