Protected control of devices by user applications in multiprogramming environments

A user program directly accesses a storage device for I/O operations, bypassing the operating system. The user registers a virtual memory region and an "extent", or region, of the storage device with a host bus adapter. A virtual interface is created between the user and the storage device...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: FORD DAVID A, LANGERMAN ALAN B
Format: Patent
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:A user program directly accesses a storage device for I/O operations, bypassing the operating system. The user registers a virtual memory region and an "extent", or region, of the storage device with a host bus adapter. A virtual interface is created between the user and the storage device including a queue for transmitting commands from the user to the storage device. To perform I/O, the user creates a descriptor including command information identifying the type of I/O operation, a buffer handle identifying the registered virtual memory region, virtual memory address information identifying the locations of data buffers in the registered virtual memory region to be used for the I/O operation, an extent handle identifying the registered extent, and disk address information identifying an area within the registered extent to or from which data is to be written or read. The user posts this descriptor to the virtual interface by placed it on the associated queue. The adapter reads the descriptor and verifies that the descriptor and the data buffers are located within the registered virtual memory region identified by the buffer handle. The adapter also verifies that the area on the storage device identified by the disk address information is within the registered extent identified by the extent handle. If both of these verification steps succeed, then the I/O command is forwarded to the storage device. If either verification step fails, then the command is not forwarded, and an indication of the failure is returned to the user or the operating system.