OS/360 and successors

[citation needed] It was one of the earliest[NB 1] operating systems to require the computer hardware to include at least one direct access storage device.

Although OS/360 itself was discontinued, successor operating systems, including the virtual storage MVS and the 64-bit z/OS, are still run as of 2023[update] and maintain application-level compatibility with OS/360.

IBM provided OS/360 as a set of libraries on tape that the installation had to restore to DASD in order to perform a system generation.

In addition, IBM offered microfiche that had assembly listing of the basic program material and of subsequent service.

IBM originally intended that System/360 should have only one batch-oriented[NB 4] operating system, OS/360,[2] capable of running on machines as small as 32 KiB.

[6][7] IBM released three variants of OS/360: PCP (Primary Control Program), a stop-gap which could run only one job at a time, in 1966; MFT (Multiprogramming with Fixed number of Tasks) for the mid-range machines, and MVT (Multiprogramming with Variable number of Tasks) for the top end.

By this time CP-67 was running well enough for IBM to offer it without warranty as a timesharing facility for a few large customers.

The text below mostly treats PCP, MFT and MVT as simply new names for the original SSS, MSS and MPS, although there were some design changes.

Officially, PCP, MFT and MVT are not separate operating systems from OS/360,[2]they are only install-time configuration options—in today's words, three different variants of the OS Nucleus and Scheduler.

However, because of quite different behavior and memory requirements, users commonly consider them de facto separate operating systems and refer to them as "early OS/360", "OS/MFT", "OS/MVT", respectively.

MFT differs from MVT mainly in the way in which it manages memory: when installing MFT, customers specify in the system generation (SysGen) a fixed[NB 7] number of partitions, areas of memory with fixed boundaries, in which application programs can be run simultaneously.

IBM dropped the PCP option in the final releases of OS/360, leaving only MFT II and MVT, both of which required more memory.

After introducing new System/370 machines with virtual memory in 1972, IBM developed MFT 2 into OS/VS1, the last system of this particular line.

MFT Version II (MFT-II)[15] shared much more of the Control Program and Scheduler code with MVT, and was much more flexible to run.

Experience indicated that it was not advisable to install MFT on systems with less than 256 KiB of memory,[16] which in the 1960s was quite a large amount.

It runs on a 360/65 in Multisystem mode[20] M65MP traps use of the Set System Mask (SSM) instruction to serialize disabled code between the two CPUs.

PCP, MFT and MVT provide similar facilities from the point of view of application programs: Some features were available only for MFT and MVT: When System/370 was announced in 1970 it offered essentially the same facilities as System/360 but with about 4 times the processor speeds of similarly priced System/360 CPUs.

[21] Then in 1972 IBM announced System/370 Advanced Functions, of which the main item was that future sales of System/370 would include virtual memory capability and this could also be retro-fitted to existing System/370 CPUs.

Hence IBM also committed to delivering enhanced operating systems which could support the use of virtual memory.

This approach eliminated the risk of memory fragmentation that was present in MVT and SVS, and improved the system's internal security.

[26] MVS introduced a new approach to workload management, allowing users to define performance targets for high-priority batch jobs.

This enabled users to give their systems more work than before without affecting the performance of the highest-priority jobs.

[27] MVS was IBM's first mainstream operating system on the System/370[NB 14] to support what IBM called tightly coupled multiprocessing, in which 2 (later, up to 12, for IBM mainframes, and up to 16, for Amdahl mainframes) CPUs shared concurrent access to the same memory (and a single copy of the operating system and peripheral devices), providing greater processing power and a degree of graceful degradation if one CPU failed (which, fortunately, became an increasingly rare event, as system up time rose from hours to days and, then, to years.)

In 1976 IBM provided another option, JES3 (Job Entry Subsystem 3), a descendant of ASP (Attached Support Processor), which allows one CPU to manage a single job queue feeding work to several physically distinct CPUs, and therefore allows one operator's console to manage the work of all those CPUs.

IBM hoped that Virtual storage access method (VSAM) would replace its earlier sequential, indexed and direct access methods as it provided improved versions of these:[29][30] These VSAM formats became the basis of IBM's database management systems, IMS/VS and DB2 (usually ESDS for the actual data storage and KSDS for indexes).

VSAM also provides a new implementation of the catalog facility which enables applications to access files by name, without needing to know which disk drive(s) they are on.

In 1977 IBM announced MVS/System Extensions, a program product (i.e., it cost extra money) which improved MVS performance and added functionality.

For reasons of size, this section concentrates on the MVT option of OS/360; PCP and MFT are very similar; with changes in nomenclature and some minor differences.

However, as it initializes various OS facilities it begins using standard services, e.g., it uses the OBTAIN macro to read a Data Set Control Block (DSCB) from a Volume Table of Contents (VTOC).