The IBM System/360 Model 67 (S/360-67) was an important IBM mainframe model in the late 1960s. 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.
|IBM System/360 Model 67|
IBM System/360 Model 67-2 (duplex) at the University of Michigan, c. 1969
|Manufacturer||International Business Machines Corporation (IBM)|
|Release date||August 16, 1965|
|Memory||512 KB–1 MB Core|
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, and the Carnegie Institute of Technology (later Carnegie Mellon University).
In the mid-1960s a number of organizations were interested in offering interactive computing services using time-sharing. 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. 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 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 TSS/360 (TSS stood for Time-sharing System) 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.
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.
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:
The S/360-67 design included a radical new 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 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 – 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) 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.
The S/360-67 included the following extensions in addition to the standard and optional features available on all S/360 systems:
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. 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.
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.
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.
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'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:
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. 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 and Interactive Data Corporation (IDC), 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 survival and success of IBM's VM family, and of virtualization technology in general, also owe much to the S/360-67.
ASSIST (the Assembler System for Student Instruction and Systems Teaching) is an IBM System/370-compatible assembler and interpreter developed in the early 1970s at Penn State University by Graham Campbell and John Mashey. plus student assistants.
In the late 1960s, computer science education expanded rapidly and university computer centers were faced with a large growth in usage by students, whose needs sometimes differed from professionals in batch processing environments. They needed to run short programs on decks of Punched cards with fast turnaround (minutes, not overnight) as their programs more often included syntax errors. Once they compiled, they would often fault quickly, so optimization and flexibility were far less important than low overhead.
WATFIV was a successful pioneering effort to build a FORTRAN compiler tuned for student use. Universities began running it in a dedicated "fast-batch" memory partition with a small run-time limit, such as 5 seconds on an IBM System/360 Model 67). The low limit enabled fast turnaround and avoided waste of time by programs stuck in infinite loops. WATFIV's success helped inspire development of ASSIST, PL/C and other student-oriented programs that fit the "fast-batch" model that became widely used among universities.
ASSIST was enhanced and promoted by others, such as Northern Illinois University's Wilson Singletary & Ross Overbeek and
University of Tennessee's Charles Hughes and Charles Pfleeger who reported in 1978 that ASSIST was being used in 200+ universities.In the 1980s, NIU did a new implementation on IBM PCs, ASSIST/I (Interactive), used by computer scientist John Ehrman to teach a "boot camp" course in assembly programming at SHARE (computing) meetings, at least through 2011, but perhaps for several years after.
On March 1, 1998, Penn State declared that ASSIST was no longer copyrighted and that the program was freely available as per the last release notes.The original ASSIST code seems to still get some use, as seen in 2017 demonstration video assembling its source and running it in MVS 3.8 emulation on a laptop. IBM System/360 and /370 computers used 24-bit addressing and ignored the high-order 8 bits. Assembly programmers of the era, including those who wrote ASSIST, often saved precious memory by using the high-order 8 bits for flags, which required a compatibility mode when IBM introduced 31-bit and then 64-bit addressing.Batch processing
Computerized batch processing is the running of "jobs that can run without end user interaction, or can be scheduled to run as resources permit."Bruce Arden
Bruce Wesley Arden (born in 1927 in Minneapolis, Minnesota) is an American computer scientist.
Arden enlisted in the U.S. Navy during World War II (1944-1946) as a Radar Technician Third Class in California, Chicago, and Kodiak, Alaska.
He graduated from Purdue University with a BS(EE) in 1949 and started his computing career in 1950 with the wiring and programming of IBM's hybrid (mechanical and electronic) Card Programmed Computer/Calculator at the Allison Division of General Motors. Next he spent a short period as a programmer for computations being done at the University of Michigan's Willow Run Laboratory using the Standards Eastern Automatic Computer.
He then became a Research Associate at the University of Michigan's Statistical Research Laboratory and later an Associate Director of the University's Computing Center after its establishment in 1959. While at Michigan he co-authored two compilers, GAT for the IBM 650 and MAD for the IBM 704/709/7090, was involved in the design of the architecture and negotiations with IBM over the virtual memory features that would be included in what became the IBM System/360 Model 67 computer, and in the initial design of the Michigan Terminal System (MTS) time-sharing operating system.U-M Vice President for Research Geoffrey Norman, writing in 1976, gave special credit to a triumvirate of Michigan computer specialists who contributed greatly to the future of computing at Michigan and in the nation as a whole. "Bartels, Arden, and Westervelt," Norman has said, "were a team that we took great care should not be broken up or induced to leave the University. Westervelt, the hardware expert, Arden, brilliant in software and logic, and Bartels orchestrating their progress-these three put together a superb timesharing computer system. The University and their faculty colleagues owe them much."Arden's increasing interest in academic computer science and engineering motivated him to complete a doctoral program in Electrical Engineering in 1965. He was subsequently a professor in, and ultimately Chairman of, the Computer and Communication Sciences department at Michigan. In 1973 he accepted a professorship at Princeton University and chaired the department of Electrical Engineering and Computer Science. In 1986, then Princeton's Alexander Doty Professor of Engineering, he went to the University of Rochester as its Dean of the College of Engineering and Applied Science. In the three years preceding the addition of "Emeritus" to his academic title (William May Professor of Engineering) in 1995, he also served as Rochester's Vice Provost for Telecommunications and Computing.During his academic career, Arden wrote two books on numerical computation and edited another on computer science and engineering research. He wrote many papers in the areas of compilers, operating systems, computer logic and networks. In addition, he supervised many students, both undergraduate and graduate, in their studies of the various aspects of computing, and he served as a consultant to government agencies and several major computer companies at various times during those years.
He is retired and lives in Michigan and Maine.Conversational Monitor System
The Conversational Monitor System (CMS – originally: "Cambridge Monitor System") is a simple interactive single-user operating system. CMS was originally developed as part of IBM's CP/CMS operating system, which went into production use in 1967. CMS is part of IBM's VM family, which runs on IBM mainframe computers. VM was first announced in 1972, and is still in use today as z/VM.
CMS runs as a "guest" operating system in a private virtual machine created by the VM control program. The control program plus CMS together create a multi-user time-sharing operating system.Gerrit Blaauw
Gerrit Anne (Gerry) Blaauw (July 17, 1924 – March 21, 2018) was a Dutch computer scientist, known as one of the principal designers of the IBM System/360 line of computers, together with Fred Brooks, Gene Amdahl, and others.History of operating systems
Computer operating systems (OSes) provide a set of functions needed and used by most application programs on a computer, and the links needed to control and synchronize computer hardware. On the first computers, with no operating system, every program needed the full hardware specification to run correctly and perform standard tasks, and its own drivers for peripheral devices like printers and punched paper card readers. The growing complexity of hardware and application programs eventually made operating systems a necessity for everyday use.IBM 2365 Processor Storage
The IBM 2365 Processor Storage is a magnetic-core memory storage unit that was a component of the IBM System/360 models 65, 67, 75 and 85 computers, which were released between 1965 and 1968.
Storage is implemented using magnetic cores with a storage width of 72 bits, which comprise 64 data bits (8 bytes, or one doubleword) plus 8 parity bits. The IBM 2365 model 1 contains 131,072 (128 K) bytes of memory; all other models contain 262,144 (256 K) bytes. The model 2 could be converted in the field to a model 13.
All models other than the model 1 consist of two memory stacks. Addressing for the stacks is interleaved, so the first 64-bit word is in one stack, the second in the other stack, and so forth. This improved performance when doing sequential access.
All models other than the model 5 have a cycle time of 750 nanoseconds.IBM CP-40
CP-40 was a research precursor to CP-67, which in turn was part of IBM's then-revolutionary CP[-67]/CMS – a virtual machine/virtual memory time-sharing operating system for the IBM System/360 Model 67, and the parent of IBM's VM family. CP-40 ran multiple instances of client operating systems – particularly CMS, the Cambridge Monitor System, built as part of the same effort. Like CP-67, CP-40 and the first version of CMS were developed by IBM's Cambridge Scientific Center (CSC) staff, working closely with MIT researchers at Project MAC and Lincoln Laboratory. CP-40/CMS production use began in January 1967. CP-40 ran on a unique, specially modified IBM System/360 Model 40.IBM System/360
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 the complete range of applications, from small to large, both commercial and scientific. The design made a clear distinction 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, which features 8-bit byte addressing and binary, decimal and hexadecimal floating-point calculations.
The launch of the System/360 family introduced IBM's Solid Logic Technology (SLT), a new technology that was the start of more powerful but smaller computers.The slowest System/360 model announced in 1964, the Model 30, could perform up to 34,500 instructions per second, with memory from 8 to 64 KB. High performance models came later. The 1967 IBM System/360 Model 91 could do up to 16.6 million instructions per second. The larger 360 models could have up to 8 MB of main memory, though main memory that big was unusual—a large installation might have as little as 256 KB of main storage, but 512 KB, 768 KB or 1024 KB was more common. Up to 8 megabytes of slower (8 microsecond) Large Capacity Storage (LCS) was also available.
The IBM 360 was extremely successful in the market, allowing customers to purchase a smaller system with the knowledge they would always be able to migrate upward if their needs grew, without reprogramming of application software or replacing peripheral devices. Many consider the design one of the most successful computers in history, influencing computer design for years to come.
The chief architect of System/360 was Gene Amdahl, and the project was managed by Fred Brooks, responsible to Chairman Thomas J. Watson Jr. The commercial release was piloted by another of Watson's lieutenants, John R. Opel, who managed the launch of IBM’s System 360 mainframe family in 1964.Application-level compatibility (with some restrictions) for System/360 software is maintained to the present day with the System z mainframe servers.Interactive Data Corporation
Interactive Data Corporation (known by its stock symbol IDC) was an American 1960s-founded Time-sharing services company that later became known for providing financial market data (financial data vendor), analytics and related solutions to financial institutions, active traders and individual investors. The company’s businesses supply real-time market data, time-sensitive pricing, evaluations and reference data for securities trading, including hard-to-value instruments. The company was acquired by and folded into Intercontinental Exchange in December 2015.List of operating systems
This is a list of operating systems. Computer operating systems can be categorized by technology, ownership, licensing, working state, usage, and by many other characteristics. In practice, many of these groupings may overlap. Criteria for inclusion is notability, as shown either through an existing Wikipedia article or citation to a reliable source.MICRO Relational Database Management System
The MICRO Relational Database Management System was the first large-scale set-theoretic database management system to be used in production. Though MICRO was initially considered to be an "Information Management System", it was eventually recognized to provide all the capabilities of an RDBMS. MICRO's major underpinnings and algorithms were based on the Set-Theoretic Data Structure (STDS) model developed by D. L. Childs of the University of Michigan's CONCOMP (Conversational Use of Computers) Project. MICRO featured a natural language interface which allowed non-programmers to use the system.Implementation of MICRO began in 1970 as part of the Labor Market Information System (LMIS) project at the University of Michigan's Institute of Labor and Industrial Relations (ILIR). Dr. Malcolm S. Cohen was Director of the LMIS Project and was the principal innovator and designer of the original MICRO Retrieval System. Carol Easthope and Jack Guskin were the principal programmers. D.L. Childs, Vice President of Set Theoretic Information Systems (STIS) Corporation, provided continuing guidance in the use of Set-Theoretic Data Structure (STDS) data access software for MICRO. Funding came from the Office of Manpower Administration within the U.S. Department of Labor. MICRO was first used for the study of large social science data bases referred to as micro data; hence the name. Organizations such as the US Department of Labor, the US Environmental Protection Agency, and researchers from the University of Alberta, the University of Michigan, Wayne State University, the University of Newcastle upon Tyne, and Durham University used MICRO to manage very large scale databases until 1998.
MICRO runs under the Michigan Terminal System (MTS), the interactive time-sharing system developed at the University of Michigan that runs on IBM System/360 Model 67, System/370, and compatible mainframe computers. MICRO provides a query language, a database directory, and a data dictionary to create an interface between the user and the very efficient proprietary Set-Theoretic Data Structure (STDS) software developed by the Set-Theoretic Information Systems Corporation (STIS) of Ann Arbor, Michigan. The lower level routines from STIS treat the data bases as sets and perform set operations on them, e.g., union, intersection, restrictions, etc. Although the underlying STDS model is based on set theory, the MICRO user interface is similar to those subsequently used in relational database management systems. MICRO's data representation can be thought of as a matrix or table in which the rows represent different records or "cases", and the columns contain individual data items for each record; however, the actual data representation is in set-theoretic form. In labor market applications the rows typically represent job applicants or employees and columns represent fields such as age, sex, and income or type of industry, number of employees, and payroll.MICRO permits users with little programming experience to define, enter, interrogate, manipulate, and update collections of data in a relatively unstructured and unconstrained environment. An interactive system, MICRO is powerful in terms of the complexity of requests which can be made by users without prior programming language experience. MICRO includes basic statistical computations such as mean, variance, frequency, median, etc. If more rigorous statistical analysis are desired, the data from a MICRO database can be exported to the Michigan Interactive Data Analysis System (MIDAS), a statistical analysis package available under the Michigan Terminal System.Memory management unit
A memory management unit (MMU), sometimes called paged memory management unit (PMMU), is a computer hardware unit having all memory references passed through itself, primarily performing the translation of virtual memory addresses to physical addresses.
An MMU effectively performs virtual memory management, handling at the same time memory protection, cache control, bus arbitration and, in simpler computer architectures (especially 8-bit systems), bank switching.Model 67
Model 67 may refer to:
Curtiss BF2C Goshawk (Model 67), a United States naval biplane aircraft in the 1930s
IBM System/360 Model 67, an IBM mainframe computer of the late 1960s
Model 67 mine, an Austrian anti-tank mine
Mauser-Norris Model 67, a German bolt-action rifle
Smith & Wesson Model 67, an American revolver
Winchester Model 67, an American bolt-action rifleSymmetric multiprocessing
Symmetric multiprocessing (SMP) involves a multiprocessor computer hardware and software architecture where two or more identical processors are connected to a single, shared main memory, have full access to all input and output devices, and are controlled by a single operating system instance that treats all processors equally, reserving none for special purposes. Most multiprocessor systems today use an SMP architecture. In the case of multi-core processors, the SMP architecture applies to the cores, treating them as separate processors.
Professor John D. Kubiatowicz considers traditionally SMP systems to contain processors without caches. Culler and Pal-Singh in their 1998 book "Parallel Computer Architecture: A Hardware/Software Approach" mention: "The term SMP is widely used but causes a bit of confusion. [...] The more precise description of what is intended by SMP is a shared memory multiprocessor where the cost of accessing a memory location is the same for all processors; that is, it has uniform access costs when the access actually is to memory. If the location is cached, the access will be faster, but cache access times and memory access times are the same on all processors."SMP systems are tightly coupled multiprocessor systems with a pool of homogeneous processors running independently of each other. Each processor, executing different programs and working on different sets of data, has the capability of sharing common resources (memory, I/O device, interrupt system and so on) that are connected using a system bus or a crossbar.TSS (operating system)
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.Time-sharing
In computing, time-sharing is the sharing of a computing resource among many users by means of multiprogramming and multi-tasking at the same time.Its emergence as the prominent model of computing in the 1970s represented a major technological shift in the history of computing. By allowing many users to interact concurrently with a single computer, time-sharing dramatically lowered the cost of providing computing capability, made it possible for individuals and organizations to use a computer without owning one, and promoted the interactive use of computers and the development of new interactive applications.University of Michigan Executive System
The University of Michigan Executive System, or UMES, a batch operating system developed at the University of Michigan in 1958, was widely used at many universities. Based on the General Motors Executive System for the IBM 701, UMES was revised to work on the mainframe computers in use at the University of Michigan during this time (IBM 704, 709, and 7090) and to work better for the small student jobs that were expected to be the primary work load at the University.
UMES was in use at the University of Michigan until 1967, when MTS was phased in to take advantage of the newer virtual memory time-sharing technology that became available on the IBM System/360 Model 67.Virtual memory
In computing, virtual memory (also 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."The computer's operating system, using a combination of hardware and software, maps memory addresses used by a program, called virtual addresses, into physical addresses in computer memory. Main storage, as seen by a process or task, appears as a contiguous address space or collection of contiguous segments. The operating system manages virtual address spaces and the assignment of real memory to virtual memory. Address translation hardware in the CPU, often referred to as a memory management unit or MMU, automatically translates virtual addresses to physical addresses. Software within the operating system may extend these capabilities to provide a virtual address space that can exceed the capacity of real memory and thus reference more memory than is physically present in the computer.
The primary benefits of virtual memory include freeing applications from having to manage a shared memory space, increased security due to memory isolation, and being able to conceptually use more memory than might be physically available, using the technique of paging.
IBM System/360 Computers