PDP-10

ImprimirCitar
Sistemas PDP-10 en ARPANET resaltados en amarillo

El PDP-10 de Digital Equipment Corporation (DEC), más tarde comercializado como DECsystem-10, es una familia de computadoras mainframe fabricada a partir de 1966 y se suspendió en 1983. Los modelos de la década de 1970 y posteriores se comercializaron con el nombre DECsystem-10, especialmente cuando el sistema operativo TOPS-10 se volvió ampliamente utilizado.

La arquitectura del PDP-10 es casi idéntica a la del anterior PDP-6 de DEC, comparte la misma longitud de palabra de 36 bits y amplía ligeramente el conjunto de instrucciones (pero con una implementación de hardware mejorada). Algunos aspectos del conjunto de instrucciones son inusuales, sobre todo las instrucciones byte, que operan en campos de bits de cualquier tamaño de 1 a 36 bits inclusive, de acuerdo con la definición general de un byte como a secuencia contigua de un número fijo de bits.

El PDP-10 se encontró en muchas instalaciones informáticas universitarias y laboratorios de investigación durante la década de 1970, siendo los más notables el Laboratorio de Cómputo Aiken de la Universidad de Harvard, el Laboratorio de IA del MIT y el Proyecto MAC, en Stanford. s SAIL, Computer Center Corporation (CCC), ETH (ZIR) y Carnegie Mellon University. Sus principales sistemas operativos, TOPS-10 y TENEX, se utilizaron para desarrollar la primera ARPANET. Por estas razones, el PDP-10 ocupa un lugar preponderante en el folclore de los primeros piratas informáticos.

Los proyectos para extender la línea PDP-10 se vieron eclipsados por el éxito de la superminicomputadora VAX no relacionada, y la cancelación de la línea PDP-10 se anunció en 1983. Sistema DEC-10s."

Modelos y evolución técnica

Flip Chip de un DEC KA10, que contiene 9 transistores, 1971
Quick Latch Memory Bus Terminator, utilizado en KI10, 1973
KL10 Wire-Wrap CPU Backplane

El procesador PDP-10 original es el KA10, presentado en 1968. Utiliza transistores discretos empaquetados en tecnología Flip-Chip de DEC, con backplanes cableados envueltos a través de un proceso de fabricación semiautomatizado. Su tiempo de ciclo es de 1 μs y su tiempo de adición de 2,1 μs. En 1973, el KA10 fue reemplazado por el KI10, que utiliza SSI de lógica transistor-transistor (TTL). A esto se unió en 1975 el KL10 de mayor rendimiento (variantes más rápidas posteriores), que está construido a partir de lógica acoplada al emisor (ECL), microprogramado y tiene memoria caché. El rendimiento del KL10 fue de aproximadamente 1 megaflops utilizando números de coma flotante de 36 bits en la reducción de filas de matriz. Fue un poco más rápido que el nuevo VAX-11/750, aunque más limitado en memoria.

En 1978 se introdujo un modelo más pequeño y económico, el KS10, que usaba componentes de segmento de bits TTL y Am2901 e incluía el PDP-11 Unibus para conectar periféricos. El KS10 se comercializó como DECsystem-2020, parte de la gama DECsystem-20; fue la entrada de DEC en el campo del procesamiento distribuido y se presentó como 'el sistema informático mainframe de menor costo del mundo'.

KA10

El KA10 tiene una capacidad máxima de memoria principal (tanto virtual como física) de 256 kilopalabras (equivalente a 1152 kilobytes); la memoria principal mínima requerida es de 16 kilopalabras. Tal como lo suministró DEC, no incluía hardware de paginación; La administración de memoria consta de dos conjuntos de registros de protección y reubicación, llamados registros base y límites. Esto permite que cada mitad del espacio de direcciones de un usuario se limite a una sección determinada de la memoria principal, designada por la dirección física base y el tamaño. Esto permite el modelo de segmento de código compartible de solo lectura separado (normalmente el segmento alto) y el segmento de pila/datos de lectura y escritura (normalmente el segmento bajo) utilizado por TOPS-10 y posteriormente adoptado por Unix. Algunas máquinas KA10, primero en MIT y luego en Bolt, Beranek and Newman (BBN), se modificaron para agregar memoria virtual y soporte para paginación bajo demanda, y más memoria física.

