El Atlas fue uno de los primeros superordenadores del mundo , en funcionamiento desde 1962 (cuando se afirmaba que era el ordenador más potente del mundo) hasta 1972. [ 1 ] La capacidad del Atlas dio lugar al dicho de que, cuando se desconectó, se perdió la mitad de la capacidad informática del Reino Unido. [ 2 ] Es notable por ser la primera máquina con memoria virtual (en aquel entonces denominada "almacenamiento de un nivel" [ 3 ] ) que utilizaba técnicas de paginación ; este enfoque se extendió rápidamente y ahora es omnipresente.
Atlas era una computadora de segunda generación que utilizaba transistores de germanio discretos . Su creación fue fruto de un esfuerzo de desarrollo conjunto entre la Universidad de Manchester , Ferranti y Plessey . Se construyeron otras dos máquinas Atlas: una para BP y la Universidad de Londres , y otra para el Laboratorio de Computación Atlas en Chilton, cerca de Oxford .
Ferranti construyó un sistema derivado para la Universidad de Cambridge . Llamado Titan o Atlas 2, [ 4 ] tenía una organización de memoria diferente y ejecutaba un sistema operativo de tiempo compartido desarrollado por el Laboratorio de Computación de la Universidad de Cambridge. Se entregaron dos Atlas 2 más: uno al Centro CAD de Cambridge (más tarde llamado CADCentre, y luego AVEVA ) y el otro al Establecimiento de Investigación de Armas Atómicas (AWRE), en Aldermaston.
El Atlas de la Universidad de Manchester fue dado de baja en 1971. [ 5 ] El último Atlas, la máquina CADCentre, fue apagado a finales de 1976. [ 6 ] Partes del Atlas de Chilton se conservan en los Museos Nacionales de Escocia en Edimburgo ; la consola principal fue redescubierta en julio de 2014 y se encuentra en el Laboratorio Rutherford Appleton en Chilton, cerca de Oxford .
Historia
Fondo
A lo largo de 1956, creció la conciencia de que el Reino Unido se estaba quedando atrás con respecto a Estados Unidos en el desarrollo informático. En abril, BW Pollard, de Ferranti, declaró en una conferencia sobre informática que «en este país existe una gama de ordenadores de velocidad media, y las únicas dos máquinas realmente rápidas son la Cambridge EDSAC 2 y la Manchester Mark 2, aunque ambas siguen siendo muy lentas en comparación con las máquinas estadounidenses más rápidas». [ 7 ] A esto le siguieron preocupaciones similares expresadas en un informe de mayo al Comité Asesor del Departamento de Investigación Científica e Industrial sobre Máquinas Calculadoras de Alta Velocidad, más conocido como el Comité Brunt. [ 8 ]
Durante este período, el equipo de Tom Kilburn en la Universidad de Manchester había estado experimentando con sistemas basados en transistores , construyendo dos pequeñas máquinas para probar diversas técnicas. Este era claramente el camino a seguir, y en el otoño de 1956, Kilburn comenzó a sondear a posibles clientes sobre las características que desearían en una nueva máquina basada en transistores. La mayoría de los clientes comerciales señalaron la necesidad de admitir una amplia variedad de dispositivos periféricos, mientras que la Autoridad de Energía Atómica sugirió una máquina capaz de ejecutar una instrucción cada microsegundo, [ 9 ] o, como se conocería hoy, 1 MIPS de rendimiento. Esta última solicitud dio origen al nombre del diseño prospectivo, MUSE, por motor de microsegundos . [ 10 ]
La necesidad de admitir numerosos periféricos y la necesidad de un funcionamiento rápido son, naturalmente, incompatibles. Un programa que procesa datos de un lector de tarjetas , por ejemplo, dedicará la mayor parte de su tiempo a esperar a que el lector envíe el siguiente bit de datos. Para admitir estos dispositivos y, al mismo tiempo, hacer un uso eficiente de la unidad central de procesamiento (CPU), el nuevo sistema necesitaría memoria adicional para almacenar datos en búfer y un sistema operativo capaz de coordinar el flujo de datos dentro del sistema. [ 11 ]
Musa se convierte en Atlas
Cuando el Comité Brunt tuvo conocimiento de los nuevos y mucho más rápidos diseños estadounidenses, el Univac LARC y el IBM STRETCH , logró captar la atención de la Corporación Nacional de Investigación y Desarrollo (NRDC), responsable de llevar las tecnologías de los grupos de investigación de la época de la guerra al mercado. Durante los siguientes dieciocho meses, celebraron numerosas reuniones con clientes potenciales, equipos de ingeniería de Ferranti y EMI , y equipos de diseño de Manchester y del Royal Radar Establishment . [ 11 ]
A pesar de todo este esfuerzo, para el verano de 1958, todavía no había fondos disponibles del NRDC. Kilburn decidió avanzar construyendo un Muse más pequeño para experimentar con varios conceptos. Esto se financió con fondos del Mark 1 Computer Earnings Fund, que recaudaba fondos alquilando tiempo en el Mark 1 de la Universidad. Poco después de que comenzara el proyecto, en octubre de 1958, Ferranti decidió participar. En mayo de 1959 recibieron una subvención de 300 000 libras esterlinas del NRDC para construir el sistema, que se devolvería con los ingresos de las ventas. En algún momento durante este proceso, la máquina pasó a llamarse Atlas. [ 11 ]
El diseño detallado se completó a finales de 1959 y la construcción de los compiladores estaba en marcha. Sin embargo, el sistema operativo Supervisor ya estaba muy retrasado. [ 12 ] Esto llevó a David Howarth, recién contratado en Ferranti, a ampliar el equipo del sistema operativo de dos a seis programadores. En lo que se describe como un esfuerzo hercúleo, liderado por el incansable y enérgico Howarth (quien completó su doctorado en física a los 22 años), el equipo finalmente entregó un Supervisor que constaba de 35 000 líneas de lenguaje ensamblador con soporte para multiprogramación para resolver el problema del manejo de periféricos. [ 13 ]
Instalaciones
El primer Atlas se construyó en la universidad a lo largo de 1962. El cronograma se vio aún más limitado por el cierre previsto de la máquina Ferranti Mercury a finales de diciembre. Atlas cumplió con este objetivo y fue puesto en marcha oficialmente el 7 de diciembre por John Cockcroft , director de la AEA. [ 13 ] Este sistema solo tenía una versión temprana de Supervisor, y el único compilador era para Autocode . No fue hasta enero de 1964 que se instaló la versión final de Supervisor, junto con compiladores para ALGOL 60 y Fortran . [ 14 ]
A mediados de la década de 1960, la máquina original se utilizaba de forma continua, con una jornada de 20 horas diarias, durante la cual se podían ejecutar hasta 1000 programas. El tiempo se repartía entre la Universidad y Ferranti, que cobraba 500 libras esterlinas por hora a sus clientes. Una parte de estos ingresos se destinaba al Fondo de Ganancias Informáticas de la Universidad. [ 14 ] En 1969, se estimó que el tiempo de uso del ordenador que recibía la Universidad habría costado 720 000 libras esterlinas si se hubiera arrendado en el mercado libre. La máquina se apagó el 30 de noviembre de 1971. [ 15 ]
Ferranti vendió otras dos instalaciones de Atlas, una a un consorcio conjunto de la Universidad de Londres y BP en 1963, y otra al Centro de Investigación de Energía Atómica (Harwell) en diciembre de 1964. La máquina del AEA se trasladó posteriormente al Laboratorio de Computación Atlas en Chilton, a pocos metros del perímetro de Harwell, lo que la situó en terrenos civiles y facilitó enormemente su acceso. Esta instalación llegó a ser la Atlas más grande, con 48 kWords de memoria de núcleo de 48 bits y 32 unidades de cinta. El tiempo de uso se puso a disposición de todas las universidades del Reino Unido. Se cerró en marzo de 1974. [ 16 ]
Titán y Atlas 2
En febrero de 1962, Ferranti donó algunas piezas de una máquina Atlas a la Universidad de Cambridge , y a cambio, la Universidad las utilizaría para desarrollar una versión más económica del sistema. El resultado fue la máquina Titan, que entró en funcionamiento en el verano de 1963. Ferranti vendió dos unidades más de este diseño bajo el nombre de Atlas 2, una al Centro de Investigación de Armas Atómicas (Aldermaston) en 1963 y otra al Centro de Diseño Asistido por Computadora, patrocinado por el gobierno, en 1966. [ 17 ]
Legado
Atlas fue diseñado como respuesta a los programas estadounidenses LARC y STRETCH. Ambos, en última instancia, se adelantaron a Atlas en su uso oficial: LARC en 1961 y STRETCH unos meses antes. Atlas era mucho más rápido que LARC, aproximadamente cuatro veces, y ligeramente más lento que STRETCH: Atlas sumaba dos números de coma flotante en aproximadamente 1,59 microsegundos, [ 14 ] mientras que STRETCH lo hacía en 1,38 a 1,5 microsegundos. Sin embargo, el jefe de la División de Software de Ferranti, Hugh Devonald, declaró en 1962: «Se afirma que Atlas es el sistema informático más potente del mundo. Con esta afirmación se quiere decir que, si a Atlas y a cualquiera de sus rivales se les presentaran simultáneamente conjuntos similares de tareas informáticas representativas, Atlas debería completar su conjunto antes que todos los demás ordenadores». [ 18 ] No se intentó vender más LARC, [ 17 ] y no está claro cuántas máquinas STRETCH se produjeron finalmente.
No fue hasta la llegada del CDC 6600 en 1964 que el Atlas fue superado significativamente. Posteriormente, CDC declaró que una descripción de Muse de 1959 le proporcionó ideas que aceleraron considerablemente el desarrollo del 6600 y permitieron su entrega antes de lo previsto. [ 17 ] Esto le valió un contrato con la CSIRO en Australia, que inicialmente había estado en conversaciones para adquirir un Atlas. [ 17 ]
Ferranti atravesaba serias dificultades financieras a principios de la década de 1960 y decidió vender la división de computadoras a International Computers and Tabulators (ICT) en 1963. ICT decidió centrarse en el mercado de gama media con su serie ICT 1900 , [ 19 ] una gama flexible de máquinas basadas en la Ferranti-Packard 6000 canadiense .
El Atlas era muy apreciado por muchos en la industria informática. Entre sus admiradores se encontraba C. Gordon Bell de Digital Equipment Corporation , quien posteriormente lo elogió:
En arquitectura, el Manchester Atlas fue ejemplar, no porque fuera una máquina grande que construiríamos, sino porque ilustraba una serie de buenos principios de diseño. El Atlas era multiprogramado con una interfaz bien definida entre el usuario y el sistema operativo, tenía un espacio de direcciones muy grande e introdujo la noción de códigos adicionales para extender la funcionalidad de su conjunto de instrucciones. [ 20 ]
En junio de 2022, un hito del IEEE fue dedicado a "La computadora Atlas y la invención de la memoria virtual 1957-1962". [ 21 ]
Diseño
Hardware

