Jump to content

FORTRAN Monitor System

From Alfawiki
Adapted from the English Wikipedia article FORTRAN Monitor System, available under CC BY-SA 4.0Updated 9 August 20258 sources
IBM mainframe operating systems
IndustryComputer software
Founded1950s
FounderIBM
ProductsOS/360, DOS/360, TSS/360, CP-67, VM/370, z/OS, z/VM, z/VSE, z/TPF
ParentIBM

The evolution of IBM mainframe operating systems plays a significant role in the broader development of mainframe OSs, highlighting IBM's position as the foremost worldwide provider of mainframe computer hardware. Operating systems running on IBM mainframes have been created both by IBM itself and by external developers.

Initial IBM mainframe operating system offerings seldom introduced groundbreaking features, with exceptions such as TSS/360 and the virtual machine family beginning with CP-67. Nevertheless, IBM's commitment to reliable, established technology facilitated swift user adoption. The current generation of mainframe OSs—z/OS, z/VM, z/VSE, and z/TPF—are direct descendants of systems launched in the 1960s, maintaining compatibility with earlier software.

Before System/360

IBM was relatively slow in producing proprietary operating systems. Meanwhile, General Motors developed General Motors OS (1955) and GM-NAA I/O (1956) for its IBM machines; by 1962, competitors like Burroughs Corporation introduced MCP, and General Electric offered GECOS, each tailored to their clientele.

The first IBM operating systems appeared in the mid-1950s, primarily crafted by customers who owned expensive machines (costing approximately ), with the goal of automating job scheduling previously handled manually. These OSs were designed for a narrow range of processors and mainly supported scientific and engineering applications; many IBM models operated without any OS.

A noteworthy innovation came from the smaller IBM 650, which incorporated a feature later adopted in OS/360: the ability to automatically recover from hardware faults by restarting processing at the last saved checkpoint. This reduced both downtime and operational expenses.

From General Motors GM-NAA I/O to IBSYS

In 1956, General Motors Research created GM-NAA I/O for the IBM 701, evolving from a 1955 prototype named GM Operating System. IBM's user community group, SHARE, updated this system in 1960 as the SHARE Operating System. Subsequently, IBM enhanced it into IBSYS for use on the IBM 7090 and IBM 7094, optimizing tape drive usage when disk drives were available. IBSYS employed a card-based Job Control language as its primary interface and included compilers for FORTRAN and COBOL, an assembler, plus utilities like a sorting program.

In 1958, the University of Michigan adapted GM-NAA I/O to develop the UMES, which was optimized for handling many small-scale student jobs. UMES remained operational until it was replaced by the timesharing system known as the MTS in 1967.

BESYS

Developed by Bell Labs, BESYS (also called BELLMON) was used internally through the mid-1960s. Bell Labs freely distributed BESYS without official support, extending its availability beyond their own facilities.

FORTRAN Monitor System

Before IBSYS, IBM provided a tape-based operating system dedicated exclusively to compiling FORTRAN programs on the IBM 709, IBM 7090, and IBM 7094. The FORTRAN compiler was included on the same tape as the OS.

Early time-sharing and virtual machine systems

MIT's researcher Fernando Corbató pioneered early experimental time-sharing systems such as the CTSS, developed between 1957 and the early 1960s using modified versions of the IBM 709, IBM 7090, and IBM 7094. These projects were inspired by concepts proposed by John McCarthy. During the 1960s, IBM undertook experimental time-sharing initiatives involving hardware and microcode alterations to enable virtual memory. These included the IBM M44/44X (early 1960s), followed by IBM CP-40 (1964–1967), and later CP-67 (1967–1972). From 1968 to 1972, IBM distributed CP-67 without warranty or formal technical support to select major clients. While CP-40 and CP-67 operated on modified versions of the System/360 CPUs, M44/44X was built upon the earlier generation IBM 7044.

Although these experimental projects arrived too late to be integrated into the original System/360 series announced in 1964, they significantly influenced features such as virtual memory and virtual machine support incorporated into IBM's later System/370 mainframes and their operating systems released in 1972:

  • The M44/44X project demonstrated that partial implementations of virtual machines were inadequate and that thrashing could severely impair system performance.
  • Lessons learned from CP-40 and CP-67 helped IBM develop effective thrashing management techniques, confirming that its virtual memory technology was robust enough for high-demand commercial environments. Notably, IBM engineer David Sayre demonstrated that automated virtual memory management could rival or surpass manually designed overlay methods.

