Trustworthy Systems

Current implementation

The user-level device driver (ULDD) project has produced a framework to allow device drivers to be run at user-level on both the L4 microkernel and Linux. Although focussing on user-level drivers, the framework also allows the same device drivers to be run inside the Linux kernel. This is not only useful for benchmarking, it also allows performance-critical drivers to be moved back into the kernel after having been developed and debugged at user level.

The driver framework has been used to create a number of drivers including:

One of the goals of this work is to provide a flexible environment. To this end we have made the drivers as portable as feasible, and have them running on a number of platforms: