Last updated

Developer IBM
Written in primarily PL/X, HLASM, and C/C++ [1]
OS family MVS
Working stateCurrent
Source model Closed source with open source components.
Initial releaseMarch 30, 2001;20 years ago (2001-03-30) (V1R1, announced October, 2000)
Latest release Version 2.4 (V2R4) / September 30, 2019;18 months ago (2019-09-30)
Marketing targetEnterprise / Mainframes
Available in English and other languages
Package manager SMP/E
Platforms z/Architecture
Kernel type Monolithic (uniquely hardware-assisted)
Default user interface ISPF, z/OS Management Facility
License Proprietary monthly license charge (MLC); pricing available based on actual use (VWLC, EWLC, AWLC, EAWLC, IWP); reduced pricing options (zELC, zNALC, "Solution Edition") for many applications
Official website IBM: z/OS
An IBM System Z10 mainframe computer on which z/OS can run. IBM System z10.jpg
An IBM System Z10 mainframe computer on which z/OS can run.

z/OS is a 64-bit operating system for IBM z/Architecture mainframes, introduced by IBM in October 2000. [2] It derives from and is the successor to OS/390, which in turn followed a string of MVS versions. [NB 1] Like OS/390, z/OS combines a number of formerly separate, related products, some of which are still optional. z/OS has the attributes of modern operating systems, but also retains much of the older functionality originated since the 1960s and still in regular use—z/OS is designed for backward compatibility.


Major characteristics

z/OS supports stable mainframe systems and standards such as CICS, COBOL, IMS, PL/I, DB2, RACF, SNA, IBM MQ, record-oriented data access methods, REXX, CLIST, SMP/E, JCL, TSO/E, and ISPF, among others. However, z/OS also supports 64-bit Java, C, C++, and UNIX (Single UNIX Specification) APIs and applications through UNIX System Services  The Open Group certifies z/OS as a compliant UNIX operating system – with UNIX/Linux-style hierarchical HFS [NB 2] and zFS file systems. These compatibilities make z/OS support a range of commercial and open source software. [3] z/OS can communicate directly via TCP/IP, including IPv6, [4] and includes standard HTTP servers (one from Lotus, the other Apache-derived) along with other common services such as FTP, NFS, and CIFS/SMB. z/OS is designed for high quality of service (QoS), even within a single operating system instance, and has built-in support for Parallel Sysplex clustering.

z/OS has a Workload Manager (WLM) and dispatcher which automatically manages numerous concurrently hosted units of work running in separate key-protected address spaces according to dynamically adjustable goals. This capability inherently supports multi-tenancy within a single operating system image. However, modern IBM mainframes also offer two additional levels of virtualization: LPARs and (optionally) z/VM. These new functions within the hardware, z/OS, and z/VM – and Linux and OpenSolaris support – have encouraged development of new applications for mainframes. Many of them utilize the WebSphere Application Server for z/OS middleware.

From its inception z/OS has supported tri-modal addressing (24-bit, 31-bit, and 64-bit). Up through Version 1.5, z/OS itself could start in either 31-bit ESA/390 or 64-bit z/Architecture mode, so it could function on older hardware, albeit without 64-bit application support on those machines. (Only the newer z/Architecture hardware manufactured starting in the year 2000 can run 64-bit code.) IBM support for z/OS 1.5 ended on March 31, 2007. Now z/OS is only supported on z/Architecture mainframes and only runs in 64-bit mode. Application programmers can still use any addressing mode: all applications, regardless of their addressing mode(s), can coexist without modification, and IBM maintains commitment to tri-modal backward compatibility. However, increasing numbers of middleware products and applications, such as DB2 Version 8 and above, now require and exploit 64-bit addressing.

IBM markets z/OS as its flagship [5] operating system, suited for continuous, high-volume operation with high security and stability.

z/OS is available under standard license pricing and via IBM Z New Application License Charges (zNALC) and "IBM Z Solution Edition", two lower-priced offerings aimed at supporting newer applications ("new workloads"). [6] U.S. standard commercial z/OS pricing starts at about US$125 per month, including support, for the smallest zNALC installation running the base z/OS product plus a typical set of optional z/OS features.

