Incompatible Timesharing System
ITS | |
Type: | Multi-tasking, multi-user, virtual memory |
---|---|
Creator: | MIT AI Lab |
Architecture: | PDP-10 |
This Version: | 1651 |
Date Released: | July, 1967 |
The Incompatible Timesharing System (usually ITS) was an early time-sharing operating system; initially for the PDP-6, and later for PDP-10's. It was developed at MIT in the Artificial Intellegence Lab, after Multics was done by Project MAC. It first became operational in July, 1967, after a very short design and implementation period, starting earlier that year.
The earliest versions ran on the PDP-6, using the base and bounds memory management hardware native to that machine. Later versions ran on KA10s which were modified with MIT-designed and built paging hardware (which that generation of PDP-10 did not have). It later ran on the KL10 and KS10 models as well, in both cases running custom microcode that emulated the operation of the MIT paging box.
ITS was one of the first OS's connected to the ARPANET, and it was on an ITS system that the first versions of Emacs, Zork, MACLISP, and Scheme were created.
During much of its operational lifetime, ITS ran on only a handful of machines:
- The AI Lab PDP-6, serial number 2. (The Dynamic Modeling group also had a PDP-6, not much used.)
- Three KA10s: AI, DM, ML. Their serial numbers were 8, 144, and 198.
- One KL10: MC, serial number 1038.
Due to failing hardware, the PDP-6 was shut down in the late 1970s, and physically removed in the early 1980s. The KA10s followed shortly after, but some were replaced with KS10s. By 1990 all MIT machines were shut down permanently.
In modern times, ITS runs on a KS10 at the Living Computers museum; it was previously MIT-AI. The museum also has the KL10 MIT-MC in storage. ITS also runs on several software emulators.
Some information on installing & images can be found here.
Milestones
- 1967 - First version for PDP-6
- 1969 - Ported to KA10
- 1969 - Second PDP-6 at Dynamic Modeling group
- 1970 - Second KA10 at Dynamic Modeling group
- 1971 - Connected to ARPANET, version ~670
- 1972 - Third KA10 at Mathlab group
- 1975 - Ported to KL10, version 915
- 1978 - PDP-6 support dropped, version 1115
- 1984 - All KA10 machines shut down, first KS10 arrives
- 1985 - Ported to KS10, version 1488, three more KS10s
- 1986 - KS ITS distributed outside MIT (SI, FU, PM, DX)
- 1988 - KL10 machine shut down
- 1990 - All MIT KS10 machines shut down; last MIT version 1644
- 1992 - First run on KS10 software simulator
- 2001 - First simulator available on Internet
- 2010 - First run on an FPGA PDP-10 implementation
- 2017 - First run on KA10 software simulator
Notable contributions
The Artificial Intelligence PDP-6 and PDP-10 were host to many influential programs: TECO (adopted form the RLE PDP-1), Logo (coming from BBN), Mac Hack VI, MACLISP, Scheme, EMACS, and was used to bootstrap the LISP machine hardware and software.
The Dynamic Modeling PDP-10 was used to develop Muddle, MAZE, the first C compiler outside Bell Labs, CLU, and Zork.
The Mathlab PDP-10 was used to develop Macsyma, but was later supplanted by a dedicated Macsyma Consortium KL10.
Early artifacts
The earliest ITS code on record is Gerald Sussman's printed listing of version 138 dating from 1967.
The next is ITS version 671 from early 1971. It's a complete binary core image including Salvager and Exec DDT. It runs on Richard Cornwell's KA10 simulator with Systems Concepts DC-10 disks. Also on the same tape is the earliest source code version is ITS 672.
See also
- Systems Concepts DM-10 - Paging box used on several KA10 ITS's
- Systems Concepts DK-10 - Datapoint kludge; AI lab KA10 terminal multiplexor
- Systems Concepts DC-10 - IBM 2314 disk control for the AI lab KA10
- PCLSRing
- ITS DDT Guide
- MIDAS
- Technology Square - home of all the ITS machines
- WAITS, another operating system similar in spirit
- Installing ITS on SIMH
- Unix interoperability with PDP-10
External links
- Source code and scripts for building ITS
- ITS files
- ITS source
- SYSDOC; ITS HISTRY - log of changes from ITS 946 to 1263
- An Introduction to ITS for the MACSYMA User - good intro overview to ITS
- The Incompatible Timesharing System wiki
- Unix tools for working with ITS files
- ITS Hardware Memo #2 - Specification for the MIT paging box