Mainframe Architecture
Introduction
A mainframe is a high-performance computer made for high-volume, processor-intensive computing. Mainframes were the first commercially available computers. They were produced by vendors like IBM, Unisys, Hitachi, Bull, Fujitsu, and NEC. But IBM always was the largest vendor – it still has 90% market share in the mainframe market.
Mainframes used to have no interactive user interface. Instead, they ran batch processes, using punched cards, paper tape, and magnetic tape as input, and produced printed paper as output. In the early 1970s, most mainframes got interactive user interfaces, based on terminals, simultaneously serving hundreds of users.
While the end of the mainframe is predicted for decades now, mainframes are still widely used. Today’s mainframes are still relatively large (the size of a few 19" racks), but they don’t fill-up a room anymore. They are expensive computers, mostly used for administrative processes, optimized for handling high volumes of data.
The latest IBM z13 mainframe, introduced in 2015, can host up to 10TB of memory and 141 processors, running at a 5GHz clock speed. It has enough resources to run up to 8000 virtual servers simultaneously.
Mainframes are highly reliable, typically running for years without downtime. Much redundancy is built in, enabling hardware upgrades and repairs while the mainframe is operating without downtime. Sometimes a separate system is added to the mainframe which primary job it is to continuously check the mainframe’s health. When a hardware failure is detected, automatically an IBM engineer is called, sometimes even without the systems managers knowing it!
All IBM mainframes are backwards compatible with older mainframes. For instance, the 64 bits mainframes of today can still run the 24-bit System/360 code from the early days of mainframe computing. Much effort is spent in ensuring all software continues to work without modification.
Mainframe architecture
A mainframe consists of processing units (PUs), memory, I/O channels, control units, and devices, all placed in racks (frames). The architecture of a mainframe is shown below.
The various parts of the architecture are described below.
Processing Units
In the mainframe world the term PU (Processing Unit) is used instead of the more ambiguous term CPU. A mainframe has multiple PUs, so there is no central processing unit. The total of all PUs in a mainframe is called a Central Processor Complex (CPC).
The CPC resides in its own cage inside the mainframe, and consists of one to four so-called book packages. Each book package consists of processors, memory, and I/O connections, much like x86 system boards.
Mainframes use specialized PUs (like the quad core z10 mainframe processor) instead of off-the-shelf Intel or AMD supplied CPUs.
All processors in the CPC start as equivalent processor units (PUs). Each processor is characterized during installation or at a later time, sometimes because of a specific task the processor is configured to do. Some examples of characterizations are:
Processor unit (PU) | Task |
Central processors (CP) | Central processors are the main processors of the system that can be used to run applications running on VM, z/OS, and ESA/390 operating systems. |
CP Assist for Cryptographic Function (CPACF) | CPACF assists the CPs by handling workload associated with encryption/decryption. |
Integrated Facility for Linux (IFL) | IFL assists with Linux workloads: they are regular PUs with a few specific instructions that are needed by Linux. |
Integrated Coupling Facility (ICF) | This facility executes licensed internal code to coordinate system tasks. |
System Assisted Processor (SAP) | A SAP assists the CP with workload for the I/O subsystem, for instance by translating logical channel paths to physical paths. |
IBM System z Application Assist Processors (zAAP) | Used for Java code execution |
zIIP | Processing certain database workloads |
Spares | Used to replace any CP or SAP failure |
Main Storage
Each book package in the CPC cage contains from four to eight memory cards. For example, a fully loaded z9 mainframe has four book packages that can provide up to 512 GB of memory.
The memory cards are hot swappable, which means that you can add or remove a memory card without powering down the mainframe.
Channels, ESCON and FICON
A channel provides a data and control path between I/O devices and memory.
Today’s largest mainframes have 1024 channels. Channels connect to control units, either directly or via switches. Specific slots in the I/O cages are reserved for specific types of channels, which include the following:
- Open Systems Adapter (OSA) – this adapter provides connectivity to various industry standard networking technologies, including Ethernet
- Fiber Connection (FICON) - this is the most flexible channel technology. With FICON, input/output devices can be located many kilometers from the mainframe to which they are attached.
- Enterprise Systems Connection (ESCON) - this is an earlier type of fiber-optic technology. ESCON channels can provide performance almost as fast as FICON channels, but at a shorter distance.
The FICON or ESCON switches may be connected to several mainframes, sharing the control units and I/O devices.
The channels are high speed – today’s FICON Express16S channels provide up to 320 links of 16 Gbit/s each.
Control units
A control unit is similar to an expansion card in an x86 or midrange system. It contains logic to work with a particular type of I/O device, like a printer or a tape drive.
Some control units can have multiple channel connections providing multiple paths to the control unit and its devices, increasing performance and availability.
Control units can be connected to multiple mainframes, creating shared I/O systems. Sharing devices, especially disk drives, is complicated and there are hardware and software techniques used by the operating system to control updating the same disk data at the same time from two independent systems.
Control units connect to devices, like disk drives, tape drives, and communication interfaces. Disks in mainframes are called DASD (Direct Attached Storage Device), which is comparable to a SAN (Storage Area Network) in a midrange or x86 environment.
This entry was posted on Friday 04 September 2015