| Incompatible Timesharing System (ITS) | |
|---|---|
Output from ITS PEEKtask manager on a simulatedCRT screen. | |
| Developer | MIT Artificial Intelligence Laboratory andProject MAC |
| Written in | Assembly language |
| Working state | Active |
| Initial release | July 1967; 58 years ago (1967-07)[1] |
| Repository | github |
| Available in | English |
| Supported platforms | DigitalPDP-6,PDP-10, (emulators now available) |
| Default user interface | Command-line interface (DDT) |
| License | GPL-3.0-or-later[2] |
Incompatible Timesharing System (ITS) is atime-sharingoperating system developed principally by theMIT Artificial Intelligence Laboratory, with help fromProject MAC. The name is the jocular complement of the MITCompatible Time-Sharing System (CTSS).
ITS, and the software developed on it, were technically and culturally influential far beyond their core user community. Remote "guest" or "tourist" access was easily available via the earlyARPANET, allowing many interested parties to informally try out features of the operating system and application programs. The wide-open ITS philosophy and collaborativeonline community were a major influence on thehacker culture, as described in Steven Levy's bookHackers,[3] and were the direct forerunners of thefree and open-source software (FOSS),open-design, andWiki movements.
ITS development was initiated in the late 1960s by those (the majority of the MIT AI Lab staff at that time) who disagreed with the direction taken by Project MAC'sMultics project (which had started in the mid-1960s), particularly such decisions as the inclusion of powerfulsystem security. The name was chosen byTom Knight as a joke on the name of the earliest MIT time-sharing operating system, theCompatible Time-Sharing System (CTSS), which dated from the early 1960s.[3]
By simplifying their system compared to Multics, ITS's authors[who?] were able to quickly[clarification needed] produce a functional operating system for their lab.[4] ITS was written inassembly language, originally for theDigital Equipment CorporationPDP-6 computer, but the majority of ITS development and use was on the newer, largelyupwards-compatible,PDP-10.[3]
Although not used as intensively after about 1986, ITS continued to operate on original hardware at MIT until 1990, and then until 1995 atStacken Computer Club [sv] in Sweden. Today, some ITS implementations continue to be remotely accessible, viaemulation of PDP-10 hardware running on modern, low-cost computers supported by interested hackers.
ITS introduced many then-new features:
The environment seen by ITS users was philosophically significantly different from that provided by most operating systems at the time.[3]
The wide-open ITS philosophy and collaborative community were the direct forerunner of thefree and open-source software (FOSS),open-design, andWiki movements.[8][9][10]
TheEMACS ("Editor MACroS") editor was originally written on ITS. In its ITS instantiation it was a collection ofTECO programs (called "macros"). On later operating systems, it was written in the common language of those systems – for example, theC language underUnix, andZetalisp under theLisp Machine system.
GNU′sinfo help system was originally an EMACS subsystem, and then was later written as a complete standalone system for Unix-like machines.
Several important programming languages and systems were developed on ITS, includingMacLisp (the precursor of Zetalisp andCommon Lisp),Microplanner (implemented in MacLisp),MDL (which became the basis ofInfocom's programming environment), andScheme.
Among other significant and influential software subsystems developed on ITS, theMacsyma symbolic algebra system, started in 1968, was the first widely-known mathematical computing environment. It was a forerunner ofMaxima,MATLAB,Wolfram Mathematica, and many othercomputer algebra systems.
Terry Winograd's natural-language interpreterSHRDLU was developed on ITS. The computer gameZork was also originally written on ITS.[citation needed]
Richard Greenblatt's Mac Hack VI was the top-rated chess program for years[citation needed] and was the first to display a graphical board representation.[citation needed]
The default ITS top-levelcommand interpreter was the PDP-10 machine language debugger (DDT). The usualtext editor on ITS wasTECO and laterEmacs, which was written in TECO. Both DDT and TECO were implemented through simpledispatch tables on single-letter commands, and thus had no truesyntax. The ITStask manager was called PEEK.
The local spelling "TURIST" is an artifact of six-character filename (and other identifier) limitations, which is traceable to sixSIXBIT encoded characters fitting into a single 36-bit PDP-10 word. "TURIST" may also have been apun onAlan Turing, a pioneer of theoreticalcomputer science.[11] The less-complimentary term "LUSER" was also applied to guest users, especially those who repeatedly engaged in clueless or vandalous behavior.[12]
TheJargon File started as a combined effort between people on the ITS machines at MIT and at Stanford UniversitySAIL. The document described much of the terminology, puns, and culture of the two AI Labs and related research groups, and is the direct predecessor of theHacker's Dictionary (1983),[13] the first compendium of hacker jargon to be issued by a major publisher (MIT Press).
Different implementations of ITS supported an odd array of peripherals, including an automatic wire stripper devised by hacker Richard Greenblatt, who needed a supply of pre-stripped jumper wires of various lengths forwire-wrapping computer hardware he and others were prototyping. The device used astepper motor and a formerly hand-held wire stripper tool and cutter, operated bysolenoid, all under computer control from ITS software. The device was accessible by any ITS user, but was disappointingly unreliable in actual use.
TheXerox Graphics Printer (XGP), one of the first laser printers, was supported by ITS by 1974.[14] The MIT AI Lab had one of these prototype continuous roll-fed printers for experimentation and use by its staff. By 1982, the XGP was supplemented by aXerox Dover printer, an early sheet-fed laser printer.[15] Although any ITS user could send files to the laser printers, physical access to pick up printouts was limited to staff and others who obtained access to the MIT lab, to control usage of printer supplies which had to be specially ordered.
CTSS and ITS file systems have a number of design elements in common. Both have an M.F.D. (master file directory) and one or more U.F.D. (user file directories). Neither of them have nested directories (sub-directories) Both have file names consisting of two names which are a maximum of six-characters long. Both support linked files.