El KA10 pesa alrededor de 870 kg (1920 libras).

La 10/50 era la máquina KA Uniprocesador de primera línea en el momento en que se presentó el paquete de software PA1050. Otros dos modelos KA10 fueron el monoprocesador 10/40 y el procesador dual 10/55.

KI10

El KI10 introdujo la compatibilidad con la administración de memoria paginada y también admite un espacio de direcciones físicas más grande de 4 megapalabras. Los modelos KI10 incluyen 1060, 1070 y 1077, este último incorpora dos CPU.

KL10

KL10-DA 1090 CPU y 6 módulos de memoria

Los modelos KL10 PDP-10 originales (también comercializados como DECsystem-10) (1080, 1088, etc.) utilizan el bus de memoria PDP-10 original, con módulos de memoria externos. Módulo en este contexto significaba un gabinete, con unas dimensiones aproximadas (An. x Al. x Pr.) de 30 x 75 x 30 pulgadas, con una capacidad de 32 a 256 kWpalabras de memoria de núcleo magnético. Los procesadores utilizados en el DECSYSTEM-20 (2040, 2050, 2060, 2065), comúnmente pero incorrectamente llamados "KL20", usan memoria interna, montada en el mismo gabinete que la CPU. Los modelos 10xx también tienen un embalaje diferente; vienen en los gabinetes altos PDP-10 originales, en lugar de los bajos que se usaron más tarde para el DECsystem-20. Las diferencias entre los modelos 10xx y 20xx radicaban principalmente en el sistema operativo que ejecutaban, TOPS-10 o TOPS-20. Aparte de eso, las diferencias son más cosméticas que reales; algunos sistemas 10xx tienen "estilo 20" memoria interna y E/S, y algunos sistemas 20xx tienen "estilo 10" memoria externa y un bus de E/S. En particular, todos los sistemas ARPAnet TOPS-20 tenían un bus de E/S porque la interfaz AN20 IMP era un dispositivo de bus de E/S. Ambos podrían ejecutar el microcódigo TOPS-10 o TOPS-20 y, por lo tanto, el sistema operativo correspondiente.

Modelo B

La última versión Modelo B de los procesadores 2060 elimina el límite de 256 kilopalabras en el espacio de direcciones virtuales al admitir hasta 32 "secciones" de hasta 256 kilopalabras cada uno, junto con cambios sustanciales en el conjunto de instrucciones. Las dos versiones son efectivamente CPU diferentes. El primer sistema operativo que aprovecha las capacidades del Modelo B es TOPS-20 versión 3, y el direccionamiento extendido en modo de usuario se ofrece en TOPS-20 versión 4. Las versiones de TOPS-20 posteriores a la versión 4.1 solo se ejecutan en un Modelo B.

TOPS-10 versiones 7.02 y 7.03 también usan direccionamiento extendido cuando se ejecutan en un procesador Modelo B 1090 (o 1091) que ejecuta el microcódigo TOPS-20.

MCA25

La actualización final al KL10 fue la actualización MCA25 de 2060 a 2065 (o de 1091 a 1095), lo que proporcionó algunos aumentos de rendimiento para los programas que se ejecutan en varias secciones.

Massbus

La arquitectura de E/S de las máquinas KL de la serie 20xx se basa en un diseño de bus DEC llamado Massbus. Si bien muchos atribuyeron el éxito del PDP-11 a la decisión de DEC de hacer del PDP-11 Unibus una arquitectura abierta, DEC volvió a la filosofía anterior con el KL, haciendo que Massbus sea único y patentado. En consecuencia, no hubo fabricantes de periféricos del mercado de accesorios que fabricaran dispositivos para Massbus, y DEC optó por fijar el precio de sus propios dispositivos Massbus, en particular la unidad de disco RP06, con una prima sustancial por encima de los dispositivos comparables compatibles con IBM. CompuServe, por ejemplo, diseñó su propio controlador de disco alternativo que podría operar en Massbus, pero conectarse a subsistemas de disco estilo 3330 de IBM.

