Time-sharing system evolution

Last updated

This article covers the evolution of time-sharing systems, providing links to major early time-sharing operating systems, showing their subsequent evolution.

Contents

Time-sharing

Time-sharing was developed in the late 1950s out of the realization that a single expensive computer could be efficiently utilized if a multitasking, multiprogramming operating system allowed multiple users simultaneous interactive access. Typically an individual user would enter bursts of information followed by long pauses; but with a group of users working at the same time, the pauses of one user would be filled by the activity of the others. Similarly, small slices of time spent waiting for disk, tape, or network input could be granted to other users. Given an optimal group size, the overall process could be very efficient.

Each user would use their own computer terminal; initially electromechanical teleprinters such as the Teletype Model 33 ASR or the Friden Flexowriter, but from about 1970 these were progressively superseded by CRT-based units such as the DEC VT05, Datapoint 2200 and Lear Siegler ADM-3A.

Terminals were initially linked to a nearby computer via current loop or serial cables, by conventional telegraph circuits provided by PTTs and over specialist digital leased lines such T1. Modems such as the Bell 103 and successors, allowed remote and higher-speed use over the analogue voice telephone network.

Family tree of major systems

See details and additional systems in the table below. Relationships shown here are for the purpose of grouping entries and do not reflect all influences (e.g., OS/2 was more influenced by VAX/VMS than by MS-DOS, but its legacy is as an x86 platform). The Cambridge Multiple-Access System [1] [2] was the first time-sharing system developed outside the United States.

Family tree of major time-sharing operating system families
Influences:    → derivation    >> strong influence    > some influence/precedence
CTSS  > 
IBM mainframe systems
CP-40/CMS CP[-67]/CMS   VM/370 → VM/SE versions → VM/SP versions → VM/XA versions → VM/ESAz/VM
  VP/CSS
TSS/360
OS/360 MVT-TSOOS/VS2 SVS-TSOMVS-TSOOS/390-TSOz/OS-TSO
Transactional systems: CICS, TPFz/TPF

Non-IBM systems on IBM mainframes
   Michigan Terminal System (MTS)
   MUSIC/SP
   ORVYL

The DTSS/MULTICS/UNIX family
   Dartmouth Time Sharing System (DTSS)
   MULTICS > UNIX family >> Linux
   MULTICS > PRIMOS > Domain/OS
   MULTICS >> Stratus VOS

DEC time-sharing systems
   BBN Time-Sharing System
   TOPS-10 > TENEX  >>  TOPS-20
   RSTS/E
   RSX-11M >> VAX/VMSVMSOpenVMS
   Incompatible Timesharing System (ITS)

System descriptions and relationships