z/OS introduced Variable Workload License Charges (VWLC) and Entry Workload License Charges (EWLC) which are sub-capacity billing options. VWLC and EWLC customers only pay for peak monthly z/OS usage, not for full machine capacity as with the previous OS/390 operating system. VWLC and EWLC are also available for most IBM software products running on z/OS, and their peaks are separately calculated but can never exceed the z/OS peak. To be eligible for sub-capacity licensing, a z/OS customer must be running in 64-bit mode (which requires z/Architecture hardware), must have completely eliminated OS/390 from the system, and must e-mail IBM monthly sub-capacity reports. Sub-capacity billing substantially reduces software charges for most IBM mainframe customers. [7] Advanced Workload License Charges (AWLC) is the successor to VWLC on mainframe models starting with the zEnterprise 196, and EAWLC is an option on zEnterprise 114 models. AWLC and EAWLC offer further sub-capacity discounts.

Other features

64-bit memory support

Within each address space, z/OS typically permits the placement of only data, not code, above the 2 GB "bar". z/OS enforces this distinction primarily for performance reasons. There are no architectural impediments to allowing more than 2 GB of application code per address space. IBM has started to allow Java code running on z/OS to execute above the 2 GB bar, again for performance reasons.

Starting with z/OS version 2 release 3, code may be placed and executed above the 2 GB "bar". However, very few z/OS services may be invoked from above the "bar".

Memory is obtained as "Large Memory Objects" in multiples of 1 MB (with the expectation that applications and middleware will manage memory allocation within these large pieces). There are three types of large memory objects:

z/OS Encryption Readiness Technology (zERT)

z/OS Encryption Readiness Technology (zERT) monitors, records, and reports details of z/OS cryptographic network protection. It is a feature of z/OS V2R3 (and later releases) Communications Server component. [8]

With zERT, the TCP/IP stack acts as a focal point in collecting and reporting the cryptographic security attributes of IPv4 and IPv6 application traffic that is protected using the TLS/SSL, SSH and IPSec cryptographic network security protocols. The collected connection level data is written to SMF in new SMF 119 subtype 11 records for analysis. [9]

In certain environments, the volume of SMF 119 subtype 11 records can be large. The zERT aggregation function provides an alternative SMF view of the collected security session data. This alternate view is written in the form of new SMF 119 subtype 12 records that summarize the use of security sessions by many application connections over time and which are written at the end of each SMF interval. This alternate view condenses the volume of SMF record data while still providing all the critical security information.

z/OS Management Facility (z/OSMF) is enhanced to provide a plug-in named IBM zERT Network Analyzer. IBM zERT Network Analyzer is a web-based graphical user interface that z/OS network security administrators can use to analyze and report on data reported in zERT Summary records. With the zERT Network Analyzer, a z/OS network security administrator (typically a systems programmer with responsibility over z/OS Communications Server) can import SMF zERT summary records into a Db2 for z/OS database and then build and run custom queries against that data.

Generation Data Group

The z/OS Generation Data Group (GDG) is a description of how many generations of a file are to be kept and at what age a generation will be deleted. Whenever a new generation is created, the system checks whether one or more obsolete generations are to be deleted.

The purpose of GDGs is to automate archival, using the command language JCL, the file name given is generic. When DSN appears, the GDG name appears along with the history number, where

(0) is the most recent version

(-1), (-2), ... are previous generations

(+1) a new generation (see DD)

Another use of GDGs is to be able to address all generations simultaneously within a JCL script without having to know the number of currently available generations. To do this, you have to omit the parentheses and the generation number in the JCL when specifying the dataset.


Creation of a standard GDG for five safety scopes, each at least 35 days old:


Delete a standard GDG:


Operational data collection

Operational data is data that z/OS system produces when it runs. This data indicates the health of the system and can be used to identify sources of performance and availability issues in the system. IBM Z Common Data Provider collects IT operational data from z/OS systems, transforms it to a consumable format, and streams it to analytics platforms. [10]