In 1968, Computer Software Systems—a consulting firm—leveraged the released CP-67 version to establish a commercial time-sharing service. Among its technical staff were former MIT personnel Dick Orenstein and Harold Feinleib. The company eventually renamed itself as National CSS, enhancing its software to accommodate more paying customers until it evolved into a distinct platform known as VP/CSS. VP/CSS served as National CSS's primary service system until transitioning to IBM's own VM/370 in the early 1980s.

During the late 1960s, universities developed three additional S/360 time-sharing operating systems:

  • The University of Michigan led development of the Michigan Terminal System (MTS) in 1967, which ran on IBM mainframes equipped with virtual memory starting with the S/360-67. MTS remained in use until 1999.
  • Beginning in 1969 at McGill University, development started on MUSIC, which expanded capabilities to include text searching, web publishing, email services, and software development tools. Marketed primarily by IBM to educational institutions as an economical OS option for their hardware, MUSIC became an official IBM Systems Product in 1985; its final release occurred in 1999.
  • Developed between 1967–68 at Stanford University for the IBM S/360-67, both ORVYL and WYLBUR offered some of the earliest time-sharing functionalities available on IBM S/360 computers.

System/360 Operating Systems

Prior to the 1960s, IBM’s lower-end and higher-end machines were incompatible, which complicated software portability and necessitated distinct peripheral devices such as disk drives. These incompatibilities led to increased design and manufacturing expenses and discouraged customers from upgrading. In response, IBM introduced the System/360 family in 1964, unifying peripherals and enabling most programs to operate across the entire range.[1]

IBM’s original intention was to develop a single batch-oriented OS, OS/360; however, they later released a simpler batch system called DOS/360. This decision arose because OS/360 either could not fit into the limited memory of smaller System/360 models or its prolonged development threatened hardware sales. Additional temporary systems included BOS/360 for the smallest configurations and TOS/360 tailored for tape-only machines.[1]

Compared to earlier IBM operating systems, those for System/360 were significantly more sophisticated. They needed to support multiprogramming, enabling CPU time-sharing during slow I/O processes, accommodate a wide range of machine configurations—from 16 KB to 1 MB of memory and processor speeds up to 500,000 instructions per second—and address diverse application requirements, spanning sequential file handling to intensive computational tasks.[2]

The development of OS/360 ranked among the largest software projects of its era but faced extensive delays, budget overruns, and numerous defects. To facilitate development and testing on actual hardware, IBM created Basic Programming Support/360 (BPS/360), which also offered essential tools such as compilers for FORTRAN and COBOL, utilities like Sort, and an assembler.[3]

Competitors capitalized on the setbacks experienced by OS/360 by targeting IBM’s vulnerable market segments. To maintain momentum in System/360 sales, IBM introduced four interim operating systems:[1]

  • Basic Operating System/360 (BOS/360), supporting both tape drives and some disk storage.
  • TOS/360, designed as an upgrade path for users of tape-only IBM 1401 systems.
  • DOS/360, developed by IBM’s small business division, which became widely adopted with successors like z/VSE still operational today.
  • A version of OS/360 limited to the Primary Control Program (PCP) option without multiprogramming capabilities.[4]

When IBM announced the S/360-67 featuring virtual memory capabilities, they introduced the timesharing system TSS/360. However, TSS/360 suffered from delays and reliability issues. Meanwhile, an alternative system named CP-67, developed by IBM's Cambridge Scientific Center, demonstrated sufficient stability for restricted customer deployment. CP-67 later evolved into VM/370 and subsequently z/VM. Ultimately, IBM ceased TSS development after delivering three releases of TSS/370 as transitional solutions.[5]

The obstacles encountered during System/360 operating system development significantly advanced software engineering practices and project management methodologies. Frederick P. Brooks, who served as senior project manager for System/360 and OS/360, chronicled these experiences in his seminal book The Mythical Man-Month. Among his principal conclusions were:Cite error: Closing </ref> missing for <ref> tag With the release of MFT Version II, this capacity was expanded to support as many as 52 partitions.

MVT

