THE EVOLUTION OF THE DECsystem-10 511
Utilities and languages have taken advantage of the interactive, terminal-oriented environment. Thus, highly interactive editing/ debugging facilities have evolved in terms of the program's own symbols. The file/data transfer utility, PIP (for Peripheral Interchange Program) is still in existence today, although in a much enhanced form. It has since been expanded to support the peripheral devices and the data formats encountered in the DECsystem-10 memory and I/O devices. Such a utility eliminated the need for a "library" of utilities and conversion programs to transfer data between devices. Such tasks as a card-to-disk, card-to-tape, tape-to-disk, etc., conversion are controlled by a terminal using common PIP commands. PIP evolved in a somewhat ad hoc fashion from a 1 Kword or 2 Kword size in 1965 to 10 Kwords with substantial generality.
A powerful and sophisticated text editor, TECO (Text Editor and Corrector) was initially implemented at MIT using a graphics display. TECO is character-string oriented and requires a minimal number of keystrokes to execute commands. It included the ability to define programs to do general string substitution. As the sophistication of users was later perceived to decline, the powerful editor created training and use problems. Thus, a family of line- and character-oriented editors evolved which was easier to learn and remember. These were based on other line-oriented editors, but especially Stanford's SOS, which replaced the initial DECline editor in 1970.
Many of the higher level languages were initially produced by non-DEC groups and made available through the DEC User Society (DECUS). For example, APL, BASIC, DBMS, and IQL (an interactive query language) were purchased from outside sources and are now standard, supported products.
BLISS (Basic Language for Implementing System Software), developed at Carnegie-Mellon University, became DEC's systems programming language [Wulf et al., 1971b]. A cross-compiler was subsequently developed for the PDP-l1. Its use as a systems programming language has been due to the close coupling it provides to the machine, its general syntactic and block structures, and its high-quality code generator. BLISS has been used for various diagnostic programs, the BLISS Compilers, the PDP-10 APL Interpreter, recent FORTRAN- IV compilers for both PDP-l0 and PDP-l 1, and the BASIC PLUS TWO system. BLISS has also been used extensively within DEC for computer-aided design programs.
Tenex and the TOPS-20 Operating System
Bolt, Beranek, and Newman started a project in 1969 to build an advanced operating system called Tenex which was based on a modified KA10 (including rather elaborate paging hardware). This work was influenced by both the Berkeley SDS 940 and the MIT Multics systems. Subsequently, Tenex influenced and improved the KI10 design which became the base of TOPS-20. The system was described by Bobrow et al. , and the three major goals stated in the reference were:
1. State-of-the-Art Virtual Machine
a. Paged virtual address space equal to or greater than the addressing capability of the processor with full provision for protection and sharing.
b. Multiple process capability in virtual machine with appropriate communication facilities.
c. File system integrated into virtual address space, built on multilevel symbolic directory structure with protection, and providing consistent access to all external I/O devices and data streams.
d. Extended instruction repertoire making available many common operations as single instructions.