UDI Reference Implementation Home Page
UDI provides an advanced driver environment for operating systems.
It defines system services such as memory management, tracing
functions, and buffer management. It also defines the set of
data types and the execution model available to UDI drivers. UDI
makes source and binary driver portability between different OSes
practical.
More ambitiously, UDI provides a set of advanced services that most
current OSes do not otherwise provide. UDI provides:
- An advanced scheduling model. Multiple driver instances can be
run in parallel on multiple processors with no lock management performed
by the driver. Free paralllism and scalability!
- A consistent execution model. A driver writer no longer has to
worry about whether it's safe to perform something at initialization time
or during interrupt context.
- Robust tracing and logging functions. Internationalized messages
from a driver are possible.
- Isolation from physical topology. For example, a PCI device could
be running with intervening bus bridges (such as VME) or an encryption
module could be plumbed to a network driver that's running on a different
CPU.
- Definition of build and delivery tools. A driver writer no longer
has to worry about what flags to feed the compiler for this version of
the kernel or how to deliver a driver that will work at system load time.
For more information, see Project UDI's
Intro to UDI page.
Return to UDI Home Page on Sourceforge
File last modified: 00:00 Thu January 1, 1970