This article contains content that is written like an advertisement. (April 2020) (Learn how and when to remove this template message)
|Written in||primarily PL/X, HLASM, and C/C++|
|Source model||Mostly[NB 1] closed source|
|Initial release||March 30, 2001(V1R1, announced October, 2000)|
|Latest release||Version 2.4 (V2R4) / September 30, 2019|
|Marketing target||Enterprise / Mainframes|
|Available in||English and other languages|
|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|
|History of IBM mainframe operating systems|
z/OS is a 64-bit operating system for IBM mainframes, introduced by IBM in October 2000. It derives from and is the successor to OS/390, which in turn followed a string of MVS versions.[NB 2] 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.
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 3] and zFS file systems. These compatibilities make z/OS support a range of commercial and open source software. z/OS can communicate directly via TCP/IP, including IPv6, 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 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"). 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. 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.
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:
- Unshared – where only the creating address space can access the memory.
- Shared – where the creating address space can give access to specific other address spaces.
- Common – where all address spaces can access the memory. (This type was introduced in z/OS Release 10.)
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.
- zERT discovery
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. 
- zERT aggregation
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.
- IBM zERT Network Analyzer
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.
(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:
//STEP1 EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * DEFINE GDG (NAME('DB2.FULLCOPY.DSNDB04.TSTEST') LIMIT(5) SCRATCH FOR(35)) /*
Delete a standard GDG:
//STEP3 EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * DELETE DB2.FULLCOPY.DSNDB04.TSTEST GDG FORCE /*
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.
Operational data types
IBM Z Common Data Provider collects both structured and unstructured data, including the following types of operational data :
- 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
IBM supports z/OS release coexistence and fallback on an "N+2" basis. For example, IBM customers running Release 9 can upgrade directly to Release 11 or Release 10, and both releases can operate concurrently within the same Sysplex (cluster) and without conflict using the same datasets, configurations, security profiles, etc. (coexistence), as long as so-called "toleration maintenance" is installed in the older release. If there is a problem with Release 11, the customer can return to Release 9 without experiencing dataset, configuration, or security profile compatibility problems (fallback) until ready to try moving forward again. z/OS customers using Parallel Sysplex (clustering) can operate N+2 releases (e.g. Release 9 and Release 11, or Release 9 and Release 10) in mixed release configurations, in production, as long as required to complete release upgrades. Supported release mixing within a cluster is one of the key strategies of z/OS for avoiding service outages.
IBM's standard support period for each z/OS release is three years. Most z/OS customers take advantage of the N+2 support model, and skip every other release. Thus most z/OS customers are either "odd" or "even".
IBM releases individual small enhancements and corrections. IBM does not use the term "patch" in z/OS; instead they use the term "PTF" which stands for "Product Temporary Fix" or "Program Temporary Fix", depending on the date. A PTF may include replacements and updates for multiple z/OS elements. IBM labels critical PTFs as "HIPER" (High Impact PERvasive). IBM also rolls up multiple PTFs into a Recommended Service Update (RSU). RSUs are released periodically (in the range of every one to three months) and undergo additional testing. Although z/OS customers vary in their maintenance practices, IBM encourages every z/OS customer to adopt a reasonable preventive maintenance strategy, to avoid known problems before they might occur.
- Fujitsu MSP
- Hitachi VOS3
- Intelligent Resource Director
- Linux on IBM Z for a mainframe version of a popular operating system
- Parallel Sysplex
- Resource Measurement Facility
- WebSphere Application Server
- Workload Manager
- zAAP, a specialty processor dedicated to particular z/OS workloads
- zIIP, another specialty processor dedicated to particular z/OS workloads
- z/VSE for another mainframe operating system
- IBM is legally required to provide source code for programs licensed under, e.g., GPL; IBM provides some proprietary source code to licensees as well.
- 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
- Not to be confused with the Macintosh HFS
- Giorgio, Anthony. "We are the IBM z/OS development team. AUA! • r/IAmA". reddit. reddit. Retrieved 19 June 2017.
- Vijayan, Jaikumar. "Z/OS: Users Expect Big Savings." Computerworld, 19 November 2001, Vol. 35 Issue 47, p. 40
- Main Page - Oss4zos
- IBM - z/OS Communications Server
- IBM: Why System z for Business Integration?
- IBM System z New Application License Charges
- IBM Z Software Pricing: Sub-Capacity
- "Things you should know about z/OS Encryption Readiness Technology (zERT)".
- "z/OS Encryption Readiness Technology (zERT)".
- IBM: IBM Z Common Data Provider
- IBM: IBM Z Common Data Provider Knowledge Center
- IBM: z/OS fallback, coexistence, and migration options
- IBM z/OS Consolidated Service Test and the RSU
- "IBM z/OS V2.2". IBM, Offering Catalog, Announcement Letters. IBM. Retrieved November 11, 2017.
- "IBM z/OS V2.3". IBM Offering Catalog. IBM. Retrieved October 30, 2017.
- "IBM z/OS V2.4". IBM Offering Catalog. IBM. Retrieved October 5, 2019.