IBM System/360 Model 67

Last updated

IBM System/360 Model 67
IBM Logo 1967-1972.svg
IBM360-67AtUmichWithMikeAlexander.jpg
IBM System/360 Model 67-2 (duplex) at the University of Michigan, c. 1969
ManufacturerInternational Business Machines Corporation (IBM)
Product family System/360
Release dateAugust 16, 1965 (1965-08-16)
Memory512 KB–1 MB Core
Left side, 2167 configuration console for the IBM/System 360 Model 67-2 (duplex) at the University of Michigan, c. 1969 IBM-S360-67ConfigurationConsoleCloseup.jpg
Left side, 2167 configuration console for the IBM/System 360 Model 67-2 (duplex) at the University of Michigan, c. 1969

The IBM System/360 Model 67 (S/360-67) was an important IBM mainframe model in the late 1960s. [1] Unlike the rest of the S/360 series, it included features to facilitate time-sharing applications, notably a Dynamic Address Translation unit, the "DAT box", to support virtual memory, 32-bit addressing and the 2846 Channel Controller to allow sharing channels between processors. The S/360-67 was otherwise compatible with the rest of the S/360 series.

Contents

Origins

The S/360-67 was intended to satisfy the needs of key time-sharing customers, notably MIT (where Project MAC had become a notorious IBM sales failure), the University of Michigan, General Motors, Bell Labs, Princeton University, the Carnegie Institute of Technology (later Carnegie Mellon University), [2] and the Naval Postgraduate School. [3]

In the mid-1960s a number of organizations were interested in offering interactive computing services using time-sharing. [4] At that time the work that computers could perform was limited by their lack of real memory storage 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 time-sharing and the need to support it.

