Compatible Time-sharing System
CTSS, the Compatible Time-sharing System, was probably the first time-sharing system. Developed in the early 1960s at MIT, it ran on a IBM 7094, supporting up to 30 users on a system with just 64kwords of memory and a clock speed well under 1MHz.

CTSS project director Fernando J. Corbató (shown here wearing a bow tie) demonstrates CTSS in 1963 to a reporter from WGBH. Source: Youtube.
Some of the key innovations it brought were
- Users could develop and run programs interactively using remote keybaors/printer devices.
- They could log in with a user name (later passwords were added) and run commands, with the operating system interleaving jobs and protecting against interference beterrn jobs.
- It used a disk drive for storage, with users' work partitioned into directories and divided into files.
- Users could share files and use facilities such as email and online messages.
- It enabled the development of ELIZA, the world's first chatbot, many different programming languages and document preparation tools, and supported the work of Project MAC.
CTSS eventually ran on two computers at MIT. It was very influential: many of the CTSS engineers went on to develop Multics, and ideas from CTSS contributed to other OS. Using it today, it seems very familiar to those used to the Unix command line.
Preservation status
There is a good amount of documentation at bitsavers.org covering the machine and the operating system. Probably the best reference is the 1969 Programmer's Guide.
The original source code for CTSS was found on a backup tape 20 years ago and has been reconstructed into a version runnable on two emulators
We will use s709 for most of the work on this site as it is slightly easier to use.
Topics
Background
Using the emulators
- A quick tour of CTSS using s709
- Getting data into and out of the system using s709
- If you are interested in using simh instead of s709, see my quickstart repo.
Using CTSS
Questions, corrections, comments
May 2025: Tom Van Vleck suggested using "remote keybaors/printer devices" instead of "teletypwriters", making changes to the bullet points and noted:
MIT having two 7094s was a height of affluence. Having a big mainframe computer was sort of like owning an ocean liner: cost to run, skilled staff required, etc.
I welcome any questions or comments, and also especially any corrections if I have got something wrong. Please email me at rupert@timereshared.com and I will add it here and update the main text.