Digital Equipment Corporation (DEC)'s PDP-10, later marketed as the DECsystem-10, is a mainframe computer family[1] manufactured beginning in 1966[2] and discontinued in 1983.
[a] The PDP-10's architecture is almost identical to that of DEC's earlier PDP-6, sharing the same 36-bit word length and slightly extending the instruction set.
[7] It uses discrete transistors packaged in DEC's Flip-Chip technology, with backplanes wire wrapped via a semi-automated manufacturing process.
This was joined in 1975 by the higher-performance KL10 (later faster variants), which is built from emitter-coupled logic (ECL), microprogrammed, and has cache memory.
A smaller, less expensive model, the KS10, was introduced in 1978, using TTL and Am2901 bit-slice components and including the PDP-11 Unibus to connect peripherals.
The KS10 was marketed as the DECSYSTEM-2020, part of the DECSYSTEM-20 range; it was DEC's entry in the distributed processing arena, and it was introduced as "the world's lowest cost mainframe computer system.
The I/O architecture of the 20xx series KL machines is based on a DEC bus design called the Massbus.
Communication with IBM mainframes, including Remote Job Entry (RJE), was accomplished via a DN61 or DN-64 front-end processor, using a PDP-11/40 or PDP-11/34a.
The 8080 switches modes after the operating system boots and controls the console and remote diagnostic serial ports.
The condition register bits, which record the results of arithmetic operations (e.g. overflow), can be accessed by only a few instructions.
Communication from user-mode to supervisor-mode is done through Unimplemented User Operations (UUOs): instructions which are not defined by the hardware, and are trapped by the supervisor.
The major datatypes which are directly supported by the architecture are two's complement 36-bit integer arithmetic (including bitwise operations), 36-bit floating-point, and halfwords.
Many of the possible 512 codes are not defined in the base model machines and are reserved for expansion like the addition of a hardware floating point unit.
Earlier models give a user process a "high" and a "low" memory: addresses with a 0 top bit use one base register and those with a 1 use another.
Halfword instructions are also used for linked lists: HLRZ is the Lisp CAR operator; HRRZ is CDR.
The byte instructions use a special format of indirect word to extract and store arbitrary-sized bit fields, possibly advancing a pointer to the next unit.
Instructions allow for the movement of data to and from devices in word-at-a-time (DATAO and DATAI) or block-at-a-time (BLKO, BLKI).
The block instructions increment both values every time they are called, thereby increasing the counter as well as moving to the next location in memory.
[25] The final set of I/O instructions are used to write and read condition codes on the device, CONO and CONI.
[26] Additionally, CONSZ will perform a CONI, bitmask the retrieved data against the value in E, and then skip the next instruction if it is zero, used in a fashion similar to the BLK commands.
BBN developed their own alternative operating system, TENEX, which fairly quickly became popular in the research community.
[32] DEC maintained DECsystem-10 FORTRAN IV (F40) for the PDP-10 from 1967 to 1975[33] MACRO-10 (assembly language macro compiler), COBOL, BASIC and AID were supported under the multi processing and swapping monitors.
[34] In practice a number of other programming environments were available including LISP and SNOBOL at the Hatfield Polytechnic site around 1970.
In 1971 to 1972, researchers at Xerox PARC were frustrated by top company management's refusal to let them buy a PDP-10.
As of January 2007[update], CompuServe was operating a small number of PDP-10 architecture machines to perform some billing and routing functions.
There were no similar banks of indicator lamps on KL and KS processors themselves - only on legacy memory and peripheral devices.
[36] This event spelled the doom of ITS and the technical cultures that had spawned the original jargon file, but by the 1990s it had become something of a badge of honor among old-time hackers to have cut one's teeth on a PDP-10.
[37] Bill Gates and Paul Allen originally wrote Altair BASIC using an Intel 8080 simulator running on a PDP-10 at Harvard University.
The software for simulation of historical computers, SIMH, contains modules to emulate all the PDP-10 CPU models on a Windows or Unix-based machine.
Copies of DEC's original distribution tapes are available as downloads from the Internet so that a running TOPS-10 or TOPS-20 system may be established.