Spooling and Virtual Devices

Spooling and Virtual Devices:

An input/output device is slower than the speed of the computer to which the device is connected. For example, a dot matrix printer is slower than the speed of a computer. If a print operation is initiated, the computer ends the data to the printer and remains idle until the printing operation is completed. Computer time can effectively be used by a technique called spooling (Simultaneous Peripheral Operations On-Line). With this technique, the computer attends to the user’s needs immediately after sending the data to the printer.

We have seen that spooling was one of the earliest applications of multiprogramming. The technique of spooling can be extended to small computers like PCs. For instance, a printer has its own memory, known as a print buffer. The PC transfers the data to the print buffer and turns to the needs of the user.

There is another benefit of spooling in a multiprogramming environment. Access to slow devices such as printers is restricted to the spool print program. It allows the sharing of a such slow device by several running programs.

A virtual device is a simulation of an actual device by the operating system. A user utilizes the virtual device as if were an actual device. The spool print program is an example of a virtual device.

An application may require more devices than actually the computer possesses. Let us consider an example of updating a payroll master file with a transaction file. The master file contains the data of employees in the last month. The changes to be made in the master file in the current month are recorded in the transaction file. A new master file is created by updating the old master file using the transaction file. The application may also require the printing of a new master file on one printer and the printing of errors generated during updating the master file on another printer. This objective can be achieved with a single printer using the virtual device concept. The program refers to two printers, which appear to be available, while the operating system manages the data to be printed within the disk file. Thus, the programs can effectively be executed irrespective of the devices actually used.


Database Models or Data Models
Application Software
FTP (File Transfer Protocol)
Database Management System (DBMS)
Secondary Storage Devices
Spooling– Wikipedia

Comments (No)

Leave a Reply