Procesadores frontales

KL10 frontend PDP-11/40

Las máquinas de la clase KL tienen un procesador frontal PDP-11/40 para el inicio y la supervisión del sistema. El PDP-11 se inicia desde una unidad de disco RP06 de doble puerto (o alternativamente desde una unidad de disquete de 8 o DECtape), y luego se pueden dar comandos al PDP-11 para iniciar el procesador principal, que normalmente es arrancado desde la misma unidad de disco RP06 que el PDP-11. El PDP-11 realiza funciones de vigilancia una vez que el procesador principal está en funcionamiento.

La comunicación con los mainframes de IBM, incluida la entrada remota de trabajos (RJE), se logró a través de un procesador front-end DN61 o DN-64, usando un PDP-11/40 o PDP-11/34a.

KS10

KS10

El KS10 es un PDP-10 económico construido con chips AMD 2901 bit-slice, con un microprocesador Intel 8080A como procesador de control. El diseño del KS10 se paralizó para ser un Modelo A a pesar de que la mayoría de las rutas de datos necesarias para admitir la arquitectura del Modelo B están presentes. Sin duda, esto tenía la intención de segmentar el mercado, pero acortó en gran medida la vida útil del producto KS10.

El sistema KS utiliza un procedimiento de arranque similar al KL10. El procesador de control 8080 carga el microcódigo de un disco o cinta magnética RM03, RM80 o RP06 y luego inicia el procesador principal. El 8080 cambia de modo después de que el sistema operativo arranca y controla la consola y los puertos seriales de diagnóstico remoto.

Unidades de cinta magnética

El subsistema de control de cinta magnética TM10 admitía dos modelos de unidades de cinta:

  • TU20 Magnetic Transporte de cinta – 45 ips (inches/segundo)
  • TU30 Magnetic Transporte de cinta – 75 ips (inches/segundo)
  • TU45 Magnetic Transporte de cinta – 75 ips (inches/segundo)

Se podría admitir una combinación de hasta ocho de estos, proporcionando dispositivos de siete y nueve pistas. El TU20 y el TU30 venían en versiones A (9 pistas) y B (7 pistas), y todas las unidades de cinta antes mencionadas podían leer/escribir desde/hasta cintas compatibles con IBM de 200 BPI, 556 BPI y 800 BPI.

El controlador TM10 Magtape estaba disponible en dos submodelos:

  • TM10A controló el ciclo a / desde la memoria PDP-10 usando el procesador Arithmetic KA10
  • TM10B accedió a la memoria PDP-10 usando un DF10 Data Channel, sin "robación de ciclos" del procesador Arithmetic KA10

Arquitectura del conjunto de instrucciones

Desde los primeros PDP-6 hasta el KL-10 y el KS-10, la arquitectura del conjunto de instrucciones del modo de usuario es prácticamente la misma. Esta sección cubre esa arquitectura. El único cambio importante en la arquitectura es la adición de direccionamiento extendido de múltiples secciones en el KL-10; El direccionamiento extendido, que cambia el proceso de generar la dirección efectiva de una instrucción, se analiza brevemente al final.

Direccionamiento

El PDP-10 tiene palabras de 36 bits y direcciones de palabras de 18 bits. En modo supervisor, las direcciones de instrucción corresponden directamente a la memoria física. En el modo de usuario, las direcciones se traducen a la memoria física. Los modelos anteriores dan a un proceso de usuario un "alto" y un "bajo" memoria: las direcciones con un bit superior 0 usan un registro base, y las direcciones más altas usan otro. Cada segmento es contiguo. Las arquitecturas posteriores tienen acceso a la memoria paginada, lo que permite espacios de direcciones no contiguos. Los registros de propósito general de la CPU también se pueden direccionar como ubicaciones de memoria 0–15.