Operational data types

IBM Z Common Data Provider collects both structured and unstructured data, including the following types of operational data: [11]

  • System Management Facilities (SMF) data
  • Log data from the following sources:
    • Job log, the output which is written to a data definition (DD) by a running job
    • z/OS UNIX log file, including the UNIX System Services system log (syslogd)
    • Entry-sequenced Virtual Storage Access Method (VSAM) cluster
    • z/OS system log (SYSLOG)
    • IBM Tivoli NetView for z/OS messages
    • IBM WebSphere Application Server for z/OS High Performance Extensible Logging (HPEL) log
    • IBM Resource Measurement Facility (RMF) Monitor III reports
  • User application data, the operational data from users' own applications

See also


  1. Starting with the earliest:
    • OS/VS2 Release 2 through Release 3.8
    • MVS/System Extensions (MVS/SE)
    • MVS/System Product (MVS/SP) Version 1
    • MVS/System Product Version 2 (MVS/Extended Architecture, MVS/XA)
    • MVS/System Product Version 3 (MVS/Enterprise Systems Architecture, MVS/ESA)
    • MVS/ESA SP Version 4
    • MVS/ESA SP Version 5
  2. Not to be confused with the Macintosh HFS

Related Research Articles

IBM mainframes are large computer systems produced by IBM since 1952. During the 1960s and 1970s, IBM dominated the large computer market. Current mainframe computers in IBM's line of business computers are developments of the basic design of the IBM System/360.

MVS Operating system for IBM mainframes

Multiple Virtual Storage, more commonly called MVS, was the most commonly used operating system on the System/370 and System/390 IBM mainframe computers. IBM developed MVS, along with OS/VS1 and SVS, as a successor to OS/360. It is unrelated to IBM's other mainframe operating system lines, e.g., VSE, VM, TPF.

z/VSE is an operating system for IBM mainframe computers, the latest one in the DOS/360 lineage, which originated in 1965. Announced Feb. 1, 2005 by IBM as successor to VSE/ESA 2.7, then-new z/VSEwas named to reflect the new "System z" branding for IBM's mainframe product line.

Hercules (emulator)

Hercules is a computer emulator allowing software written for IBM mainframe computers and for plug compatible mainframes to run on other types of computer hardware, notably on low-cost personal computers. Development started in 1999 by Roger Bowler, a mainframe systems programmer.

IBM System/370 Family of mainframe computers 1970-1990

The IBM System/370 (S/370) is a model range of IBM mainframe computers announced on June 30, 1970 as the successors to the System/360 family. The series mostly maintains backward compatibility with the S/360, allowing an easy migration path for customers; this, plus improved performance, were the dominant themes of the product announcement. In September 1990, the System/370 line was replaced with the System/390.

IBM Db2 Family Relational model database server

Db2 is a family of data management products, including database servers, developed by IBM. They initially supported the relational model, but were extended to support object–relational features and non-relational structures like JSON and XML. The brand name was originally styled as DB/2, then DB2 until 2017 and finally changed to its present form.

In computing, Interactive System Productivity Facility (ISPF) is a software product for many historic IBM mainframe operating systems and currently the z/OS and z/VM operating systems that run on IBM mainframes. It includes a screen editor, the user interface of which was emulated by some microcomputer editors sold commercially starting in the late 1980s, including SPF/PC.

Time Sharing Option (TSO) is an interactive time-sharing environment for IBM mainframe operating systems, including OS/360 MVT, OS/VS2 (SVS), MVS, OS/390, and z/OS.

Job Control Language (JCL) is a name for scripting languages used on IBM mainframe operating systems to instruct the system on how to run a batch job or start a subsystem.

z/OS UNIX System Services is a required, included component of z/OS. z/OS UNIX is a certified UNIX operating system implementation optimized for mainframe architecture. It is the first UNIX 95 to not be derived from the AT&T source code. Through integration with the rest of z/OS, additional Time Sharing Option (TSO) commands are available alongside the usual UNIX services, making it possible to process UNIX files using ISPF. Extensions in JCL make it possible to use these files in batch processing.

