Characteristic Features Of Mainframe Operating Systems - IBM Mainframe

To help you understand the nature of mainframe operating systems, we will now describe the basic characteristics common to most of them. As you read about these characteristics, you will note that some of them are found on microcomputer or minicomputer operating systems too, although not usually at the same level of sophistication as they are found on mainframes. The characteristics are virtual storage, multiprogramming, spooling, batch processing, and time-sharing.

Virtual Storage

In most computer systems, the processors main storage is among the most valuable of the systems resources. As a result, modern mainframe computer operating systems provide sophisticated services to make the best use of the available main storage. Among the most important of these services is virtual storage.

Virtual storage is a technique that lets a processor simulate an amount of main storage that is larger than the actual amount of real storage. For example, a processor that has 2M bytes of real storage might use virtual storage to simulate 16M bytes of main storage. To do this, the computer uses disk storage as an extension of real storage.

The key to understanding virtual storage is realizing that at any given moment, only the current program instruction and the data it accesses need to be in real storage. Other data and instructions can be placed temporarily on disk storage, and recalled into main storage when needed. In other words, virtual storage operating systems transfer data and instructions between real storage and disk storage as they are needed.

Although the details of how an operating system implements virtual storage varies from one system to the next, the basic concept is the same. Fortunately, virtual storage is largely trans-parent from the users point of view, virtual storage appears to be real storage.


Multiprogramming means that the computer lets more than one program execute at the same time, i.e., at any given moment, only one program can have control of the CPU. Some processing operations like reading data from an input device - take much longer than others. As a result, most programs that run on mainframe computers are idle a large percentage of the time, waiting for I/O operations to complete. If programs were run one at a time on a mainframe computer, the CPU would spend most of its time waiting. Multiprogramming simply reclaims the CPU during these idle periods and lets another program execute.


It means Simultaneous Peripherals Operations On Line. A significant problem which must be overcome by multiprogramming systems is sharing access to input and output devices for the programs that execute together. For example, if two programs executing at the same time try to write output to a printer, the output from both programs is intermixed in the printout. One way to avoid this problem is to give one of the programs complete control of the printer, which defeats the purpose of multi programming because the other program has to wait until the printer is available.

To provide shared access to printer devices, spooling is used. Spooling manages printer output for applications by intercepting printer output and directing it to a disk device instead. When the program finishes, the operating system collects its spooled print output and directs it to the printer. In a multiprogramming environment, the operating system stores the spooled output separately on the disk so that it can print each programs output separately.

Batch Processing

Work is processed in units called jobs. A job may cause one or more programs to execute in sequence. One of the problems that arise when batch processing is used is managing how work flows through the system. To manage this in the multi-user system, the Job Entry Subsystem (JES) processes each users job in an orderly fashion.


In a time-sharing system, each user has access to the system through a terminal device. Instead of submitting jobs that are scheduled for later execution, the user enters commands that are processed immediately. Hence this is sometimes called "Interactive Processing", as it allows users to interact directly with the computer. Time-share processing is called "Foreground Processing" and batch job processing is called "Background Processing".

All rights reserved © 2020 Wisdom IT Services India Pvt. Ltd Protection Status

IBM Mainframe Topics