The OSDI developer's pack provides skeleton or example code for creating a Device Interface or OSDI, which provides the DP4 terminal manager with a standard means of controlling specialised hardware. The OSDI handles the devices used by an application:
An OSDI may support:
Management of specialised input and output devices
Input from more than one device at the same time (for example, a keyboard and scanner)
Synchronous and asynchronous printing, depending on the operating system
Software devices (such as key press counters)
Error notification to the user application
Device-independent applications that are portable across different systems