Browse Prior Art Database

Synchronous and Asynchronous Device Driver Modes

IP.com Disclosure Number: IPCOM000060554D
Original Publication Date: 1986-Apr-01
Included in the Prior Art Database: 2005-Mar-08
Document File: 1 page(s) / 13K

Publishing Venue

IBM

Related People

Chen, JN: AUTHOR [+4]

Abstract

A method is described which allows user programs running on the UNIX operating system to dynamically select either a synchronous or asynchronous mode of operation. Programs which run on the UNIX* operating system transmit data to devices via read and write system calls. Traditionally, with character devices such as printers, plotters, locators, and the like, the mode of operation has traditionally been a synchronous one. A user program could not choose asynchronous operation. Block devices such as disks are typically run in an asynchronous mode and are not covered by this method. In synchronous operation, the user program issues the read or write system call which transfers control to the kernel device driver to perform the request. The user program does not receive control back until the operation is complete.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 51% of the total text.

Page 1 of 1

Synchronous and Asynchronous Device Driver Modes

A method is described which allows user programs running on the UNIX operating system to dynamically select either a synchronous or asynchronous mode of operation. Programs which run on the UNIX* operating system transmit data to devices via read and write system calls. Traditionally, with character devices such as printers, plotters, locators, and the like, the mode of operation has traditionally been a synchronous one. A user program could not choose asynchronous operation. Block devices such as disks are typically run in an asynchronous mode and are not covered by this method. In synchronous operation, the user program issues the read or write system call which transfers control to the kernel device driver to perform the request. The user program does not receive control back until the operation is complete. The major advantage to this mode is that the user program definitely knows that the operation is complete and can determine the degree of success of the data transmittal. The major disadvantage is that the user program cannot be doing something else while the I/O operation is pending, such as preparing the next buffer of data to be processed. In asynchronous operation, a user program initiates the read or write of data in the same manner. However, the operating system may return control before the I/O operation is complete. The major advantage is that the user program may continue processing, thus better utilizing the CPU when operating slow devices. The major disadvantage is that the user program doesn't really know when the device is done. The details of the method are described for the UNIX operating system which is running as a virtual machine on the Virtual Resource Manager (VRM) control program. The VRM control program is similar in conc...