File name 1051752_B6500_Basic_IO_Handling_Oct_69.pdf
2nd ACM Symposium on
Operating Systems Principles
a.iin i Patel
Princeton, New Jersey
BASIC I/O HANDLING ON BURROUGHS B6500
Rajani M. Patel
Summary: The approach to processing basic Input/Output in B6500 hardware design
and software implementation is discussed in this paper. Hardware I/O structure
necessary to the understanding of the approach is described first. The represen-
tation of the I/O queue and the algorithms used in handling I/O requests are
described in detail to emphasize the ease with which the I/O handling portions of
the executive system may be modified to suit any installation. Some of the I/O
tables for coordinating I/O activity are discussed. The concept of asynchronous
processes running as extended arms of the executive system is discussed and the
implementation of it for updating status of peripheral units, for handling I/O
errors, etc. is described. The usage and implementation of I/O related events
and software interrupts is discussed. The locking concept is presented. Finally,
the complete I/O initiation and completion cycle is described. The description
throughout this paper is based on the actual working system implemented with
language ESPOL -an extended ALGOL language used for writing executiv~ systems.
Some of the special language constructs pertinent to I/O handling are illustrated.
The B6500 stack organization is designed for process switching and makes its
operation efficient for a multiprogramming/multiprocessing environment. To com-
plement the hardware design, events and queues are implemented in the software for
inter-process communication and deactivation and activation of a process during an
I/O cycle or because of preemption.
This paper describes how the basic I/O needs are satisfied in such a process-orientedenvironment.
The term 'process' in B6500 System is easy to understand if it is
remembered that the process has its own stack to run. Excep~ for some minor imp