Uniform Driver Interface
The Uniform Driver Interface (UDI) is a defunct project developed by several companies to define a portable interface for device drivers.
The Uniform Driver Interface (UDI) allowed device drivers to be portable across both hardware platforms and operating systems without any changes to the driver source. With the participation of multiple OS, platform and device hardware vendors, UDI was intended to be the first interface which was likely to achieve such portability on a wide scale. UDI provided an encapsulating environment for drivers with well-defined interfaces which isolated drivers from OS policies and from platform and I/O bus dependencies. In principle, this allowed driver development to be totally independent of OS development. In addition, the UDI architecture was intended to insulate drivers from platform specifics such as byte-ordering, DMA implications, multi-processing, interrupt implementations and I/O bus topologies.
While UDI could potentially benefit open source operating systems such as Linux and *BSD by providing more driver support from companies, some open source/free software advocates feared that UDI would cause a proliferation of closed source drivers and a reduction in open source support by companies, undermining the purpose of the free software and open source movements. Richard Stallman (the leader of the free software movement) has claimed that the project does not benefit the free software movement.
See also
[edit]- I2O
- Network Driver Interface Specification (NDIS)
- Open Data-Link Interface (ODI)
- Universal Network Device Interface (UNDI)
- PC/TCP Packet Driver
References
[edit]- "UDI Reference Implementation Open Sourced" (Press release). Software Technologies Group. 2001-05-09. Archived from the original on 2001-11-09.
{{cite press release}}
: CS1 maint: bot: original URL status unknown (link)
External links
[edit]- Project UDI (Project UDI home page, loaded in a frameset by the official project URL www.projectudi.org)
- Official UDI Specifications (official UDI specifications published by Project UDI)
- UDI Driver Writer's Guide (PDF) (documentation from Project UDI, also here in HTML format)
- UDI and I2O (statement from Project UDI about I2O)
- UDI Reference Implementation (official UDI reference implementation published by Project UDI)
- The Free Software Movement and UDI (essay written by Richard Stallman in 1998, opposing UDI on philosophical grounds)
- Leading items (LWN.net article from 1998 about UDI and Linux)
- The Linux Kernel Driver Interface (explanation written by Greg Kroah-Hartman in 2004 about why Linux doesn't have stable internal APIs, also here in Linux kernel tree)
- We should all be supporting Project UDI. (editorial written by Deven Corzine in 2005 in support of Project UDI)
- The Uniform Driver Interface—why wasn’t it adopted? (blog post written in 2010 by Michael Trausch)
- Uniform Driver Interface (UDI wiki page on OSDev.org for hobbyists interested in implementing UDI)
- Acess2 Hobby Operating System (hobbyist OS with UDI support)