La máquina tenía muchas características innovadoras, pero los parámetros operativos clave eran los siguientes (el tamaño de la tienda se refiere a la instalación de Manchester; las demás eran más grandes):
- Tamaño de palabra de 48 bits . Una palabra puede contener un número de punto flotante, una instrucción, dos direcciones de 24 bits o enteros con signo, u ocho caracteres de 6 bits.
- Un sumador rápido que utilizaba circuitos innovadores para minimizar el tiempo de propagación del acarreo.
- Espacio de direcciones de 24 bits (2 millones de palabras, 16 millones de caracteres) que abarcaba el almacén del supervisor ('sagrado'), el almacén V, el almacén fijo y el almacén de usuario.
- 16 K palabras de almacenamiento central (equivalente a 96 KB ), con intercalación de direcciones pares/impares.
- 8.000 palabras de memoria de solo lectura (denominada almacenamiento fijo). Esta contenía las rutinas de supervisión y de código adicional.
- 96K palabras de almacenamiento de tambor (equivalente a 576 KB), divididas en cuatro tambores pero integradas con el almacenamiento central mediante memoria virtual . El tamaño de página era de 512 palabras, [ 22 ] es decir, 3072 bytes. [ 23 ] [ 24 ]
- 128 registros de índice de alta velocidad (líneas B) que podían utilizarse para la modificación de direcciones en las instrucciones, en su mayoría de doble modificación. El espacio de direcciones de registro también incluía registros especiales, como la dirección del operando de código adicional y el exponente del acumulador de punto flotante . Tres de los 128 registros eran contadores de programa : el 125 controlaba la supervisión (interrupción), el 126 controlaba el código adicional y el 127 controlaba al usuario. El registro 0 siempre contenía el valor 0.
- Capacidad para la incorporación de periféricos nuevos (para la época) sofisticados, como cintas magnéticas , incluyendo funciones de acceso directo a memoria (DMA).
- Control de periféricos mediante direcciones de almacenamiento virtual ( E/S mapeadas en memoria ), interrupciones y rutinas de código adicional, mediante la lectura y escritura de direcciones de almacenamiento cableadas especiales.
- Una memoria asociativa ( memoria direccionable por contenido ) de registros de direcciones de página para determinar si la ubicación de memoria virtual deseada se encontraba en la memoria principal.
- canalización de instrucciones
Atlas no utilizaba un mecanismo de reloj síncrono —era un procesador asíncrono— , por lo que las mediciones de rendimiento no eran fáciles, pero a modo de ejemplo:
- Suma de registros de punto fijo : 1,59 microsegundos
- Suma de punto flotante , sin modificación : 1,61 microsegundos
- Suma de punto flotante, modificación doble : 2,61 microsegundos
- Multiplicación de punto flotante, modificación de doble precisión : 4,97 microsegundos
Código adicional
Una característica del Atlas era el "Extracode", una técnica que permitía implementar instrucciones complejas mediante software. Un hardware dedicado agilizaba la entrada y salida de la rutina extracode y el acceso a los operandos; además, el código de las rutinas extracode se almacenaba en la ROM, a la que se podía acceder más rápidamente que a la memoria principal.
Los diez bits superiores de una instrucción de máquina Atlas de 48 bits constituían el código de operación . Si el bit más significativo se establecía en cero, se trataba de una instrucción de máquina ordinaria ejecutada directamente por el hardware. Si el bit superior se establecía en uno, se trataba de un código adicional, implementado como un salto de subrutina especial a una ubicación en la memoria fija ( ROM ), cuya dirección se determinaba mediante los otros nueve bits. Se implementaron aproximadamente 250 códigos adicionales, de los 512 posibles.
Los códigos adicionales eran lo que hoy llamaríamos interrupciones o trampas de software . Se utilizaban para llamar a procedimientos matemáticos cuya implementación en hardware habría sido demasiado ineficiente , como el seno , el logaritmo y la raíz cuadrada . Aproximadamente la mitad de estos códigos estaban designados como funciones de supervisión, que invocaban procedimientos del sistema operativo . Ejemplos típicos serían "Imprimir el carácter especificado en la secuencia especificada" o "Leer un bloque de 512 palabras de la cinta lógica N". Los códigos adicionales eran el único medio por el cual un programa podía comunicarse con el supervisor. Otras máquinas británicas de la época, como la Ferranti Orion , contaban con mecanismos similares para acceder a los servicios de sus sistemas operativos.
Software
Atlas fue pionera en muchos conceptos de software que todavía se utilizan comúnmente hoy en día, incluido el Atlas Supervisor , "considerado por muchos como el primer sistema operativo moderno reconocible". [ 25 ]
Uno de los primeros lenguajes de alto nivel disponibles en Atlas se llamaba Atlas Autocode , contemporáneo de Algol 60 y creado específicamente para solucionar lo que Tony Brooker consideraba algunos defectos en Algol 60. Sin embargo, Atlas también era compatible con Algol 60 , así como con Fortran , COBOL y ABL (Atlas Basic Language, un lenguaje de entrada simbólica similar al lenguaje máquina). Al ser un ordenador universitario, era utilizado por un gran número de estudiantes, quienes tenían acceso a un entorno protegido de desarrollo de código máquina .
Varios de los compiladores fueron escritos utilizando el compilador Brooker Morris (BMCC) , considerado el primero de su tipo.
También tenía un lenguaje de programación llamado SPG (Generador de Programas del Sistema). En tiempo de ejecución, un programa SPG podía compilar más programa para sí mismo. Podía definir y usar macros . Sus variables estaban entre corchetes angulares y tenía un analizador de texto, lo que le daba al texto del programa SPG una semejanza con la forma Backus-Naur .
Desde sus inicios, Atlas fue concebido como una supercomputadora que incluiría un sistema operativo integral. El hardware incorporaba características específicas que facilitaban el funcionamiento del sistema operativo. Por ejemplo, las rutinas de código adicional y las rutinas de interrupción contaban con almacenamiento, registros y contadores de programa dedicados; por lo tanto, el cambio de contexto entre el modo de usuario, el modo de código adicional o el modo ejecutivo, o viceversa, era extremadamente rápido.
Véase también
- Computadoras Manchester – Serie de computadoras electrónicas de programa almacenado
- Atlas Supervisor – Primer sistema operativo
- Historia de la supercomputación
Referencias
- ↑ Lavington 1975 , pág. 34
- ↑ Lavington 1998 , págs. 44–45
- ↑ Hayes, John P. (1978), Arquitectura y organización de computadoras , McGraw-Hill, pág. 21, ISBN 0-07-027363-4
- ↑ "ORDENADORES Y CENTROS, EXTRANJERO: 2. Ferranti Ltd., Atlas 2 Computer, Londres Wl, Inglaterra" . Boletín Digital Computer . 16 (1): 13–15 . 1964. Archivado del original el 3 de junio de 2018.
- ↑ Lavington 1998 , pág. 43
- ↑ Lavington 1998 , pág. 44
- ↑ Lavington 1975 , págs. 30–31.
- ↑ Lavington 1975 , pág. 30.
- ↑ Lavington 1975 , pág. 31.
- ↑ El Atlas , Universidad de Manchester, archivado del original el 28 de julio de 2012 , consultado el 21 de septiembre de 2010.
- 1 2 3 Lavington 1975 , pág. 32.
- ↑ Lavington 1975 , pág. 33.
- 1 2 Lavington 1975 , pág. 34.
- 1 2 3 Lavington 1975 , pág. 35.
- ↑ Lavington 1975 , pág. 36.
- ↑ Lavington 1975 , pág. 37.
- 1 2 3 4 Lavington 1975 , pág. 38.
- ↑ Lavington, Simon (2012), La historia del Atlas (PDF) , pág. 7
- ↑ Lavington 1975 , pág. 39.
- ^ Bell y col. 1978 , págs.491 .
- ↑ "Hitos: La computadora Atlas y la invención de la memoria virtual, 1957-1962" . 19 de diciembre de 2022.
- ↑ Hayes, John P. (1978), Arquitectura y organización de computadoras , McGraw-Hill, pág. 375, ISBN 0-07-027363-4
- ↑ Cronin, DE (31 de enero de 1965). ICT Atlas 1 Manual de programación informática para el lenguaje Atlas Basic (ABL) (PDF) . Londres: International Computers and Tabulators Limited. pág. 12.1/1.
- ↑ "12. Otras instalaciones y técnicas" . El Atlas de las TIC I Manual de programación informática . Enero de 1965.
- ↑ Lavington 1980 , págs. 50–52
Bibliografía
- Edwards, Dai (verano de 2013), "Diseño y construcción de atlas" , Resurrection: The Bulletin of the Computer Conservation Society , 62 : 9–18 , ISSN 0958-7403
- Lavington, Simon (1980), Early British Computers , Manchester University Press, ISBN 0-7190-0803-4
- Lavington, Simon (1975), Historia de los ordenadores de Manchester , Swindon: The British Computer Society, ISBN 978-1-902505-01-5
- Lavington, Simon (1998), Historia de los ordenadores de Manchester (2.ª ed.), Swindon: The British Computer Society, ISBN 978-1-902505-01-5
- Bell, C. Gordon; Kotok, Alan; Hastings, Thomas; Hill, Richard (1978). "La familia PDP-10" (PDF) . Ingeniería informática: una visión de DEC sobre el diseño de sistemas de hardware . DEC.
Lecturas adicionales
- T. Kilburn; DBG Edwards; D. Aspinall (septiembre de 1959). "Suma paralela en computadoras digitales: un nuevo circuito de 'acarreo' rápido". Actas del IEE - Parte B: Ingeniería de radio y electrónica . 106 (29): 464– 466. doi : 10.1049/pi-b-2.1959.0316 .
- FH Sumner; G. Haley; ECY Chen. "La unidad de control central de la computadora "Atlas". Procesamiento de la información 1962, Actas del Congreso IFIP '62 . págs. 657–663 .
- Kilburn, T.; Edwards, DBG; Lanigan, MJ; Sumner, FH (abril de 1962). "Sistema de almacenamiento de un nivel" (PDF) . IRE Transactions on Electronic Computers (2): 223–235 . doi : 10.1109/TEC.1962.5219356 . Consultado el 16 de junio de 2023 .
- Kilburn, T. (1 de marzo de 1961). "El sistema operativo Atlas de la Universidad de Manchester, parte I: organización interna" . The Computer Journal . 4 (3): 222– 225. doi : 10.1093/comjnl/4.3.222 . ISSN 0010-4620 .
- Howarth, DJ (1 de marzo de 1961). "El sistema operativo Atlas de la Universidad de Manchester, parte II: descripción de los usuarios" . The Computer Journal . 4 (3): 226– 229. doi : 10.1093/comjnl/4.3.226 . ISSN 0010-4620 .
- T. Kilburn; RB Payne; DJ Howarth (1962). "El supervisor Atlas". Actas de la Conferencia Conjunta de Computación del Este del 12 al 14 de diciembre de 1961: Computadoras: clave para el control total de sistemas . Macmillan. págs. 279–294 . doi : 10.1145/1460764.1460786 .
- DJ Howarth; PD Jones; MT Wyld (noviembre de 1962). "El sistema de planificación Atlas" . The Computer Journal . 5 (3): 238– 244. doi : 10.1093/comjnl/5.3.238 .
- Raúl Rojas; Ulf Hashagen, eds. (2000). Los primeros ordenadores: historia y arquitecturas . MIT Press. ISBN 0-262-18197-5.
- MR Williams (1997). Historia de la tecnología informática . IEEE Computer Society Press. ISBN 0-8186-7739-2.
Enlaces externos
- El manual de referencia de Atlas Autocode fue archivado el 15 de mayo de 2020 en Wayback Machine.
- El documento del supervisor del Atlas (T Kilburn, RB Payne, DJ Howarth, 1962)
- http://bitsavers.informatik.uni-stuttgart.de/pdf/ict_icl/atlas/ (Varios documentos de referencia)
- Atlas Ferranti 1 y 2: Lista de referencias
- Los primeros ordenadores británicos
- Computadoras Ferranti
- Computadoras transistorizadas
- Introducciones relacionadas con la informática en 1962
- computadoras de 48 bits
- Colección de los Museos Nacionales de Escocia
- Historia de Manchester
- Departamento de Informática, Universidad de Manchester