1. A method for operating a computer system comprising: executing a device driver in a user mode of operation, wherein the device driver initiates a function call comprising code executable in user mode, wherein the device driver comprises device driver code executable in kernel mode; and receiving the function call at an interface, wherein the interface translates the function call to code executable in kernel mode, wherein the interface comprises a kernel mode proxy module linked to a user mode proxy module, wherein the interface provides copies of kernel mode objects to the user mode for use in executing user mode functions, wherein the interface provides copies of user mode objects to the kernel mode for use in executing kernel mode functions.