El PDP-10 fue un computador fabricado por Digital Equipment Corporation (DEC) desde finales de los años 1960 en adelante.
A este se le unió, en 1975, el KL10 de alto desempeño (posteriormente el KL20), que fue construido con ECL, estaba microprogramado, y tenía memoria caché.
Los procesadores usados en el DECSystem-20 (2040, 2050, 2060, 2065), comúnmente pero incorrectamente llamado "KL20", usaban la memoria interna montada en el mismo gabinete que el CPU.
Los modelos 10xx también tenían un empaquetado diferente; vinieron en los originales gabinetes altos del PDP-10, en vez de los cortos usados posteriormente para el DECSYSTEM-20.
Ambos podían correr el microcódigo del TOPS-10 o el TOPS-20 y por lo tanto el sistema operativo correspondiente.
Con el KL, DEC se revirtió a la filosofía anterior, haciendo el MASSbus tanto único como propietario.
El diseño KS10 fue lisiado para ser un Modelo A, aunque estaban presentes la mayoría de las rutas de datos necesarias para soportar la arquitectura del Modelo B cuando estaba presente.
Sin duda, esto intentaba segmentar el mercado, pero acortó grandemente la tiempo de vida del KS10.
En el modo supervisor, las direcciones de instrucción corresponden directamente a la memoria física.
En el modo de usuario, las direcciones son traducidas a memoria física.
Los primeros modelos dieron una memoria "alta" y una "baja" a un proceso de usuario: las direcciones con el bit 0 en el tope usaron un registro base, y las direcciones más altas usaron otro.
Las arquitecturas posteriores tuvieron acceso a memoria paginada, permitiendo espacios de direcciones no contiguos.
La comunicación del modo usuario con el modo supervisor era hecha con Unimplemented User Operations (UUOs) (Operaciones de Usuario No-Implementadas): las instrucciones que no estaban definidas por el hardware eran atrapadas por el supervisor.
Este mecanismo también era usado para emular operaciones que no tenían implementación por hardware en los modelos más baratos.
Se agrega el contenido del registro dado (si no es cero) al offset, entonces si el bit indirecto es 1, se lee la palabra en la dirección calculada y se repite el cálculo del direccionamiento efectivo (posiblemente indefinidamente, pero de hecho terminará con un trap después de 32 iteraciones).
La dirección efectiva resultante puede ser usada por la instrucción que trae el contenido de la memoria, o simplemente como una constante.
Hay tres clases principales de instrucciones: aritméticas, lógicas, y de movimiento; salto condicional (conditional jump); salto condicional (conditional skip) (que puede tener efectos secundarios); y varias pequeñas clases.
Hay también saltos condicionales basados en el registro de condición del procesador.
Un ejemplo simple es CAMN A, LOC que compara el contenido del registro A con el contenido de la localización LOC y salta la instrucción siguiente si no son iguales.
Posteriormente DEC portó Tenex al KL10, mejorándolo considerablemente, y lo nombró TOPS-20, formando la línea DECSYSTEM-20.
En los años 1970, los investigadores en Xerox PARC, frustrados por la denegación de la gerencia superior de la compañía para que los dejaran comprar un PDP-10 (Xerox acababa de comprar el SDS, y quería que PARC usara una máquina SDS), diseñaron y construyeron dos sistemas clones para su propio uso, que nombraron "MAXC" (pronunciado "Max", en honor de Max Palevsky, quien había vendido el SDS a Xerox).
Adicionalmente, Zork fue escrito en el PDP-10, e Infocom usó varios PDP-10s para el desarrollo y prueba de juegos.
Es también significativo que el PDP-10 tiene una instrucción TRON (Test Right-halfword Ones and skip if Not masked) en el opcode 666 (octal).
No había bancos similares de lámparas indicadoras en procesadores KL y KS.
El PDP-11 realizaría funciones guardián una vez que el procesador principal estaba corriendo.
En la película Operación Swordfish, Stanley, el hacker almacena el código para su gusano en un PDP-10 en un cuarto de archivo Cal Tech que había sido mantenido en línea, y en Internet, por "motivo histórico".