|History of IBM mainframes 1952–present|
|zSeries 900, 800, 990, and 890||z/Architecture|
|zEnterprise System (z196, zEC12)|
IBM mainframes are large computer systems produced by IBM from 1952 to the present. During the 1960s and 1970s, the term mainframe computer was almost synonymous with IBM products due to their marketshare. Current mainframes in IBM's line of business computers are developments of the basic design of the IBM System/360.
First and second generation 
From 1952 into the late 1960s, IBM manufactured and marketed several large computer models, known as the IBM 700/7000 series. The first-generation 700s were based on vacuum tubes, while the later, second-generation 7000s used transistors. These machines established IBM's dominance in electronic data processing. IBM had two model categories: one (701, 704, 709, 7090, 7040) for engineering and scientific use, and one (702, 705, 7080, 7070, 7010) for commercial or data processing use. The two categories, scientific and commercial, generally used common peripherals but had completely different instruction sets, and there were incompatibilities even within each category.
IBM initially sold its computers without any software, expecting customers to write their own; programs were manually initiated, one at a time. Later, IBM provided compilers for the newly developed higher-level programming languages Fortran and COBOL. The first operating systems for IBM computers were written by IBM customers who did not wish to have their very expensive machines ($2M USD in the mid-1950s) sitting idle while operators set up jobs manually. These first operating systems were essentially scheduled work queues. It is generally thought that the first operating system used for real work was GM-NAA I/O, produced by General Motors' Research division in 1956. IBM enhanced one of GM-NAA I/O's successors, the SHARE Operating System, and provided it to customers under the name IBSYS. As software became more complex and important, the cost of supporting it on so many different designs became burdensome, and this was one of the factors which led IBM to develop System/360 and its operating systems.
The second generation (transistor-based) products were a mainstay of IBM's business and IBM continued to make them for several years after the introduction of the System/360. (Some IBM 7094s remained in service into the 1980s.)
Smaller machines 
Prior to System/360, IBM also sold computers smaller in scale that were not considered mainframes, though they were still bulky and expensive by modern standards. These included:
- IBM 650 (vacuum tube logic, decimal architecture, business and scientific)
- IBM 305 RAMAC (vacuum tube logic, first computer with disk storage; see: Early IBM disk storage)
- IBM 1400 series (business data processing; very successful and many 1400 peripherals were used with the 360s)
- IBM 1620 (decimal architecture, engineering, scientific, and education)
IBM had difficulty getting customers to upgrade from the smaller machines to the mainframes because so much software had to be rewritten. The 7010 was introduced in 1962 as a mainframe-sized 1410. The later Systems 360 and 370 could emulate the 1400 machines. A desk size machine with a different instruction set, the IBM 1130, was released concurrently with the System/360 to address the niche occupied by the 1620. It used the same EBCDIC character encoding as the 360 and was mostly programmed in Fortran, which was relatively easy to adapt to larger machines when necessary.
Midrange computer is a designation used by IBM for a class of computer systems which fall in between mainframes and microcomputers.
IBM System/360 
All that changed with the announcement of the System/360 (S/360) in April, 1964. The System/360 was a single series of compatible models for both commercial and scientific use. The number "360" suggested a "360 degree," or "all-around" computer system. System/360 incorporated features which had previously been present on only either the commercial line (such as decimal arithmetic and byte addressing) or the technical line (such as floating point arithmetic). Some of the arithmetic units and addressing features were optional on some models of the System/360. However, models were upward compatible and most were also downward compatible. The System/360 was also the first computer in wide use to include dedicated hardware provisions for the use of operating systems. Among these were supervisor and application mode programs and instructions, as well as built-in memory protection facilities. Hardware memory protection was provided to protect the operating system from the user programs (tasks) and the user tasks from each other. The new machine also had a larger address space than the older mainframes, 24 bits addressing 8-bit bytes vs. a typical 18 bits addressing 36-bit words.
The smaller models in the System/360 line (e.g. the 360/30) were intended to replace the 1400 series while providing an easier upgrade path to the larger 360s. To smooth the transition from second generation to the new line, IBM used the 360's microprogramming capability to emulate the more popular older models. Thus 360/30s with this added cost feature could run 1401 programs and the larger 360/65s could run 7094 programs. To run old programs, the 360 had to be halted and restarted in emulation mode. Many customers kept using their old software and one of the features of the later System/370 was the ability to switch to emulation mode and back under operating system control.
The System/360 later evolved into the System/370, the System/390, and the 64-bit zSeries, System z, and zEnterprise machines. System/370 introduced virtual memory capabilities in all models other than the very first System/370 models; the OS/VS1 variant of OS/360 MFT, the OS/VS2 (SVS) variant of OS/360 MVT, and the DOS/VS variant of DOS/360 were introduced to use the virtual memory capabilities, followed by MVS, which, unlike the earlier virtual-memory operating systems, ran separate programs in separate address spaces, rather than running all programs in a single virtual address space. The virtual memory capabilities also allowed the system to support virtual machines; the VM/370 hypervisor would run one or more virtual machines running either standard System/360 or System/370 operating systems or the single-user Conversational Monitor System (CMS). A time-sharing VM system could run multiple virtual machines, one per user, with each virtual machine running an instance of CMS.
Today's systems 
Processor units 
The different processors on current IBM mainframes are:
- CP, Central Processor: general-purpose processor
- IFL, Integrated Facility for Linux: dedicated to Linux OSes (optionally under z/VM)
- ICF, Integrated Coupling Facility: designed to support Parallel Sysplex operations
- SAP, System Assist Processor: designed to handle various system accounting, management, and I/O channel operations
- zAAP, System z Application Assist Processor: currently limited to run only Java and XML processing
- zIIP, System z Integrated Information Processor: dedicated to run specific workloads including DB2, XML, and IPSec
Note that the ICF and ZAAP are essentially identical to CP, but distinguished for software cost control: they are slightly restricted such they cannot be used to run arbitrary operating systems, and thus do not count in software licensing costs (which are typically based on the number of CPs). There are other supporting processors typically installed inside mainframes such as cryptographic accelerators (CryptoExpress), the OSA-Express networking processor, and FICON Express disk I/O processors.
Software to allow users to run "traditional" workloads on zIIPs and zAAPs was briefly marketed by Neon Enterprise Software as "zPrime" but was withdrawn from the market in 2011 after a lawsuit by IBM.
Operating systems 
The primary operating systems in use on current IBM mainframes include z/OS (which followed MVS and OS/390), z/VM (previously VM/CMS), z/VSE (which is in the DOS/360 lineage), z/TPF (a successor of Airlines Control Program), and Linux on System z such as SUSE Linux Enterprise Server and others. A few systems run MUSIC/SP and UTS (Mainframe UNIX). In October 2008, Sine Nomine Associates introduced OpenSolaris on System z.
Current IBM mainframes run all the major enterprise transaction processing environments and databases, including CICS, IMS, WebSphere Application Server, DB2, and Oracle. In many cases these software subsystems can run on more than one mainframe operating system.
There are software-based emulators for the System/370, System/390, and System z hardware, including FLEX-ES and the freely available Hercules emulator which runs under Linux, FreeBSD, Solaris, Mac OS X and Microsoft Windows.
See also 
- A Brief History of Linux
- IBM 7090/94 IBSYS Operating System
- Gray, G. (1999). "EXEC II". Unisys History Newsletter 1 (3).
- Chuck Boyer, The 360 Revolution
- IBM Archives: System/360 Announcement
- IBM corp. (2005). "Mainframe concepts (page 31)".
- Radding, Alan. "Bye bye zPrime on System z". DancingDinosaur. Retrieved May 5, 2012.
Further reading 
- Bashe, Charles J.; et al. (1986). IBM's Early Computers. MIT. ISBN 0-262-02225-7.
- Prasad, Nallur and Savit, Jeffrey (1994). IBM Mainframes: Architecture and Design, 2nd ed. McGraw-Hill Osborne Media. ISBN 0-07-050691-4.
- Pugh, Emerson W.; et al. (1991). IBM's 360 and Early 370 Systems. MIT. ISBN 0-262-16123-0.
|Wikimedia Commons has media related to: IBM mainframe computers|