Registros

Hay 16 registros de uso general de 36 bits. La mitad derecha de estos registros (aparte del registro 0) se puede utilizar para la indexación. Algunas instrucciones operan en pares de registros. La "Palabra PC" consta de un registro de condición de 13 bits (más 5 bits siempre cero) en la mitad izquierda y un contador de programa de 18 bits en la mitad derecha. El registro de condiciones, que registra bits adicionales de los resultados de las operaciones aritméticas (por ejemplo, desbordamiento), se puede acceder con solo unas pocas instrucciones.

En los sistemas KA-10 originales, estos registros son simplemente las primeras 16 palabras de la memoria principal. Los "registros rápidos" La opción de hardware los implementa como registros en la CPU, aún direccionables como las primeras 16 palabras de la memoria. Algunos programas se aprovechan de esto al usar los registros como un caché de instrucciones cargando código en los registros y luego saltando a la dirección apropiada; esto se usa, por ejemplo, en Maclisp para implementar una versión del recolector de basura. Todos los modelos posteriores tienen registros en la CPU.

Modo supervisora

(feminine)

Hay dos modos operativos, modo supervisor y modo usuario. Además de la diferencia en la referencia a la memoria descrita anteriormente, los programas en modo supervisor pueden ejecutar operaciones de entrada/salida.

La comunicación del modo de usuario al modo de supervisor se realiza a través de operaciones de usuario no implementadas (UUO): instrucciones que no están definidas por el hardware y que son capturadas por el supervisor. Este mecanismo también se usa para emular operaciones que pueden no tener implementaciones de hardware en modelos más económicos.

Tipos de datos

Los principales tipos de datos compatibles directamente con la arquitectura son la aritmética de enteros de 36 bits en complemento a dos (incluidas las operaciones bit a bit), punto flotante de 36 bits y medias palabras. El punto flotante extendido de 72 bits se admite a través de instrucciones especiales diseñadas para usarse en secuencias de múltiples instrucciones. Los punteros de byte están respaldados por instrucciones especiales. Una palabra estructurada como "contar" medio y un "puntero" half facilita el uso de regiones limitadas de memoria, en particular pilas.

Instrucciones

El conjunto de instrucciones es muy simétrico. Cada instrucción consta de un código de operación de 9 bits, un código de registro de 4 bits y un campo de dirección efectiva de 23 bits, que a su vez consta de un bit indirecto de 1 bit, un código de registro de 4 bits y un campo de dirección efectiva de 18 bits. compensar. La ejecución de la instrucción comienza con el cálculo de la dirección efectiva. Agrega el contenido del registro dado (si no registra cero) al desplazamiento; luego, si el bit indirecto es 1, se obtiene una 'palabra indirecta', que contiene un bit indirecto, un código de registro y un desplazamiento en las mismas posiciones que en las instrucciones, en la dirección calculada y el cálculo de la dirección efectiva es repetido usando esa palabra, sumando el registro (si no es el registro cero) al desplazamiento, hasta llegar a una palabra indirecta con un bit indirecto cero. La dirección efectiva resultante puede ser utilizada por la instrucción para obtener contenido de la memoria o simplemente como una constante. Así, por ejemplo, MOVEI A,3(C) suma 3 a los 18 bits inferiores del registro C y pone el resultado en el registro A, sin tocar memoria.

Hay tres clases principales de instrucción: aritmética, lógica y movimiento; salto condicional; omisión condicional (que puede tener efectos secundarios). También hay varias clases más pequeñas.