In the context of IBM mainframe computers in the S/360 line, a data set or dataset is a computer file having a record organization. Use of this term began with, e.g., DOS/360, OS/360, and is still used by their successors, including the current z/OS. Documentation for these systems historically preferred this term rather than file.

z/Architecture, initially and briefly called ESA Modal Extensions (ESAME), is IBM's 64-bit CISC instruction set architecture implemented by its mainframe computers. IBM introduced its first z/Architecture-based system, the z900, in late 2000. Later z/Architecture systems include the IBM z800, z990, z890, System z9, System z10, zEnterprise 196, zEnterprise 114, zEC12, zBC12, z13, z14 and z15.

A logical partition (LPAR) is a subset of a computer's hardware resources, virtualized as a separate computer. In effect, a physical machine can be partitioned into multiple logical partitions, each hosting a separate instance of an operating system.

IBM System z9 Line of mainframe computers

IBM System z9 is a line of IBM mainframe computers. The first models were available on September 16, 2005. The System z9 also marks the end of the previously used eServer zSeries naming convention. It was also the last mainframe computer that NASA ever used.

Teleprocessing Network Simulator (TPNS) is an IBM licensed program, first released in 1976 as a test automation tool to simulate one or many network terminal(s) to a mainframe computer system, for functional testing, regression testing, system testing, capacity management, benchmarking and stress testing. In 2002, IBM re-packaged TPNS and released Workload Simulator for z/OS and S/390 (WSim) as a successor product.

IBM System Management Facility (SMF) is a component of IBM's z/OS for mainframe computers, providing a standardised method for writing out records of activity to a file. SMF provides full "instrumentation" of all baseline activities running on that IBM mainframe operating system, including I/O, network activity, software usage, error conditions, processor utilization, etc.

OS/360 and successors Operating system for IBM S/360 and later mainframes

OS/360, officially known as IBM System/360 Operating System, is a discontinued batch processing operating system developed by IBM for their then-new System/360 mainframe computer, announced in 1964; it was influenced by the earlier IBSYS/IBJOB and Input/Output Control System (IOCS) packages for the IBM 7090/7094 and even more so by the PR155 Operating System for the IBM 1410/7010 processors. It was one of the earliest operating systems to require the computer hardware to include at least one direct access storage device.

Linux on IBM Z

Linux on IBM Z is the collective term for the Linux operating system compiled to run on IBM mainframes, especially IBM Z and IBM LinuxONE servers. Similar terms which imply the same meaning are Linux on zEnterprise, Linux on zSeries, Linux/390, Linux/390x, etc.

IBM System/390 Line of mainframe computers

The IBM System/390 is the discontinued fifth generation of the System/360 instruction set architecture. The first ESA/390 computer was the Enterprise System/9000 (ES/9000) family, which were introduced in 1990. These were followed by the 9672 CMOS System/390 mainframe family in the mid-1990s. These systems followed the IBM 3090, with over a decade of follow-ons. The ESA/390 was succeeded by the 64-bit z/Architecture in 2000.


  1. Giorgio, Anthony. "We are the IBM z/OS development team. AUA! • r/IAmA". reddit. reddit. Retrieved 19 June 2017.
  2. Vijayan, Jaikumar. "Z/OS: Users Expect Big Savings." Computerworld, 19 November 2001, Vol. 35 Issue 47, p. 40
  3. Main Page - Oss4zos
  4. IBM - z/OS Communications Server
  5. IBM: Why System z for Business Integration?
  6. IBM System z New Application License Charges
  7. IBM Z Software Pricing: Sub-Capacity
  8. "Things you should know about z/OS Encryption Readiness Technology (zERT)".
  9. "z/OS Encryption Readiness Technology (zERT)".
  10. IBM: IBM Z Common Data Provider
  11. IBM: IBM Z Common Data Provider Knowledge Center

Further reading