Important time-sharing systems, 1960-1990 (and successors); listed alphabetically
Influences:    → derivation    >> strong influence    > some influence/precedence
SystemPlatformDates in useDeveloperDescriptionInfluences: from   to
ACP S/360 and S/3701965-1979 IBM High-performance mainframe transaction platform used in SABRE and PARS TPFz/TPF
APL ("A Programming Language," also "Iverson's Language") System/360, others later [3] 1964–present Kenneth Iverson Mathematically-oriented language and interactive environment, noted for incredible terseness and powerful set processing operators
Berkeley Timesharing System SDS 940 1964-1972 Project Genie Early general-purpose>> TENEX
Cambridge Multiple-Access System Titan, the prototype Atlas 21967-1973 University of Cambridge and Ferranti Multiple Access System Project MAC→ →UNIX
CANDE Burroughs large systems 1965?-presentBurroughsfirst IDE(separate evolution)
CICS S/3x01969–present IBM Ubiquitous mainframe transaction platform; often used with IBM 3270 terminals and COBOL
CP-40/CMS customized S/360-401967-1972?IBM's Cambridge Scientific Center First implementation of full virtualization CTSS >
CP-67
CP-67/CMS IBM System/360-67 1967-1975? IBM's Cambridge Scientific Center Influential precursor to IBM's VM series, widely distributed as open source CP-40
VP/CSS
VM/370z/VM
CTSS ("Compatible Time Sharing System")modified IBM 7094 1961-1973 MIT Computation CenterFirst-generation "grandfather" of time-sharing systems FMS >
>> CP-40
>> Multics
>> ITS
> [numerous other systems]
DTSS ("Dartmouth Time Sharing System") GE 200, GE 635, Honeywell 6000 series 1964-1999 Dartmouth College Early time-sharing system running Dartmouth BASIC and other tools; the first commercial time-sharing system FMS >
>> CP-40
>> Multics
>> ITS
> [numerous other systems]
ITS ("Incompatible Timesharing System") PDP-6, PDP-10 1968?-1990 MIT Artificial Intelligence Laboratory "Subversive" operating system developed to counter direction of CTSS, the original platform for Macsyma, and other important applications CTSS >
> [numerous later systems]
JOSS ("JOHNNIAC Open Shop System") JOHNNIAC, PDP-6 1963-1971? RAND Corporation Lightweight, interactive computing language for non-specialists; did not distinguish operating system from languageHighly regarded, but no obvious successors
Linux ubiquitous1991–present Linus Torvalds, GNU project, open source Operating system dominating current open source activities UNIX >>
minix >>
> [numerous other systems]
Microsoft Windows
(Windows NT 4.0 Terminal Server Edition)
x86, IA-64, others1985–present Microsoft Ubiquitous GUI operating system MS-DOS >>
OS/2 >>
VMS >>
Smalltalk >>
MTS (Michigan Terminal System) IBM S/360-67, S/370 1967-1999 University of Michigan and 7 other universities First (Nov. 1967) OS to use the virtual memory features of the S/360-67. Early (Sept. 1968) S/360-67 multiprocessor support. CTSS >
DTSS >
> UNIX (BSD)
Multics GE 645 1969-2000 Project MAC Rich, important system CTSS >>
>> UNIX
>> [many other systems]
MVS/TSO System/370 and successors1971–present IBM Probably the most widely used version of TSO,
extended version TSO/E,
current version zOS-TSO
CTSS >
TSS/360 >
→ z/OS-TSO
NOS CDC 60-bit platforms1976-?? Control Data Corporation System used on most CDC machines [4] MACE >→ Kronos >>
NOS/BE CDC 60-bit platforms1976-?? Control Data Corporation System used on most CDC machines [5] COSSCOPE >→
ORVYL IBM 9672 1967-?? Stanford University Early time-sharing system; source of the WYLBUR editor later used on System/370 platforms
OS/2 (as Citrix Multiuser) x86 1987–present IBM/Microsoft Joint OS effort, now moribund. Still available as eComStation and ArcaOS. DOS → Microsoft Windows >> OS/2
→ eComStation
→ ArcaOS 5.0
ROSCOE System/360 and successors1969-present Applied Data Research (ADR)Early time-sharing editor environment, often used as an alternative to TSO [6] → WRAP
RSTS/E PDP-11 1972-1992+ DEC General-purpose time-sharing for the PDP-11
RSX-11 PDP-11 1972-?? DEC Real-time operating system for the PDP-11→ IAS
>> VMS
Smalltalk [ citation needed ] Xerox Alto, later made portable1972–present Xerox PARC, successorsSeminal system for experimental programming, responsible for many modern user interface concepts>> Apple Lisa
>> Apple Macintosh
>> Microsoft Windows
>> [all GUI platforms]
Stratus VOS i860, x86, PA-RISC, 68k 1980?-present Stratus Technologies High-availability fault-tolerant transaction processing MULTICS >>
TENEX PDP-10 1970?-?? Bolt Beranek and Newman Influential system widely used at research and government sites>> TOPS-20
>> VMS
TOPS-10 PDP-10 1970-1988? (as TOPS-10)
1964-1970 (as PDP-6 Monitor)
DEC Widely used at research and academic sitesPDP-6 Monitor →
> TENEX
>> CP/M
TOPS-20 DECsystem 20 1976-?? DEC Successor to TOPS-10 but more like TENEX TENEX >
TOPS-10 >
TPF S/3x01979–present (TPF)
2005–present(z/TPF)
IBM High-performance mainframe transaction platform, successor to ACP, still available as z/TPF ACP
z/TPF
TSOS RCA Spectra 70 and successors1968-today RCA Early general purpose mainframe OS
TSS-8 PDP-8 1967–?? DEC Simple minicomputer OS> RSTS/E
TSS/360
TSS/370
IBM System/360-67 and successors1967-1971? IBM IBM's original "official" time-sharing system; not a success CTSS >
→ TSS/370
Unisys/UNIVAC EXEC 8 UNIVAC 1108
and successors
1964–present Sperry-Rand et al.Many universities
and government agencies were early users
EXEC 8 → OS 1100 →
OS 2200
UNIX and derivative systemsubiquitous1969–present Bell Laboratories and successorsUltimately dominated operating system thought, in both proprietary and open-source descendants Multics >>
>> Linux
VM/370
VM/SE
VM/SP
System/370 and successors1972-1988
2000–present (z/VM)
IBM Proprietary reimplementation of CP/CMS, still available as z/VM CP-40CP-67
VM/ESAz/VM
VMS and OpenVMS VAX/VMS, IA-64, DEC Alpha 1977–present DEC Popular DEC operating system TENEX >
RSX-11M >>
>> Windows NT
>> OS/2
VP/CSS IBM System/360-67, System/370 and successors1968-1986? National CSS Proprietary fork of CP/CMS developed by a time-sharing vendor CP/CMS
WYLBUR System/370 and successors1967-2009? Stanford University Popular editor system originally from ORVYL, used under OS/VS as an alternative to TSO→ SuperWylbur