Las operaciones aritméticas, lógicas y de movimiento incluyen variantes que operan de inmediato a registro, de memoria a registro, de registro a memoria, de registro y memoria a ambos o de memoria a memoria. Dado que los registros pueden direccionarse como parte de la memoria, también se definen las operaciones de registro a registro. (No todas las variantes son útiles, aunque están bien definidas). Por ejemplo, la operación ADD tiene como variantes ADDI (añadir una constante inmediata I de 18 bits a un registro), ADDM (añadir registro contenido a una ubicación de memoria M), ADDB (agregar a Both, es decir, agregar contenido del registro a la memoria y también poner el resultado en el registro). Un ejemplo más elaborado es HLROM (Hmedia Lde izquierda a derecha, Ones a M emory), que toma la mitad izquierda del contenido del registro, los coloca en la mitad derecha de la ubicación de la memoria y reemplaza la mitad izquierda de la ubicación de la memoria con Unos. Las instrucciones de media palabra también se utilizan para listas enlazadas: HLRZ es el operador Lisp CAR; HRRZ es CDR.

Las operaciones de salto condicional examinan el contenido de los registros y saltan a una ubicación determinada según el resultado de la comparación. Todos los mnemotécnicos para estas instrucciones comienzan con JUMP, JUMPA que significa "saltar siempre" y JUMP que significa "saltar nunca" – como consecuencia del diseño simétrico del conjunto de instrucciones, contiene varios no-ops como JUMP. Por ejemplo, JUMPN A,LOC salta a la dirección LOC si el contenido del registro A no es cero. También hay saltos condicionales basados en el registro de condición del procesador usando la instrucción JRST. En KA10 y KI10, JRST es más rápido que JUMPA, por lo que el salto incondicional estándar es JRST.

Las operaciones de salto condicional comparan el registro y el contenido de la memoria y saltan la siguiente instrucción (que suele ser un salto incondicional) según el resultado de la comparación. Un ejemplo sencillo es CAMN A,LOC, que compara el contenido del registro A con el contenido de la ubicación LOC y salta la siguiente instrucción si no son iguales. Un ejemplo más elaborado es TLCE A,LOC (léase "Test Left Complement, skip if Equal"), que usando el contenido de LOC como máscara, selecciona los bits correspondientes en la mitad izquierda del registro A. Si todos esos bits son Eiguales a cero, omita la siguiente instrucción; y en todo caso, reemplazar esos bits por su complemento booleano.

Algunas clases de instrucciones más pequeñas incluyen las instrucciones de desplazamiento/rotación y las instrucciones de llamada a procedimiento. Particularmente notables son las instrucciones de pila PUSH y POP, y las correspondientes instrucciones de llamada de pila PUSHJ y POPJ. Las instrucciones de bytes usan un formato especial de palabra indirecta para extraer y almacenar campos de bits de tamaño arbitrario, posiblemente avanzando un puntero a la siguiente unidad.

Direccionamiento extendido

En los procesadores que admiten direccionamiento extendido, el espacio de direcciones se divide en "secciones". Una dirección de 18 bits es una "dirección local", que contiene un desplazamiento dentro de una sección, y una "dirección global" es de 30 bits, divididos en un número de sección de 12 bits en la parte inferior de los 18 bits superiores y un desplazamiento de 18 bits dentro de esa sección en los 18 bits inferiores. Un registro puede contener un "índice local", con un desplazamiento sin signo de 18 bits o una dirección local en los 18 bits inferiores, o un "índice global", con un desplazamiento sin signo de 30 bits. desplazamiento o dirección global en los 30 bits inferiores. Una palabra indirecta puede ser una 'palabra indirecta local', con su bit superior establecido, los siguientes 12 bits reservados y los bits restantes siendo un bit indirecto, un código de registro de 4 bits y un bit de 18 bits. desplazamiento de bit, o una "palabra indirecta global", con su bit superior limpio, el siguiente bit es un bit indirecto, los siguientes 4 bits son un código de registro y los 30 bits restantes son un desplazamiento.

El proceso de cálculo de la dirección efectiva genera un número de sección de 12 bits y un desplazamiento de 18 bits dentro de ese segmento.

Software

Sistemas operativos

El sistema operativo original de la PDP-10 se llamaba simplemente "Monitor", pero luego pasó a llamarse TOPS-10. Finalmente, el propio sistema PDP-10 pasó a llamarse DECsystem-10. Las primeras versiones de Monitor y TOPS-10 formaron la base del sistema operativo WAITS de Stanford y el sistema de tiempo compartido CompuServe.