A paper titled Program and Addressing Structure in a Time-Sharing Environment by Bruce Arden, Bernard Galler, Frank Westervelt (all associate directors at the University of Michigan's academic Computing Center), and Tom O'Brian building upon some basic ideas developed at the Massachusetts Institute of Technology (MIT) was published in January 1966. [5] The paper outlined a virtual memory architecture using dynamic address translation (DAT) 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 for the University of Michigan. The S/360-65M [4] would include dynamic address translation (DAT) features that would support virtual memory and allow support for time-sharing. Initially IBM decided not to supply a time-sharing operating system for the new machine.

As other organizations heard about the project they were 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. When IBM realized there was a market for time-sharing, it agreed to develop a new time-sharing operating system called IBM Time Sharing System (TSS/360) for delivery at roughly the same time as the first model S/360-67.

The first S/360-67 was shipped in May 1966. The S/360-67 was withdrawn on March 15, 1977. [6]

Before the announcement of the Model 67, IBM had announced models 64 and 66, DAT versions of its 60 and 62 models, but they were almost immediately replaced by the 67 at the same time that the 60 and 62 were replaced by the 65. [7]

Announcement

IBM announced the S/360-67 in its August 16, 1965 "blue letters" (a standard mechanism used by IBM to make product announcements). IBM stated that: [8]

Virtual memory

The S/360-67 design added a component for implementing virtual memory, the "DAT box" (Dynamic Address Translation box). DAT on the 360/67 was based on the architecture outlined in a 1966 JACM paper by Arden, Galler, Westervelt, and O'Brien [5] and included both segment and page tables. The Model 67's virtual memory support was very similar to the virtual memory support that eventually became standard on the entire System/370 line.

The S/360-67 provided a 24- or 32-bit address space [1] unlike the strictly 24-bit address space of other S/360 and early S/370 systems, and the 31-bit address space of S/370-XA available on later S/370s. The S/360-67 virtual address space was divided into pages (of 4096 bytes) [1] grouped into segments (of 1 million bytes); pages were dynamically mapped onto the processor's real memory. These S/360-67 features plus reference and change bits as part of the storage key enabled operating systems to implement demand paging: referencing a page that was not in memory caused a page fault, which in turn could be intercepted and processed by an operating system interrupt handler.

The S/360-67's virtual memory system was capable of meeting three distinct goals:

The first goal removed (for decades, at least) a crushing limitation of earlier machines: running out of physical storage. The second enabled substantial improvements in security and reliability. The third enabled the implementation of true virtual machines. Contemporary documents make it clear that full hardware virtualization and virtual machines were not original design goals for the S/360-67.

Features

S/360 Extended PSW [9]

spare24/32
Bit
Mode
Tran
Ctrl
I/O
Mask
Ext.
Mask
KeyAMWPILCCCProgram
Mask
spare
034567811121314151617181920232431

Instruction Address
323663
S/360 Extended PSW abbreviations
BitsFieldMeaning
0-3Spare (must be 0)
424/32-bit Address mode
5Translation Control
6IOI/O Mask (Summary)
7EXExternal Mask (Summary)
8-11KeyProtection Key
12AASCII
13MMachine-check mask
14WWait state
15PProblem state
16-17ILCInstruction-Length Code [10]
18-19CCCondition Code
20-23PM
Program Mask
BitMeaning
20Fixed-point overflow
21Decimal overflow
22Exponent underflow
23Significance
24-31Spare
32-63IAInstruction Address

The S/360-67 included the following extensions in addition to the standard and optional features available on all S/360 systems: [1]

The S/360-67 operated with a basic internal cycle time of 200 nanoseconds and a basic 750 nanosecond magnetic core storage cycle, the same as the S/360-65. [1] The 200 ns cycle time put the S/360-67 in the middle of the S/360 line, between the Model 30 at the low end and the Model 195 at the high end. From 1 to 8 bytes (8 data bits and 1 parity bit per byte) could be read or written to processor storage in a single cycle. A 60-bit parallel adder facilitated handling of long fractions in floating-point operations. An 8-bit serial adder enabled simultaneous execution of floating point exponent arithmetic, and also handled decimal arithmetic and variable field length (VFL) instructions.

New components

Four new components were part of the S/360-67:

These components, together with the 2365 Processor Storage Model 2, 2860 Selector Channel, 2870 Multiplexer Channel, and other System/360 control units and devices were available for use with the S/360-67.

Note that while Carnegie Tech had a 360/67 with an IBM 2361 LCS, that option was not listed in the price book and may not have worked in a duplex configuration.

Basic configurations

Three basic configurations were available for the IBM System/360 model 67:

A half-duplex system could be upgraded in the field to a duplex system by adding one IBM 2067-2 processor and the third IBM 2365-12 Processor Storage, unless the half-duplex system already had three or more. The half-duplex and duplex configurations were called the IBM System/360 model 67–2.

Operating systems

When the S/360-67 was announced in August 1965, IBM also announced TSS/360, a time-sharing operating system project that was canceled in 1971 (having also been canceled in 1968, but reprieved in 1969). IBM subsequently modified TSS/360 and offered the TSS/370 PRPQ [11] for three releases before cancelling it. IBM's failure to deliver TSS/360 as promised opened the door for others to develop operating systems that would use the unique features of the S/360-67

MTS, the Michigan Terminal System, was the time-sharing operating system developed at the University of Michigan and first used on the Model 67 in January 1967. Virtual memory support was added to MTS in October 1967. Multi-processor support for a duplex S/360-67 was added in October 1968. [12]

CP/CMS was the first virtual machine operating system. Developed at IBM's Cambridge Scientific Center (CSC) near MIT. CP/CMS was essentially an unsupported research system, built away from IBM's mainstream product organizations, with active involvement of outside researchers. Over time it evolved into a fully supported IBM operating system (VM/370 and today's z/VM). VP/CSS, based upon CP/CMS, was developed by National CSS to provide commercial time-sharing services.

Legacy

The S/360-67 had an important legacy. After the failure of TSS/360, IBM was surprised by the blossoming of a time-sharing community on the S/360-67 platform (CP/CMS, MTS, MUSIC). A large number of commercial, academic, and service bureau sites installed the system. By taking advantage of IBM's lukewarm support for time-sharing, and by sharing information and resources (including source code modifications), they built and supported a generation of time-sharing centers.

The unique features of the S/360-67 were initially not carried into IBM's next product series, the System/370, although the 370/145 had an associative memory that appeared more useful for paging than for its ostensible purpose. [13] This was largely fallout from a bitter and highly visible political battle within IBM over the merits of time-sharing versus batch processing. Initially at least, time-sharing lost.

However, IBM faced increasing customer demand for time-sharing and virtual memory capabilities. IBM also could not ignore the large number of S/360-67 time-sharing installations including the new industry of time-sharing vendors, such as National CSS [14] [15] and Interactive Data Corporation (IDC), [16] that were quickly achieving commercial success.

In 1972, IBM added virtual memory features to the S/370 series, a move seen by many as a vindication of work done on the S/360-67 project; the microcode in the 370/145 was updated to use the associative memory for virtual address translation. [17] The survival and success of IBM's VM family, and of virtualization technology in general, also owe much to the S/360-67.

In 2010, in the technical description of its latest mainframe, the z196, IBM stated that its software virtualization started with the System/360 model 67. [18]

See also

Further reading

Related Research Articles

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

<span class="mw-page-title-main">MVS</span> Operating system for IBM mainframes

Multiple Virtual Storage, more commonly called MVS, is the most commonly used operating system on the System/370, System/390 and IBM Z 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.

<span class="mw-page-title-main">IBM System/360</span> IBM mainframe computer family (1964–1977)

The IBM System/360 (S/360) is a family of mainframe computer systems that was announced by IBM on April 7, 1964, and delivered between 1965 and 1978. It was the first family of computers designed to cover both commercial and scientific applications and a complete range of applications from small to large. The design distinguished between architecture and implementation, allowing IBM to release a suite of compatible designs at different prices. All but the only partially compatible Model 44 and the most expensive systems use microcode to implement the instruction set, featuring 8-bit byte addressing and binary, decimal and hexadecimal floating-point calculations.

<span class="mw-page-title-main">Virtual memory</span> Computer memory management technique

In computing, virtual memory, or virtual storage, is a memory management technique that provides an "idealized abstraction of the storage resources that are actually available on a given machine" which "creates the illusion to users of a very large (main) memory".

<span class="mw-page-title-main">IBM System/370</span> 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.

<span class="mw-page-title-main">VM (operating system)</span> Family of IBM operating systems

VM is a family of IBM virtual machine operating systems used on IBM mainframes System/370, System/390, zSeries, System z and compatible systems, including the Hercules emulator for personal computers.

<span class="mw-page-title-main">CP-67</span> IBM operating system component

CP-67 is a hypervisor, or Virtual Machine Monitor, from IBM for its System/360 Model 67 computer.

In computing, channel I/O is a high-performance input/output (I/O) architecture that is implemented in various forms on a number of computer architectures, especially on mainframe computers. In the past, channels were generally implemented with custom devices, variously named channel, I/O processor, I/O controller, I/O synchronizer, or DMA controller.

<span class="mw-page-title-main">IBM 3705 Communications Controller</span>

The IBM 3705 Communications Controller is a simple computer which attaches to an IBM System/360 or System/370. Its purpose is to connect communication lines to the mainframe channel. It was a first communications controller of the popular IBM 37xx series. It was announced in March 1972. Designed for semiconductor memory which was not ready at the time of announcement, the 3705-I had to use 1.2 microsecond core storage; the later 3705-II uses 1.0 microsecond SRAM. Solid Logic Technology components, similar to those in S/370, were used.

Since the rise of the personal computer in the 1980s, IBM and other vendors have created PC-based IBM-compatible mainframes which are compatible with the larger IBM mainframe computers. For a period of time PC-based mainframe-compatible systems had a lower price and did not require as much electricity or floor space. However, they sacrificed performance and were not as dependable as mainframe-class hardware. These products have been popular with mainframe developers, in education and training settings, for very small companies with non-critical processing, and in certain disaster relief roles.

<span class="mw-page-title-main">TSS (operating system)</span> 1960s era timesharing operating system for IBM mainframes

The IBM Time Sharing System TSS/360 is a discontinued early time-sharing operating system designed exclusively for a special model of the System/360 line of mainframes, the Model 67. Made available on a trial basis to a limited set of customers in 1967, it was never officially released as a supported product by IBM. TSS pioneered a number of novel features, some of which later appeared in more popular systems such as MVS. TSS was migrated to System/370 and 303x systems, but despite its many advances and novel capabilities, TSS failed to meet expectations and was eventually canceled. TSS/370 was used as the basis for a port of UNIX to the IBM mainframe. TSS/360 also inspired the development of the TSS/8 operating system.

This article covers the History of CP/CMS — the historical context in which the IBM time-sharing virtual machine operating system was built.

<span class="mw-page-title-main">RCA Spectra 70</span>

The RCA Spectra 70 was a line of electronic data processing (EDP) equipment manufactured by the Radio Corporation of America’s computer division beginning in April 1965. The Spectra 70 line included several CPU models, various configurations of core memory, mass-storage devices, terminal equipment, and a variety of specialized interface equipment.

The history of IBM mainframe operating systems is significant within the history of mainframe operating systems, because of IBM's long-standing position as the world's largest hardware supplier of mainframe computers. IBM mainframes run operating systems supplied by IBM and by third parties.

<span class="mw-page-title-main">OS/360 and successors</span> 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.

The IBM 2365 Processor Storage is a magnetic-core memory storage unit that is a component of the IBM System/360 models 65, 67, 75 and 85 computers, which were released between 1965 and 1968.

The IBM System/360 architecture is the model independent architecture for the entire S/360 line of mainframe computers, including but not limited to the instruction set architecture. The elements of the architecture are documented in the IBM System/360 Principles of Operation and the IBM System/360 I/O Interface Channel to Control Unit Original Equipment Manufacturers' Information manuals.

<span class="mw-page-title-main">IBM System/370 Model 155</span>

The IBM System/370 Model 155 were jointly announced Jun 30, 1970 as "designed for ... the Seventies." That same day IBM announced the 370/195. They were the first three models of the IBM System/370 line of computers.

<span class="mw-page-title-main">IBM System/370 Model 145</span>

The IBM System/370 Model 145 was announced September 23, 1970, three months after the 155 and 165 models. It was the fourth member of the IBM System/370 line of computers, and was the first IBM computer to use semiconductor memory for its main memory instead of magnetic core memory. It was described as being five times faster than the IBM System/360 Model 40. First shipments were scheduled for late summer of 1971.

<span class="mw-page-title-main">IBM 303X</span>

The IBM 303X is a discontinued line of mainframe computers, the first model of which, the IBM 3033 Processor, nicknamed "The Big One", was introduced March 25, 1977.

References

  1. 1 2 3 4 5 6 IBM System/360 Model 67 Functional Characteristics, Third Edition (February 1972), IBM publication GA27-2719-2
  2. The IBM 360/67 and CP/CMS, Tom Van Vleck, 1995, 1997, 2005, 2009
  3. A SIMULATION STUDY OF THE TIME-SHARING COMPUTER SYSTEM AT THE NAVAL-POSTGRADUATE SCHOOL, Ronald Maxwell Goodwin and Leo Michael Pivonka, 1969
  4. 1 2 Susan Topol (May 13, 1996). "A History of MTS30 Years of Computing Service". Information Technology Digest. University of Michigan. 5 (5). Archived from the original on May 1, 2013.
  5. 1 2 B. W. Arden; B. A. Galler; T. C. O'Brien; F. H. Westervelt (January 1966). "Program and Addressing Structure in a Time-Sharing Environment". Journal of the ACM . 13 (1): 1–16. doi: 10.1145/321312.321313 . S2CID   9302487.
  6. "System/360 Dates and characteristics" at IBM Archives > Exhibits > IBM Mainframes > Mainframes reference room > Mainframes basic information sources
  7. "System/360 Time Sharing Computers" (PDF). DIGITAL COMPUTER NEWSLETTER. Vol. 17, no. 3. Office of Naval Research, Mathematical Sciences Division. July 1965. pp. 5–6. Archived from the original on October 7, 2012.
  8. Varian, op. cit., p. 17 (Note 54) S/360-67 announcement
  9. func67, pp. 15–16, Instruction Fetching and Execution.
  10. S360, p. 156, Instruction-Length Code.
  11. TSS/370 User Data (PDF) (Fourth ed.). IBM. July 1978. GX28-6400-3.
  12. Pugh, op. cit., p. 364 MTS on dual processor S/360-67 in 1968
  13. IBM Maintenance Library 3145 Processing Unit Theory - Maintenance (PDF) (Second ed.). IBM. pp. 2-117–2-129. SY24-3581-1.
  14. "A technical history of National CSS", Harold Feinleib, Computer History Museum (March 2005)
  15. "From the very beginning... from my vantage point — early history of National CSS", Dick Orenstein, Computer History Museum (January 2005)
  16. Varian, op. cit., pp. 24, Note 76 – IDC systems (quoting Dick Bayles)
  17. IBM Maintenance Library 3145 Processing Unit Theory - Maintenance (PDF) (Fifth ed.). IBM. p. CPU 139. SY24-3581-4.
  18. "IBM zEnterprise System Technical Introduction" (PDF). p. 57. SG24-7832-00. Starting in 1967, IBM has continuously provided software virtualization in its mainframe servers.