See also

Related Research Articles

Computer multitasking The concurrent execution of multiple processes over a certain period of time.

In computing, multitasking is the concurrent execution of multiple tasks over a certain period of time. New tasks can interrupt already started ones before they finish, instead of waiting for them to end. As a result, a computer executes segments of multiple tasks in an interleaved manner, while the tasks share common processing resources such as central processing units (CPUs) and main memory. Multitasking automatically interrupts the running program, saving its state and loading the saved state of another program and transferring control to it. This "context switch" may be initiated at fixed time intervals, or the running program may be coded to signal to the supervisory software when it can be interrupted.

Multics operating system

Multics is an influential early time-sharing operating system which is based on the concept of a single-level memory. Virtually all modern operating systems were heavily influenced by Multics – often through Unix, which was created by some of the people who had worked on Multics – either directly or indirectly.

Operating system software that manages computer hardware resources

An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs.

In computing, time-sharing is the sharing of a computing resource among many users at the same time by means of multiprogramming and multi-tasking.

Computerized batch processing is the running of "jobs that can run without end user interaction, or can be scheduled to run as resources permit."

CDC 6600 computer

The CDC 6600 was the flagship of the 6000 series of mainframe computer systems manufactured by Control Data Corporation. Generally considered to be the first successful supercomputer, it outperformed the industry's prior recordholder, the IBM 7030 Stretch, by a factor of three. With performance of up to three megaFLOPS, the CDC 6600 was the world's fastest computer from 1964 to 1969, when it relinquished that status to its successor, the CDC 7600.

Michigan Terminal System mainframe operating system

The Michigan Terminal System (MTS) 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, Canada, and the United Kingdom over a period of 33 years.

The Conversational 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.

MUSIC/SP operating system

MUSIC/SP was developed at McGill University in the 1970s from an early IBM time-sharing system called RAX. The system ran on IBM S/360, S/370, and 4300-series mainframe hardware, and offered novel features such as file access control and data compression. It was designed to allow academics and students to create and run their programs interactively on terminals, in an era when most mainframe computing was still being done from punched cards. Over the years, development continued and the system evolved to embrace email, the Internet and eventually the World Wide Web. At its peak in the late 1980s, there were over 250 universities, colleges and high school districts that used the system in North and South America, Europe and Asia.

The Compatible Time-Sharing System (CTSS) was one of the first time-sharing operating systems; it was developed at the MIT Computation Center. CTSS was first demonstrated on MIT's IBM 709 in November 1961; service to MIT users began in the summer of 1963 and was operated until 1973. During part of this time, MIT's influential Project MAC also ran a CTSS service, but the system did not spread beyond these two sites.