Con el tiempo, algunos operadores de PDP-10 comenzaron a ejecutar sistemas operativos ensamblados a partir de componentes principales desarrollados fuera de DEC. Por ejemplo, el Programador principal puede provenir de una universidad, el Servicio de disco de otra, y así sucesivamente. Los servicios comerciales de tiempo compartido como CompuServe, On-Line Systems, Inc. (OLS) y Rapidata mantuvieron sofisticados grupos de programación de sistemas internos para poder modificar el sistema operativo según fuera necesario para sus propios negocios sin depender de DEC u otros. También existen comunidades de usuarios sólidas, como DECUS, a través de las cuales los usuarios pueden compartir el software que han desarrollado.

BBN desarrolló su propio sistema operativo alternativo, TENEX, que rápidamente se hizo popular entre la comunidad de investigadores. Más tarde, DEC transfirió TENEX al KL10, lo mejoró considerablemente y lo llamó TOPS-20, formando la línea DECSYSTEM-20.

MIT, que había desarrollado CTSS, Sistema de tiempo compartido compatible para ejecutar en su IBM 709 (y más tarde un sistema IBM 7094 modificado), también desarrolló ITS, Sistema de tiempo compartido incompatible para ejecutar en su PDP-6 (y más tarde un sistema modificado PDP-10); el nombre estaba relacionado, ya que IBM y el hardware DEC/PDP eran diferentes, es decir, "incompatible" (a pesar de que cada uno tiene una CPU de 36 bits). El nombre ITS, seleccionado por Tom Knight, "fue un juego de" el nombre CTSS.

Tymshare desarrolló TYMCOM-X, derivado de TOPS-10 pero utilizando un sistema de archivos basado en páginas como TOPS-20.

Lenguajes de programación

DEC mantuvo DECSYSTEM-10 FORTRAN IV (F40) para el PDP-10 de 1967 a 1975

Clones

Entre 1971 y 1972, los investigadores de Xerox PARC se sintieron frustrados por la negativa de la alta dirección de la empresa a permitirles comprar una PDP-10. Xerox acababa de comprar Scientific Data Systems (SDS) en 1969 y quería que PARC usara una máquina SDS. En cambio, un grupo dirigido por Charles P. Thacker diseñó y construyó dos sistemas de clones PDP-10 llamados MAXC (pronunciado como Max, en honor a Max Palevsky, quien había vendido SDS a Xerox) para su propio uso. MAXC también era un acrónimo de Multiple Access Xerox Computer. MAXC ejecutó una versión modificada de TENEX.

Los intentos de terceros de vender clones de PDP-10 fueron relativamente infructuosos; véase Foonly, Systems Concepts y XKL.

Uso por CompuServe

Una de las colecciones más grandes de sistemas de arquitectura DECsystem-10 jamás reunida se encontraba en CompuServe, que, en su apogeo, operó más de 200 sistemas débilmente acoplados en tres centros de datos en Columbus, Ohio. CompuServe usó estos sistemas como 'hosts', brindando acceso a aplicaciones comerciales y al servicio de información de CompuServe. Si bien los primeros sistemas de este tipo se compraron a DEC, cuando DEC abandonó la arquitectura PDP-10 a favor de VAX, CompuServe y otros clientes de PDP-10 comenzaron a comprar computadoras compatibles con enchufes de Systems Concepts. A partir de enero de 2007, CompuServe estaba operando una pequeña cantidad de máquinas con arquitectura PDP-10 para realizar algunas funciones de facturación y enrutamiento.

Las principales fuentes de alimentación utilizadas en las máquinas de la serie KL eran tan ineficientes que los ingenieros de CompuServe diseñaron una fuente de reemplazo que usaba aproximadamente la mitad de la energía. CompuServe ofreció licenciar el diseño para su suministro de KL a DEC de forma gratuita si DEC prometía que cualquier nuevo KL comprado por CompuServe tendría instalado el suministro más eficiente. DEC rechazó la oferta.