Compared to MFT, MVT was a more extensive and sophisticated system designed for the higher-end System/360 processors. It managed all memory outside the OS as a unified pool, distributing contiguous "regions" to multiple concurrent programs. This method offered greater adaptability and efficiency than MFT’s fixed partitions but was susceptible to fragmentation, where free memory became divided into unusable segments despite adequate overall availability.

In 1971, the introduction of the Time Sharing Option (TSO) for MVT gained traction among developers by providing tools such as an editor, language-specific debuggers for several System/360 programming languages, and batch job submission with immediate feedback. TSO operated through TCAM (Telecommunications Access Method), which replaced the earlier QTAM. Although IBM intended TCAM as a universal standard for data communications, its primary use remained with TSO until it was eventually replaced by VTAM in the late 1970s.

TP monitors

System/360 hardware and its operating systems were primarily optimized for extended batch processing workloads but were not well-suited for handling large volumes of brief transaction processing tasks occurring daily. To meet this demand, IBM introduced IMS in 1968, designed specifically for transaction processing on OS/360 and its successors. The following year, IBM released CICS, a more streamlined transaction processing system that also operated on DOS/360 and related platforms.

These software solutions, classified as "TP (teleprocessing) monitors," functioned as application-level programs overseeing other applications rather than serving as core OS components. Throughout the 1970s and 1980s, various third-party TP monitors such as COM-PLETE, DATACOM/DC, and ENVIRON/1 competed with CICS; however, IBM’s continuous improvements to CICS resulted in it becoming the preferred choice for most users.

Special systems for airlines

During the 1950s, airline expansion was limited by manual reservation methods relying on card files. In 1957, IBM collaborated with American Airlines to create SABRE, a computerized reservation system. The initial experimental SABRE system debuted in 1960 and was fully operational by 1964, both running on IBM 7090 mainframes. Subsequently, IBM developed a standardized booking platform called PARS for System/360 computers, extending similar systems to other carriers.

Early versions of SABRE and PARS integrated both application and operating system components. By 1968, IBM separated these functions into PARS (application layer) and ACP (operating system). ACP later evolved into ACP/TPF and eventually into the TPF, which found adoption across various industries requiring high-volume online transaction processing. The most recent version is known as z/TPF.

IBM created ACP because mid-1960s standard operating systems like DOS/360 and OS/360 were designed primarily for batch operations and could not meet the speed demands of airline reservation transaction processing. Even transaction monitors such as IMS and CICS, running on general-purpose OS platforms, lacked the performance necessary to manage hundreds of flights handled by thousands of agents simultaneously.

The final freely available release of ACP was version 9.2, distributed on a single mini-reel alongside comprehensive documentation. It supported IBM 3340 disk drives and offered a complete operational environment. Although initially targeted toward financial applications such as MasterCard processing, ACP 9.2 proved versatile enough to support airline reservation systems as well.

ACP included a hypervisor component called CHYR that enabled virtualized operating system guests—typically VS1 or VS2—allowing parallel program development or maintenance activities alongside live online operations. In some implementations, production workloads ran under VS2 within this hypervisor environment, occasionally incorporating IMS databases.

System/360 Model 20

Although the Model 20 belonged to the System/360 series due to its peripheral compatibility, it was a 16-bit system that lacked full programming compatibility with other models in the family. IBM Germany developed three distinct operating systems tailored to various Model 20 setups: DPS, designed for disk-based configurations requiring at least 12 KB of memory; TPS, intended for tape-based systems with a minimum of 8 KB memory; and CPS, created for punched-card environments needing at least 4 KB memory. These operating systems did not have successors, as IBM introduced the separately designed System/3 small business computers in 1969, which employed different peripheral devices than the mainframe line.

System/360 Model 44

The 360/44 utilized System/360 peripherals but incorporated a modified instruction set optimized for scientific tasks involving floating point calculations, such as those used in geological or meteorological research. Owing to its specialized architecture, the 360/44 operated with its own dedicated OS named PS/44. An optional feature allowed a System/360 emulator to run within concealed storage, enabling execution of unsupported instructions and enhancing compatibility with OS/360. Neither the 360/44 nor PS/44 had direct successors.

System/370 and virtual memory operating systems