Incompatible Timesharing System (ITS) is a time-sharing operating system developed principally by the MIT Artificial Intelligence Laboratory, with help from Project MAC. The name is the jocular complement of the MIT Compatible Time-Sharing System (CTSS).

CP/CMS is a discontinued time-sharing operating system of the late 60s and early 70s, known for its excellent performance and advanced features. It had three distinct versions:

The Dartmouth Time-Sharing System (DTSS) was an operating system first developed at Dartmouth College between 1963 and 1964. It was the first successful large-scale time-sharing system to be implemented, and was also the system for which the BASIC language was developed. DTSS was developed continually over the next decade, reimplemented on several generations of computers, and finally shut down in 1999.

PLATO (computer system) mainframe computer system

PLATO was the first generalized computer-assisted instruction system. Starting in 1960, it ran on the University of Illinois' ILLIAC I computer. By the late 1970s, it supported several thousand graphics terminals distributed worldwide, running on nearly a dozen different networked mainframe computers. Many modern concepts in multi-user computing were originally developed on PLATO, including forums, message boards, online testing, e-mail, chat rooms, picture languages, instant messaging, remote screen sharing, and multiplayer video games.

NLS, or the "oN-Line System", was a revolutionary computer collaboration system developed in the 1960s. Designed by Douglas Engelbart and implemented by researchers at the Augmentation Research Center (ARC) at the Stanford Research Institute (SRI), the NLS system was the first to employ the practical use of hypertext links, the mouse, raster-scan video monitors, information organized by relevance, screen windowing, presentation programs, and other modern computing concepts. It was funded by ARPA, NASA, and the U.S. Air Force.

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.

The CDC 1700 was a 16-bit word minicomputer, manufactured by the Control Data Corporation with deliveries beginning in May 1966.

The history of operating systems running on IBM mainframes is a notable chapter of history of mainframe operating systems, because of IBM's long-standing position as the world's largest hardware supplier of mainframe computers.

VS/9 is a discontinued computer operating system available for the UNIVAC Series 90 mainframes during the late 1960s through 1980s. The 90/60 and 90/70 were repackaged Univac 9700 computers. After the RCA acquisition by Sperry, it was determined that the RCA TSOS operating system was far more advanced than the Univac counterpart, so the company opted to merge the Univac hardware with the RCA software and introduced the 90/70. The 90/60 was introduced shortly thereafter as a slower, less expensive 90/70. It was not until the introduction of the 90/80 that VS/9 finally had a hardware platform optimized to take full advantage of its capability to allow both interactive and batch operations on the same computer.

Asymmetric multiprocessing

An asymmetric multiprocessing (AMP) system is a multiprocessor computer system where not all of the multiple interconnected central processing units (CPUs) are treated equally. For example, a system might allow only one CPU to execute operating system code or might allow only one CPU to perform I/O operations. Other AMP systems might allow any CPU to execute operating system code and perform I/O operations, so that they were symmetric with regard to processor roles, but attached some or all peripherals to particular CPUs, so that they were asymmetric with respect to the peripheral attachment.

References

  1. Hartley, D. F. (1968), The Cambridge multiple-access system: user's reference manual, Cambridge: Cambridge Univ. Press, ISBN   978-0901224002
  2. Wilkes, M.; Needham, R. (1968), "The Design of Multiple-Access Computer Systems: Part 2" (PDF), The Computer Journal, 10 (4): 315–320, doi:10.1093/comjnl/10.4.315
  3. McDonnell, Eugene. "The Socio-Technical Beginnings of APL" . Retrieved 18 January 2019.
  4. "A partial history of CDC Operating Systems", March 1976
  5. "A partial history of CDC Operating Systems", March 1976
  6. Oral History of Martin A. Goetz Archived 2012-03-24 at the Wayback Machine , co-founder of Applied Data Research (ADR), interviewed by: Burt Grad and Luanne Johnson, December 10, 1985 at Princeton, New Jersey, Computer History Museum Reference No. X4579.2008