- This article is about the MIT Computation Center operating system. CTSS may also stand for the Cray Time Sharing System, a separate system developed for Cray supercomputers.
The Compatible Time-Sharing System
, or the CTSS
, was one of the first time-sharing operating systems
; it was developed at MIT
's Computation Center. CTSS was first demonstrated in 1961, and was operated at MIT until 1973. During part of this time, MIT's Project MAC
had a second copy of CTSS, but the system did not spread beyond two sites (though this applies to many early computer systems). CTSS was described in a paper presented at the 1962 Spring Joint Computer Conference.
The "Compatible" in the name refers to compatibility with the standard batch processing OS for the 7094, the Fortran Monitor System (FMS). CTSS ran an unaltered copy of FMS, processing a standard batch stream, in a pseudo-virtual 7094 provided by its background facility. (The hardware was partly but not fully virtualized; see History of CP/CMS for further details.) Background FMS jobs could access tapes normally, but could not interfere with foreground time-sharing processes or the resources used to support them.
CTSS was very influential. It showed that time-sharing was viable; it fostered important new applications for computers; it had a significant influence on the next generation of time-sharing systems (notably CP/CMS); and its direct successor, Multics, pioneered many core concepts of current operating systems.
- CTSS had one of the first computerized text formatting utilities.
- CTSS had one of the first inter-user messaging implementations, presaging electronic mail.
- MIT Computation Center staff member Louis Pouzin created for CTSS a command called RUNCOM, which executed a list of commands contained in a file. (He later created a design for the Multics shell, which in turn inspired Unix shell scripts.) RUNCOM also allowed parameter substitution.
CTSS used a modified IBM 7094 mainframe computer that had two 32,768 36-bit word banks of core memory instead of the normal one; users had access to 27K of the total 32K, with the remaining 5K reserved for the monitor. One bank was reserved for the time-sharing supervisory program, the other for user programs. Processor allocation scheduling was controlled by a multilevel feedback queue. It also had some special memory management hardware, a clock interrupt and the ability to trap certain instructions. Input-output hardware was mostly standard IBM peripherals. These included six data channels connecting to:
- printers, punch card readers and punches
- IBM 729 tape drives, an IBM 1301 disk storage, later upgraded to an IBM 1302, with 38 million word capacity
- an IBM 7320 drum memory with 186K words that could load a 32K memory bank in one second (later upgraded to 1/4 second)
- two custom high speed vector graphics displays
- an IBM 7750 transmission control unit capable of supporting up to 112 teleprinter terminals, including IBM 1050 Selectrics and Model 35 Teletypes. Some of the terminals were located remotely and the system could be accessed using the public Telex and TWX networks
Multics, which was also developed by Project MAC, was started in the 1960s as a successor to CTSS, for future use in multiple-access computing. Multics inspired the development of Unix in 1969. One of technical terms inherited by these systems from CTSS is daemon.
ITS, the Incompatible Timesharing System, another early, revolutionary, and influential MIT time-sharing system, was produced by people who disagreed with the direction taken by Multics; the name was a hack on CTSS, as the name of Unix was later a hack on Multics.
- F. J. Corbató, M. M. Daggett, R. C. Daley, An Experimental Time-Sharing System (IFIPS 1962)
- Robert M. Fano, The MAC System: A Progress Report (MIT Project MAC, 1964) describes the usage of CTSS
- Jerome H. Saltzer, CTSS Technical Notes (MIT Project MAC, 1965) describes the internals of CTSS in some detail
- Jerome H. Saltzer, Manuscript Typing and Editing (MIT Computation Center, 1964) describes the world's first computerized text formatting system
- F. J. Corbató, et al, The Compatible Time-Sharing System A Programmer's Guide (MIT Press, 1963) ISBN 978-0-262-03008-3. Describe the system and its commands