Introduced in 1970, the System/370 offered capabilities similar to those of the System/360 but achieved approximately four times greater processing speed at comparable cost.[6] In 1972, IBM launched "System/370 Advanced Functions," which added virtual memory support to both new and upgraded System/370 CPUs. This initiative also included enhanced operating systems designed to leverage virtual memory.[7][8]

Operating systems featuring "/VS" in their titles denote "Virtual Storage," a term IBM preferred over "virtual memory" to prevent misunderstandings about data persistence.

All contemporary IBM mainframe operating systems, except for z/TPF, trace their origins to those introduced with the "System/370 Advanced Functions." The z/TPF exception stems from its lineage in the ACP, initially developed for large-scale airline reservation handling.

DOS/VS

DOS/VS was the successor to DOS/360, incorporating virtual memory alongside improvements such as:

  • Expansion to five memory partitions (later increased to seven).
  • A relocating loader that removed the necessity for separate link-edited copies per partition.
  • An enhanced spooling system called POWER/VS.

During the 1980s, DOS/VS evolved into DOS/VSE and VSE/SP, followed by VSE/ESA in 1991 and ultimately z/VSE in 2005.

OS/VS1

OS/VS1 was developed as an advancement over MFT, introducing virtual memory capabilities. IBM issued minor enhancements until 1983 but ceased further development by 1984. Both OS/VS1 and TSS/370 remain unique among IBM System/370 operating systems in lacking modern descendants.

A variant known as the Special Real Time Operating System (SRTOS), identified by RPQ Z06751, is derived from OS/VS1 and tailored for real-time applications in sectors such as electric utilities and oil refining.

OS/VS2 and MVS

OS/VS2 Release 1 (SVS) replaced MVT by introducing virtual memory while preserving much of MVT's original architecture.

In 1974, IBM unveiled OS/VS2 Release 2—a comprehensive redesign supporting multiple virtual address spaces—enabling programs to utilize identical virtual addresses mapped to separate physical memory locations. This version became known as "MVS" (Multiple Virtual Storages), whereas the initial OS/VS2 was referred to as "SVS" (Single Virtual Storage). IBM continued using this nomenclature for later editions.

Prominent features of MVS include:

  • A primary catalog system based on VSAM.
  • Support for "tightly-coupled multiprocessing", allowing multiple CPUs to share both memory and operating system instances.
  • A System Resources Manager (later Workload Manager) that balances workloads without compromising performance of high-priority tasks.

IBM progressively enhanced MVS through iterations such as MVS/SE, MVS/SP Version 1, MVS/XA (1981), MVS/ESA (1985), OS/390 (1996), culminating in today's z/OS (2001).

VM/370

The VM/370 system combines a virtual machine capability with the single-user Conversational Monitor System (CMS), allowing for time-sharing by executing CMS on separate virtual machines. This platform is a direct descendant of CP/CMS. The virtual machine function enabled software testing to occur without interrupting active production environments, while CMS became a popular choice for software development tasks.

Throughout its lifecycle, VM/370 experienced multiple enhancements, such as VM/SEPP ("Systems Extensions Program Product"), VM/BSEPP ("Basic Systems Extensions Program Product"), VM/SP (System Product), VM/SP HPO ("High Performance Option"), VM/XA MA ("Extended Architecture Migration Aid"), VM/XA SF ("Extended Architecture System Facility"), VM/XA SP ("Extended Architecture System Product"), VM/ESA ("Enterprise Systems Architecture"), culminating in the release of z/VM. IBM also introduced optional microcode assists designed to speed up the hypervisor’s handling of privileged instructions for guest operating systems. Additionally, with the advent of the 370/Extended Architecture, IBM incorporated the Start Interpretive Execution (SIE) instruction to significantly improve CP hypervisor efficiency.

See also

Further reading

External links

  1. ↑ 1.0 1.1 1.2 Cite error: Invalid <ref> tag; no text was provided for refs named Boyer360Revolution
  2. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named TanenbaumAS
  3. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named SaundersRMVSbeforeOS360
  4. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named AuslanderJaffeIBMVSOSsDAT
  5. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named VanVleckMulticians
  6. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named IBMSys370Announce
  7. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named IBMDPDChronology1970to1974
  8. ↑ Cite error: Invalid <ref> tag; no text was provided for refs named PughJohnsonPalmer1991IBM360andEarly370