Uniform Driver Interface
Project UDI - Slide 2
What is UDI?
OS-Neutral
Platform-Neutral
Device Driver Interface
Uniform Driver Interface
Project UDI - Slide 3
Free and Open Specification
• Published on the Web
• No Licensing Fees
• Developed Jointly by SCO and Other Project UDI Members
Uniform Driver Interface
Project UDI - Slide 5
UDI Driver Portability
• 100% Driver Source Portability
–Defines architecture, APIs and packaging format
• Binary Portability
–IA-32 and IA-64 ABIs defined
• Source and Binary Distributions
Uniform Driver Interface
Project UDI - Slide 6
OS ADriver
OS BDriver
OS ‘n’Driver
...
Proprietary driver interfaces
OneUDI Driver
Today With UDICommon driver interface
Single UDI Driver - Many OSes
Uniform Driver Interface
Project UDI - Slide 7
The UDI Solution
• One driver source for all UDI-compliant OSes
• UDI moves up IHV porting order
–More bang for the buck for IHVs
• UDI-compliant OSes get better coverage
Uniform Driver Interface
Project UDI - Slide 8
Intel Moves Closer to
Unix in Standards Effort
- Information Week
Intel Pushing Unified Unix
- InfoWorld/C-Net
Intel, Computer Makers to Forge Common Guidelines
for Unix- Wall Street Journal
Heavyweights Unite Behind Interface for Unix Servers
- PC Week
Uniform Driver Interface
Spells Relief- EE Times
UDI News Headlines
Uniform Driver Interface
Project UDI - Slide 9
Uniformity Across Device Types
• Common Execution Model
• Common Data Model
• Common Inter-Module Communication
• Common System Services
Uniform Driver Interface
Project UDI - Slide 10
UDI Fully Encapsulates Drivers
UDI
Drivers
Physical I/O Abstraction
System Services: Configuration Resource Allocation Inter-Module Communication Tracing & Logging Error Handling Time Management Buffer Management
Operating System
UDI Environment
Application Programs
CPU and I/O Hardware (PIO, DMA, Interrupts)
I/O Requests
Uniform Driver Interface
Project UDI - Slide 11
Embedding OS
UDI Environment
Path From Application to DriverIntegrated Implementation
I/O Subsystem
Application
UDI Driver
Physical I/O
Adapter or System Hardware
OS Requests
UDI Channel Operations
Interrupts
UDI Services
Hardware Access
Uniform Driver Interface
Project UDI - Slide 12
UDI: Next-Generation Technology
• Instance Independence
–Hot plug/hot swap adapters and devices
• Location Independence
–Distributed environments and I/O processors
Uniform Driver Interface
Project UDI - Slide 13
UDI: Next-Generation Technology(continued)
• Implicit MP Synchronization
–No lock primitives
• Support for Field-Installable 3rd-Party Extensions
–Adds new device models
Uniform Driver Interface
Project UDI - Slide 14
UDI In Action
First Prototype Completed 12/9/97
Alpha
Single Driver Source, no #ifdefs, No modificationsSingle Driver Source, no #ifdefs, No modifications
Tru64 UNIXTru64 UNIX
64 bit Alpha64 bit Alpha
SCO UnixwareSCO Unixware
32 bit Intel32 bit IntelSUN SolarisSUN Solaris
32 bit UltraSparc32 bit UltraSparc
HP-UXHP-UX
32 bit PA_RISC32 bit PA_RISC
IBM AIXIBM AIX
PowerPCPowerPC
NCR MP-RASNCR MP-RAS
32 bit Intel32 bit Intel
AdaptersAdapters
Adaptec SCSIAdaptec SCSI
Interphase 100BTInterphase 100BT