Unix is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, development starting in the 1970s at the Bell Labs research center by Ken Thompson, Dennis Ritchie, others. Intended for use inside the Bell System, AT&T licensed Unix to outside parties in the late 1970s, leading to a variety of both academic and commercial Unix variants from vendors including University of California, Microsoft, IBM, Sun Microsystems. In the early 1990s, AT&T sold its rights in Unix to Novell, which sold its Unix business to the Santa Cruz Operation in 1995; the UNIX trademark passed to The Open Group, a neutral industry consortium, which allows the use of the mark for certified operating systems that comply with the Single UNIX Specification. As of 2014, the Unix version with the largest installed base is Apple's macOS. Unix systems are characterized by a modular design, sometimes called the "Unix philosophy"; this concept entails that the operating system provides a set of simple tools that each performs a limited, well-defined function, with a unified filesystem as the main means of communication, a shell scripting and command language to combine the tools to perform complex workflows.
Unix distinguishes itself from its predecessors as the first portable operating system: the entire operating system is written in the C programming language, thus allowing Unix to reach numerous platforms. Unix was meant to be a convenient platform for programmers developing software to be run on it and on other systems, rather than for non-programmers; the system grew larger as the operating system started spreading in academic circles, as users added their own tools to the system and shared them with colleagues. At first, Unix was not designed to be multi-tasking. Unix gained portability, multi-tasking and multi-user capabilities in a time-sharing configuration. Unix systems are characterized by various concepts: the use of plain text for storing data; these concepts are collectively known as the "Unix philosophy". Brian Kernighan and Rob Pike summarize this in The Unix Programming Environment as "the idea that the power of a system comes more from the relationships among programs than from the programs themselves".
In an era when a standard computer consisted of a hard disk for storage and a data terminal for input and output, the Unix file model worked quite well, as I/O was linear. In the 1980s, non-blocking I/O and the set of inter-process communication mechanisms were augmented with Unix domain sockets, shared memory, message queues, semaphores, network sockets were added to support communication with other hosts; as graphical user interfaces developed, the file model proved inadequate to the task of handling asynchronous events such as those generated by a mouse. By the early 1980s, users began seeing Unix as a potential universal operating system, suitable for computers of all sizes; the Unix environment and the client–server program model were essential elements in the development of the Internet and the reshaping of computing as centered in networks rather than in individual computers. Both Unix and the C programming language were developed by AT&T and distributed to government and academic institutions, which led to both being ported to a wider variety of machine families than any other operating system.
Under Unix, the operating system consists of many libraries and utilities along with the master control program, the kernel. The kernel provides services to start and stop programs, handles the file system and other common "low-level" tasks that most programs share, schedules access to avoid conflicts when programs try to access the same resource or device simultaneously. To mediate such access, the kernel has special rights, reflected in the division between user space and kernel space - although in microkernel implementations, like MINIX or Redox, functions such as network protocols may run in user space; the origins of Unix date back to the mid-1960s when the Massachusetts Institute of Technology, Bell Labs, General Electric were developing Multics, a time-sharing operating system for the GE-645 mainframe computer. Multics featured several innovations, but presented severe problems. Frustrated by the size and complexity of Multics, but not by its goals, individual researchers at Bell Labs started withdrawing from the project.
The last to leave were Ken Thompson, Dennis Ritchie, Douglas McIlroy, Joe Ossanna, who decided to reimplement their experiences in a new project of smaller scale. This new operating system was without organizational backing, without a name; the new operating system was a single-tasking system. In 1970, the group coined the name Unics for Uniplexed Information and Computing Service, as a pun on Multics, which stood for Multiplexed Information and Computer Services. Brian Kernighan takes credit for the idea, but adds that "no one can remember" the origin of the final spelling Unix. Dennis Ritchie, Doug McIlroy, Peter G. Neumann credit Kernighan; the operating system was written in assembly language, but in 1973, Version 4 Unix was rewritten in C. Version 4 Unix, still had many PDP-11 dependent codes, is not suitable for porting; the first port to other platform was made five years f
Michigan Terminal System
The Michigan Terminal System is one of the first time-sharing computer operating systems. Developed in 1967 at the University of Michigan for use on IBM S/360-67, S/370 and compatible mainframe computers, it was developed and used by a consortium of eight universities in the United States and the United Kingdom over a period of 33 years; the University of Michigan Multiprogramming Supervisor was developed by the staff of the academic computing center at the University of Michigan for operation of the IBM S/360-67, S/370 and compatible computers. The software may be described as a multiprogramming, virtual memory, time-sharing supervisor that runs multiple resident, reentrant programs. Among these programs is the Michigan Terminal System for command interpretation, execution control, file management, accounting. End-users interact with the computing resources through MTS using terminal and server oriented facilities; the name MTS refers to: The UMMPS Job Program. MTS was used on a production basis at about 13 sites in the United States, the United Kingdom, in Yugoslavia and at several more sites on a trial or benchmarking basis.
MTS was developed and maintained by a core group of eight universities included in the MTS Consortium. The University of Michigan announced in 1988 that "Reliable MTS service will be provided as long as there are users requiring it... MTS may be phased out after alternatives are able to meet users' computing requirements", it ceased operating MTS for end-users on June 30, 1996. By that time, most services had moved to client/server-based computing systems Unix for servers and various Mac, PC, Unix flavors for clients; the University of Michigan shut down its MTS system for the last time on May 30, 1997. Rensselaer Polytechnic Institute is believed to be the last site to use MTS in a production environment. RPI retired MTS in June 1999. Today, MTS still runs using IBM S/370 emulators such as Hercules, Sim390, FLEX-ES. In the mid-1960s, the University of Michigan was providing batch processing services on IBM 7090 hardware under the control of the University of Michigan Executive System, but was interested in offering interactive services using time-sharing.
At that time the work that computers could perform was limited by their small real memory capacity. When IBM introduced its System/360 family of computers in the mid-1960s, it did not provide a solution for this limitation and within IBM there were conflicting views about the importance of and need to support time-sharing. A paper titled Program and Addressing Structure in a Time-Sharing Environment by Bruce Arden, Bernard Galler, Frank Westervelt, Tom O'Brian building upon some basic ideas developed at the Massachusetts Institute of Technology was published in January 1966; the paper outlined a virtual memory architecture using dynamic address translation that could be used to implement time-sharing. After a year of negotiations and design studies, IBM agreed to make a one-of-a-kind version of its S/360-65 mainframe computer with dynamic address translation features that would support virtual memory and accommodate UM's desire to support time-sharing; the computer was dubbed the Model S/360-65M.
The "M" stood for Michigan. But IBM decided not to supply a time-sharing operating system for the machine. Meanwhile, a number of other institutions heard about the project, including General Motors, the Massachusetts Institute of Technology's Lincoln Laboratory, Princeton University, Carnegie Institute of Technology, they were all intrigued by the time-sharing idea and expressed interest in ordering the modified IBM S/360 series machines. With this demonstrated interest IBM changed the computer's model number to S/360-67 and made it a supported product. With requests for over 100 new model S/360-67s IBM realized there was a market for time-sharing, agreed to develop a new time-sharing operating system called TSS/360 for delivery at the same time as the first model S/360-67. While waiting for the Model 65M to arrive, UM Computing Center personnel were able to perform early time-sharing experiments using an IBM System/360 Model 50, funded by the ARPA CONCOMP Project; the time-sharing experiment began as a "half-page of code written out on a kitchen table" combined with a small multi-programming system, LLMPS from MIT's Lincoln Laboratory, modified and became the UM Multi-Programming Supervisor which in turn ran the MTS job program.
This earliest incarnation of MTS was intended as a throw-away system used to gain experience with the new IBM S/360 hardware and which would be discarded when IBM's TSS/360 operating system became available. Development of TSS took longer than anticipated, its delivery date was delayed, it was not yet available when the S/360-67 arrived at the Computing Center in January 1967. At this time UM had to decide whether to return the Model 67 and select another mainframe or to develop MTS as an interim system for use until TSS was ready; the decision was to continue development of MTS and the staff moved their initial development work from the Model 50 to the Model 67. TSS development was eventua
Z/OS is a 64-bit operating system for IBM mainframes, produced by IBM. It is the successor to OS/390, which in turn followed a string of MVS versions. Like OS/390, z/OS combines a number of separate, related products, some of which are still optional. Z/OS offers the attributes of modern operating systems but retains much of the functionality originating in the 1960s and each subsequent decade, still found in daily use. Z/OS was first introduced in October 2000. Z/OS supports stable mainframe systems and standards such as CICS, COBOL, IMS, DB2, RACF, SNA, IBM MQ, record-oriented data access methods, REXX, CLIST, SMP/E, JCL, TSO/E, ISPF, among others. However, z/OS supports 64-bit Java, C, C++, UNIX 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 and zFS file systems; as a result, z/OS hosts a broad range of open source software. Z/OS can communicate directly via TCP/IP, including IPv6, includes standard HTTP servers along with other common services such as FTP, NFS, CIFS/SMB.
Another central design philosophy is support for high quality of service within a single operating system instance, although z/OS has built-in support for Parallel Sysplex clustering. Z/OS has a Workload Manager 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 offer two additional levels of virtualization: LPARs and z/VM; these new functions within the hardware, z/OS, 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. 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.
IBM support for z/OS 1.5 ended on March 31, 2007. Now z/OS only runs in 64-bit mode. Application programmers can still use any addressing mode: all applications, regardless of their addressing mode, can coexist without modification, 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 as well as via IBM Z New Application License Charges and "IBM Z Solution Edition," two lower priced offerings aimed at supporting newer applications. U. S. standard commercial z/OS pricing starts at about $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 and Entry Workload License Charges 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 available for most IBM software products running on z/OS, 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, must have eliminated OS/390 from the system, must e-mail IBM monthly sub-capacity reports. Sub-capacity billing reduces software charges for most IBM mainframe customers. Advanced Workload License Charges is the successor to VWLC on mainframe models starting with the zEnterprise 196, EAWLC is an option on zEnterprise 114 models. AWLC and EAWLC offer further sub-capacity discounts. Within each address space, z/OS permits the placement of only data, not code, above the 2 GB "bar". Z/OS enforces this distinction 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 few z/OS services may be invoked from above the "bar". Memory is obtained as "Large Memory Objects" in multiples of 1 MB. 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. Generation Data Group is a special type of file used by IBM's mainframe operating system z/OS; the actual GDG is a description of how many generations of a file are to be kept and how old the oldest generation must be at least before it is deleted. Whenever a new generation is created, the system checks whether one or more obso
AIX is a series of proprietary Unix operating systems developed and sold by IBM for several of its computer platforms. Released for the IBM RT PC RISC workstation, AIX now supports or has supported a wide variety of hardware platforms, including the IBM RS/6000 series and POWER and PowerPC-based systems, IBM System i, System/370 mainframes, PS/2 personal computers, the Apple Network Server. AIX is based on UNIX System V with 4.3BSD-compatible extensions. It is one of six commercial operating systems that have versions certified to The Open Group's UNIX 03 standard; the AIX family of operating systems debuted in 1986, became the standard operating system for the RS/6000 series on its launch in 1990, is still developed by IBM. It is supported on IBM Power Systems alongside IBM i and Linux. AIX was the first operating system to have a journaling file system, IBM has continuously enhanced the software with features such as processor and network virtualization, dynamic hardware resource allocation, reliability engineering ported from its mainframe designs.
Unix started life at AT&T's Bell Labs research center in the early 1970s, running on DEC minicomputers. By 1976, the operating system was in use at various academic institutions, including Princeton, where Tom Lyon and others ported it to the S/370, to run as a guest OS under VM/370; this port would grow out to become UTS, a mainframe Unix offering by IBM's competitor Amdahl Corporation. IBM's own involvement in Unix can be dated to 1979, when it assisted Bell Labs in doing its own Unix port to the 370. In the process, IBM made modifications to the TSS/370 hypervisor to better support Unix, it took until 1985 for IBM to offer its own Unix on the S/370 platform, IX/370, developed by Interactive Systems Corporation and intended by IBM to compete with Amdahl UTS. The operating system offered special facilities for interoperating with PC/IX, Interactive/IBM's version of Unix for IBM PC compatible hardware, was licensed at $10,000 per sixteen concurrent users. AIX Version 1, introduced in 1986 for the IBM RT PC workstation, was based on UNIX System V Releases 1 and 2.
In developing AIX, IBM and Interactive Systems Corporation incorporated source code from 4.2 and 4.3 BSD UNIX. Among other variants, IBM produced AIX Version 3, based on System V Release 3, for their POWER-based RS/6000 platform. Since 1990, AIX has served as the primary operating system for the RS/6000 series. AIX Version 4, introduced in 1994, added symmetric multiprocessing with the introduction of the first RS/6000 SMP servers and continued to evolve through the 1990s, culminating with AIX 4.3.3 in 1999. Version 4.1, in a modified form, was the standard operating system for the Apple Network Server systems sold by Apple Computer to complement the Macintosh line. In the late 1990s, under Project Monterey, IBM and the Santa Cruz Operation planned to integrate AIX and UnixWare into a single 32-bit/64-bit multiplatform UNIX with particular emphasis on running on Intel IA-64 architecture CPUs. A beta test version of AIX 5L for IA-64 systems was released, but according to documents released in the SCO v. IBM lawsuit, less than forty licenses for the finished Monterey Unix were sold before the project was terminated in 2002.
In 2003, the SCO Group alleged that IBM had misappropriated licensed source code from UNIX System V Release 4 for incorporation into AIX. IBM maintains that their license was irrevocable, continued to sell and support the product until the litigation was adjudicated. AIX was a component of the 2003 SCO v. IBM lawsuit, in which the SCO Group filed a lawsuit against IBM, alleging IBM contributed SCO's intellectual property to the Linux codebase; the SCO Group, who argued they were the rightful owners of the copyrights covering the Unix operating system, attempted to revoke IBM's license to sell or distribute the AIX operating system. In March 2010, a jury returned a verdict finding that Novell, not the SCO Group, owns the rights to Unix. AIX 6 was announced in May 2007, it ran as an open beta from June 2007 until the general availability of AIX 6.1 on November 9, 2007. Major new features in AIX 6.1 included full role-based access control, workload partitions, enhanced security, Live Partition Mobility on the POWER6 hardware.
AIX 7.1 was announced in April 2010, an open beta ran until general availability of AIX 7.1 in September 2010. Several new features, including better scalability, enhanced clustering and management capabilities were added. AIX 7.1 includes a new built-in clustering capability called Cluster Aware AIX. AIX is able to organize multiple LPARs through the multipath communications channel to neighboring CPUs, enabling high-speed communication between processors; this enables multi-terabyte memory address range and page table access to support global petabyte shared memory space for AIX POWER7 clusters so that software developers can program a cluster as if it were a single system, without using message passing. AIX administrators can use this new capability to cluster a pool of AIX nodes. By default, AIX V7.1 pins kernel memory and includes support to allow applications to pin their kernel stack. Pinning kernel memory and the kernel
The IBM System/370 was a model range of IBM mainframe computers announced on June 30, 1970 as the successors to the System/360 family. The series maintained backward compatibility with the S/360, allowing an easy migration path for customers. In September 1990, the System/370 line was replaced with the System/390; the original System/370 line was announced on June 30, 1970 with first customer shipment of the Models 155 and 165 planned for February 1971 and April 1971 respectively. System/370 underwent several architectural improvements during its 20-year lifetime; the 155 first shipped in January 1971. The first System/370 machines, the Model 155 and the Model 165, incorporated only a small number of changes to the System/360 architecture; these changes included: 13 new instructions, among which wereMOVE LONG. These models did not include support for virtual storage. All models of the System/370 used IBM's form of monolithic integrated circuits called MST making them third generation computers.
MST provided System/370 with four to eight times the circuit density and over ten times the reliability when compared to the previous second generation SLT technology of the System/360. On September 23, 1970, IBM announced the Model 145, a third model of the System/370, which featured monolithic main memory and was scheduled for delivery in the late summer of 1971. All subsequent S/370 models used such memory. In 1972, a significant change was made when support for virtual storage was introduced with IBM's "System/370 Advanced Function" announcement. IBM had chosen to exclude virtual storage from the S/370 line; the August 2, 1972 announcement included: address relocation hardware on all S/370s except the original models 155 and 165 the new S/370 models 158 and 168, with address relocation hardware four new operating systems: DOS/VS, OS/VS1, OS/VS2 Release 1, termed SVS, Release 2, termed MVS and planned to be available 20 months and VM/370 – the re-implemented CP/CMS Virtual storage had in fact been delivered on S/370 hardware before this announcement: In June 1971, on the S/370-145.
The S/370-145 had an associative memory used by the microcode for the DOS compatibility feature from its first shipments in June 1971. Although IBM famously chose to exclude virtual storage from the S/370 announcement, that decision was being reconsidered during the completion of the 145 engineering because of virtual memory experience at CSC and elsewhere; the 145 microcode architecture simplified the addition of virtual storage, allowing this capability to be present in early 145s without the extensive hardware modifications needed in other models. However, IBM did not document the 145's virtual storage capability, nor annotate the relevant bits in the control registers and PSW that were displayed on the operator control panel when selected using the roller switches; the Reference and Change bits of the Storage-protection Keys, were labeled on the rollers, a dead giveaway to anyone who had worked with the earlier 360/67. Existing S/370-145 customers were happy to learn that they did not have to purchase a hardware upgrade in order to run DOS/VS or OS/VS1.
Shortly after the August 2, 1972 announcement, DAT box upgrades for the S/370-155 and S/370-165 were announced, but were available only for purchase by customers who owned a Model 155 or 165. After installation, these models were known as the S/370-155-II and S/370-165-II. IBM wanted customers to upgrade their 155 and 165 systems to the sold S/370-158 and -168; these upgrades were expensive and had long ship date lead times after being ordered by a customer. This led to the original S/370-155 and S/370-165 models being described as "boat anchors"; the upgrade, required to run OS/VS1 or OS/VS2, was not cost effective for most customers by the time IBM could deliver and install it, so many customers were stuck with these machines running MVT until their lease ended. It was not unusual for this to be another four, five or six years for the more unfortunate ones, turned out to be a significant factor in the slow adoption of OS/VS2 MVS, not only by customers in general, but for many internal IBM sites as well.
Architectural changes involved expansions in memory – both physical memory and virtual address space – to enable larger workloads and me
IBM mainframes are large computer systems produced by IBM since 1952. During the 1960s and 1970s, IBM dominated the large computer market. Current mainframe computer in IBM's line of business computers are developments of the basic design of the IBM System/360. 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 second-generation 7000s used transistors. These machines established IBM's dominance in electronic data processing. IBM had two model categories: one for engineering and scientific use, one for commercial or data processing use; the two categories and commercial used common peripherals but had different instruction sets, there were incompatibilities within each category. IBM sold its computers without any software, expecting customers to write their own. IBM provided compilers for the newly developed higher-level programming languages Fortran, COMTRAN and COBOL.
The first operating systems for IBM computers were written by IBM customers who did not wish to have their expensive machines sitting idle while operators set up jobs manually. These first operating systems were scheduled work queues, it is 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, 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, this was one of the factors which led IBM to develop System/360 and its operating systems. The second generation products were a mainstay of IBM's business and IBM continued to make them for several years after the introduction of the System/360. Prior to System/360, IBM sold computers smaller in scale that were not considered mainframes, though they were still bulky and expensive by modern standards.
These included: IBM 650 IBM 305 RAMAC IBM 1400 series IBM 1620 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 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 programmed in Fortran, 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. All that changed with the announcement of the System/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, present on only either the commercial line or the engineering and scientific line.
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 downward compatible; the System/360 was 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 and user tasks from each other; the new machine 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 were intended to replace the 1400 series while providing an easier upgrade path to the larger 360s. To smooth the transition from the 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 restarted in emulation mode. Many customers kept using their old software and one of the features of the System/370 was the ability to switch to emulation mode and back under operating system control. Operating systems for the System/360 family included OS/360, BOS/360, TOS/360, DOS/360; the System/360 evolved into the System/370, the System/390, the 64-bit zSeries, System z, zEnterprise machines. System/370 introduced virtual memory capabilities in all models other than the first System/370 models.
Linux on z Systems
Linux on IBM Z is the collective term for the Linux operating system compiled to run on IBM mainframes 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; the terms zLinux or z/Linux are sometimes used, but these terms are discouraged by IBM as they create the implication of an IBM-offered or IBM-distributed version of Linux, incorrect. Linux on IBM Z originated as two separate efforts to port Linux to IBM's largest servers; the first effort, the "Bigfoot" project, developed by Linas Vepstas in late 1998 through early 1999, was an independent distribution and has since been abandoned. IBM published a collection of patches and additions to the Linux 2.2.13 kernel on December 18, 1999, to start today's mainline Linux on Z. Formal product announcements followed in 2000, including the Integrated Facility for Linux engines. Think Blue Linux was an early mainframe distribution consisting of Red Hat packages added to the IBM kernel.
Commercial Linux distributors introduced mainframe editions quickly after the initial kernel work. At the start of IBM's involvement, Linux patches for IBM Z included some object code only modules, without source code. Soon after IBM replaced the OCO modules with open source modules. Linux on z is free software under the GNU General Public License. According to IBM, by May, 2006, over 1,700 customers were running Linux on their mainframes. Virtualization is required by default on IBM Z. First layer virtualization is provided by the Processor Resource and System Manager to deploy one or more Logical Partitions; each LPAR supports a variety of operating systems including Linux on IBM Z. A hypervisor called z/VM can be run as the second layer virtualization in LPARs to create as many virtual machines as there are resources assigned to the LPARs to support them. KVM on z is another hypervisor option; when Linux applications in an LPAR access data and applications in other LPARs such as CICS, IBM DB2, IMS, other mainframe subsystems, running on the same physical mainframe, they can utilize HiperSockets – fast, memory-only TCP/IP connections.
As compared to TCP/IP over standard network interface cards, HiperSockets can improve end-user responsiveness and reliability. With the zEC12, zBC12, models, the HiperSocket concept is extended beyond the physical machine boundary via an RDMA over Converged Ethernet adapter to facilitate a secure and high speed inter-system communication. Applications in LPAR A in system A can thus use HiperSockets to communicate with applications in LPAR B in system B to ensure the security and performance attributes. Beginning with Linux kernel version 4.1 released in early 2015, Linux on z is only available as a 64-bit operating system compatible with z/Architecture mainframes. Linux on z was available as a 31-bit operating system compatible with older model mainframes introduced prior to 2000's z900 model. However, the newer 64-bit Linux kernel and 64-bit Linux on z distributions are still backward compatible with applications compiled for 31-bit Linux on z; the Linux kernel architecture designations were "s390" and "s390x" to distinguish between the 31-bit and 64-bit Linux on z kernels but "s390" now refers to the one Linux on z kernel architecture.
Linux runs on general purpose mainframe CPs as well as IFLs. IFLs are mainframe processors dedicated to running Linux, either natively or under a hypervisor. Microcode restricts IFLs from running "traditional" workloads, such as z/OS, but they are physically identical to other z System processors. IFLs are less expensive to acquire from IBM than CPs. Linux on z gives the flexibility of running Linux with the advantages of fault-tolerant mainframe hardware capable of over 90,000 I/O operations per second and with a mean time between failure measured in decades. Using virtualization, numerous smaller servers can be combined onto one mainframe, gaining some benefits of centralization and cost reduction, while still allowing specialized servers. Instead of paravirtualization, IBM mainframes use full virtualization, which permits workload density far greater than paravirtualization does. Combining full virtualization of the hardware plus lightweight Virtual Machine containers that run Linux in isolation result in a platform that supports more virtual servers than any other in a single footprint, which can lower operating costs.
Additional savings can be seen from reduced need for floor space, cooling, networking hardware, the other infrastructure needed to support a data center. IBM mainframes allow transparent use of redundant processor execution steps and integrity checking, important for critical applications in certain industries such as banking.. Mainframes allow hot-swapping of hardware, such as processors and memory. IBM Z provides fault tolerance for all key components, including processors, memory, I/O Interconnect, power supply, channel