Panel de luz MF10 con lámparas LED

Otra modificación realizada al PDP-10 por los ingenieros de CompuServe fue reemplazar los cientos de luces indicadoras incandescentes en el gabinete del procesador KI10 con módulos de luces LED. El costo de la conversión se compensó fácilmente con los ahorros en el uso de electricidad, la reducción del calor y la mano de obra necesaria para reemplazar las lámparas quemadas. Digital siguió este paso en todo el mundo. La imagen del lado derecho muestra el panel de luz de la memoria MF10 que es contemporánea con la CPU KI10. Este elemento es parte de un museo de computadoras y se llenó de LED en 2008 solo con fines de demostración. No había bancos similares de luces indicadoras en los procesadores KL y KS.

Cancelación e influencia

El PDP-10 finalmente fue eclipsado por las máquinas superminicomputadoras VAX (descendientes del PDP-11) cuando DEC reconoció que las líneas de productos PDP-10 y VAX competían entre sí y decidió concentrar su esfuerzo de desarrollo de software en el VAX más rentable. La cancelación de la línea de productos PDP-10 se anunció en 1983, incluida la cancelación del proyecto Júpiter en curso para producir un nuevo procesador PDP-10 de gama alta (a pesar de que el proyecto estaba en buena forma en el momento de la cancelación) y el proyecto Minnow para producir un PDP-10 de escritorio, que puede haber estado en la etapa de creación de prototipos.

Este evento significó la ruina de ITS y las culturas técnicas que habían generado el archivo de jerga original, pero en la década de 1990 se había convertido en una especie de insignia de honor entre los piratas informáticos de antaño. un PDP-10.

Las instrucciones LDB y DPB (byte de carga/depósito) del lenguaje ensamblador del PDP-10 se mantienen como funciones en el lenguaje de programación Common Lisp. Consulte las "Referencias" sección sobre el artículo LISP. El tamaño de palabra de 36 bits del PDP-6 y PDP-10 estuvo influenciado por la conveniencia de programación de tener 2 punteros LISP, cada uno de 18 bits, en una palabra.

Will Crowther creó Adventure, el prototipo de juego de aventuras para computadora, para una PDP-10. Don Daglow creó el primer juego de béisbol para computadora (1971) y Dungeon (1975), el primer videojuego de rol en una PDP-10. Walter Bright creó originalmente Empire para el PDP-10. Roy Trubshaw y Richard Bartle crearon el primer MUD en un PDP-10. Zork fue escrito en el PDP-10. Infocom usó PDP-10 para desarrollar y probar juegos.

Bill Gates y Paul Allen originalmente escribieron Altair BASIC usando un simulador Intel 8080 que se ejecutaba en un PDP-10 en la Universidad de Harvard. Allen reutilizó el ensamblador PDP-10 como ensamblador cruzado para el chip 8080. Fundaron Microsoft poco después.

Emulación o simulación

El software de simulación de computadoras históricas, SIMH, contiene módulos para emular todos los modelos de CPU PDP-10 en una máquina basada en Windows o Unix. Las copias de las cintas de distribución originales de DEC están disponibles como descargas de Internet para que se pueda establecer un sistema TOPS-10 o TOPS-20 en ejecución. ITS y WAITS también están disponibles para SIMH.

El software KLH10 de Ken Harrenstien para sistemas tipo Unix emula un procesador KL10B con direccionamiento extendido y 4 MW de memoria o un procesador KS10 con 512 KW de memoria. La emulación KL10 admite la v.442 del microcódigo KL10, lo que le permite ejecutar las versiones finales de TOPS-10 y TOPS-20. La emulación KS10 admite el microcódigo ITS v.262 para la versión final de KS10 ITS y el microcódigo DEC v.130 para las versiones finales de KS TOPS-10 y TOPS-20.

Este artículo se basa en parte en el Archivo de jerga, que es de dominio público.

Contenido relacionado

Asignación de letra de unidad

Ordenar por fusión

PC/M

Más resultados...
Tamaño del texto:
Copiar