Articulo de referencia

John Iliffe (diseñador de computadoras)

[https://www.cityoflondonschool.org.uk/item/730-john-kenneth-iliffe-class-of-1948 City of London School: John Kenneth Iliffe, Class of 1948] "},"alma_mater":{"wt":"St. John's Co...

John Kenneth Iliffe (18 de septiembre de 1931 – 16 de febrero de 2020) fue un diseñador de computadoras británico que trabajó en el diseño y la evaluación de computadoras que admitían protección de memoria granular y gestión de objetos. Implementó, evaluó y perfeccionó dichos diseños en la Rice Institute Computer , R1 (1958–61) y la ICL Basic Language Machine (1963–68). [ 4 ] [ 5 ] Una característica clave en las arquitecturas de ambas máquinas fue el control por parte del hardware de la formación y el uso de referencias de memoria, de modo que la memoria pudiera verse como una colección de objetos de datos de tamaños definidos cuya integridad está protegida de las consecuencias de errores en el cálculo de direcciones, como el desbordamiento de punteros de memoria (ya sea por accidente o intención maliciosa). [ 6 ]

Contribuciones técnicas

Iliffe asistió al curso de programación de EDSAC en Cambridge en 1952. Posteriormente, aprendió sobre informática trabajando en la oficina de servicios de IBM (Reino Unido) en Londres. En 1958, fue invitado a unirse al equipo que construía la computadora R1 en el Instituto Rice de Houston, donde se encargó del diseño e implementación del sistema operativo y el lenguaje. [ 7 ]  En los siguientes 30 años, puso en funcionamiento cuatro computadoras que demostraban y evaluaban nuevos conceptos de diseño.

La computadora Rice R1

Iliffe lideró el desarrollo del sistema operativo y el lenguaje de programación para la computadora Rice . Su diseño incluía una de las primeras implementaciones de asignación y gestión dinámica de memoria, lo que permitía a los programas adquirir almacenamiento bajo demanda y recuperarlo automáticamente cuando ya no era accesible. [ 8 ] [ 9 ]

En el R1 [ 7 ], Iliffe y sus colegas introdujeron un esquema de protección para todos los objetos de datos. La manipulación de referencias a la memoria (denominadas palabras clave ) se restringió al código privilegiado, lo que previno algunos tipos de errores de programa. Las palabras clave hacían referencia a vectores de elementos de datos, secuencias de instrucciones u otras palabras clave . El acceso al almacenamiento se realizaba mediante una referencia a una palabra clave, que se resolvía a una dirección convencional o a un contador de programa, lo que proporcionaba acceso directo al almacenamiento cuando era necesario. El sistema ofrecía funciones para crear, gestionar y actualizar palabras clave, por ejemplo, modificándolas para reflejar decisiones de gestión del almacenamiento. También admitía un lenguaje de programación algebraica (llamado Genie), que se implementó utilizando conceptos de diseño orientado a objetos en 1961. [ 10 ] El compilador Genie y el ensamblador asociado fueron inusuales al permitir que todo el sistema se tratara como una disciplina de gestión de objetos. Genie también fue uno de los primeros lenguajes en incluir operaciones intrínsecas sobre vectores y matrices reales y complejos.

La conocida estructura de almacenamiento vectorial de Iliffe para matrices multidimensionales e irregulares surgió del trabajo R1. Esta estructura utiliza una estructura de direccionamiento similar, pero sin imposiciones del sistema.

La máquina del lenguaje básico

A principios de la década de 1960, existía una fuerte necesidad de que las computadoras de propósito general permitieran la ejecución concurrente de múltiples programas de usuario, tanto mediante multiprogramación para optimizar el uso de los recursos de la computadora como mediante tiempo compartido para posibilitar la computación interactiva . Ambas necesidades requerían una arquitectura de computadora en la que el sistema operativo pudiera garantizar la separación, la seguridad y la integridad de varios programas que se ejecutaban simultáneamente. Parecía evidente que el modelo simplificado de arquitectura derivado del Princeton IAS, y seguido por todos los modelos de von Neumann, presentaría serias dificultades para satisfacer dicho requisito.

La Basic Language Machine (BLM), [ 5 ] construida y evaluada en el departamento de investigación de International Computers Limited (ICL) entre 1963 y 1968, [ 11 ] fue el primer sistema de propósito general que rompió por completo con la arquitectura Von Neumann . En lugar de basar la arquitectura en un único espacio de direcciones lineal, la BLM ofrecía direccionamiento de memoria segmentado, lo que permitía la gestión automática del almacenamiento y el acceso dentro de límites de seguridad precisos.

Iliffe adoptó la perspectiva de ingeniería de que debería ser posible ofrecer una manera, basada en las técnicas de gestión de memoria ya demostradas en el Rice R1, de garantizar la integridad de los programas concurrentes sin recurrir a mecanismos relativamente costosos que implican el intercambio frecuente de vectores de estado de proceso, como se observa en la mayoría de los demás sistemas. Desarrolló un diseño basado en el uso de palabras clave para representar todas las referencias de memoria. Una palabra clave incluía una dirección base , un límite que especificaba la longitud de un objeto de datos y cierta información de tipo . La representación interna de las palabras clave era opaca para los programas de usuario, pero se proporcionaban instrucciones de máquina específicas para manipularlas de manera que se mantuviera la estructura de datos . Esto representó un refinamiento sustancial de la arquitectura del Rice R1, que permitía la gestión eficiente de múltiples procesos, cada uno con un almacén de datos e instrucciones independiente con estructura de árbol.

El Rice R1 y el BLM fueron ejemplos de arquitecturas informáticas basadas en descriptores que surgieron en la década de 1960 [ 6 ], con el objetivo de proteger eficazmente los programas que se ejecutaban simultáneamente y de implementar de forma fiable lenguajes de alto nivel . Otro ejemplo importante fue la serie de ordenadores B5000 , desarrollada y comercializada por Burroughs Corporation . Todos estos ordenadores basados ​​en descriptores incluían mecanismos de hardware diseñados para admitir el direccionamiento fiable de segmentos de datos. Están estrechamente relacionados con las arquitecturas basadas en capacidades [ 6 ] que surgieron unos años después.

Paralelamente a la construcción del BLM, un equipo de evaluación independiente lo analizó en términos de (1) eficiencia del programa, (2) características operativas, (3) costos de codificación y depuración, y (4) sobrecarga del sistema. Para una comparación significativa, se utilizaron lenguajes de alto nivel heredados (Cobol, Fortran, gestión de archivos). Se demostró que, a pesar de la precisión del mecanismo de direccionamiento, no hubo una pérdida de eficiencia apreciable ni una sobrecarga adicional del sistema.

Levy [ 6 ] analiza el impacto más amplio de las arquitecturas informáticas basadas en descriptores con referencia tanto al Burroughs B5000 como al BLM (p.  38) "... independientemente de su longevidad, estas máquinas demostraron la viabilidad de utilizar descriptores y segmentación para aumentar considerablemente la flexibilidad de programación para el usuario, los compiladores y el sistema operativo". Levy también señala que "un excelente análisis del BLM en el contexto de los sistemas de capacidades modernas aparece en Advanced Computer Design de Iliffe ". [ 12 ]

El diseño BLM fue rechazado por la dirección de ICL en una revisión interna de opciones para seleccionar una nueva arquitectura para los productos mainframe de ICL en diciembre de 1969. [ 13 ]

En el año 2000, Iliffe recibió el premio IEEE Harry H. Goode Memorial Award "Por su trayectoria profesional en el diseño y la evaluación de sistemas informáticos".

Los cambios en la tecnología de semiconductores durante los 30 años posteriores al desarrollo del BLM propiciaron mejoras en su arquitectura. Ante la falta de financiación para la investigación, estas mejoras se evaluaron principalmente mediante simulación con microprocesadores de bajo coste, y el libro Advanced Computer Design de Iliffe [ 12 ] las describe con cierto detalle.

Vida personal

  • Formación académica: Beca Carpenter para la City of London School (1945-1948). Licenciatura en Matemáticas en el St John's College de Cambridge (1949-1952).
  • Servicio: Marina Real Británica 1953–1956. Teniente instructor.
  • Deportes: Presidente del Club de Natación Otter 1990–1996.
  • Iliffe estuvo casado con Dorothy Bannister desde 1955 hasta su fallecimiento en 2015. Tuvieron tres hijos: Louise, Jonathan y Kate.

Referencias

  1. City of London School: John Kenneth Iliffe, promoción de 1948
  2. "Premio en memoria de Harry H. Goode | Sociedad de Computación IEEE" . 4 de abril de 2018.
  3. "John Iliffe | IEEE Computer Society" . 27 de marzo de 2018.
  4. Iliffe, JK (1 de agosto de 1969). "Elements of BLM" . The Computer Journal . 12 (3): 251– 258. doi : 10.1093/comjnl/12.3.251 . ISSN 0010-4620 . 
  5. 1 2 Iliffe, JK (1968). Principios básicos de las máquinas . Londres: MacDonald. ISBN 9780356023274.
  6. 1 2 3 4 Levy, Henry M. (1984). Sistemas informáticos basados ​​en descriptores . Digital Press . Recuperado el 8 de mayo de 2019 .Capítulo 2 Arquitecturas de descriptores iniciales, Capítulo 3 Arquitecturas de capacidades iniciales
  7. 1 2 Thornton, Adam. "Una breve historia de la computadora Rice 1959-1971" . Archivado del original el 24 de febrero de 2008. Recuperado el 13 de marzo de 2019 .(escrito en su mayoría en [o antes de] 1994)
  8. Iliffe, JK (23 de enero de 1969). Técnicas de gestión de tiendas . Archivo del Museo de Historia de la Computación, número de catálogo 102726224 (Informe técnico). Colección Edward Feustel sobre el Proyecto Informático de la Universidad Rice . Recuperado el 9 de junio de 2019 .
  9. Iliffe, JK; Jodeit, Jane G. (1 de noviembre de 1962). "Un esquema de asignación dinámica de almacenamiento" . The Computer Journal . 5 (3): 200– 209. doi : 10.1093/comjnl/5.3.200 . ISSN 0010-4620 . 
  10. JK Iliffe (1961). El uso del sistema Genie en cálculos numéricos . Annual Review in Automatic Programming. Vol. 2. Elsevier Science. pp. 1–28 . ISBN   978-1-4832-2282-0Consultado el 13 de marzo de 2019 .{{cite book}}: Incompatibilidad de ISBN/Fecha ( ayuda )
  11. Scarrott, Gordon (1995). "De las líneas de retardo en modo torsional a DAP" . Computer Resurrection . 12 (Verano de 1995). ISSN 0958-7403 . Consultado el 8 de mayo de 2019 . 
  12. 1 2 Iliffe, JK (1982). Diseño avanzado de computadoras . Prentice Hall. ISBN 978-0130112545.
  13. Buckle, JK (1978). La serie ICL 2900 (PDF) . MacMillan. ISBN 978-0333219171Archivado del original (PDF) el 31 de octubre de 2018.

Lecturas adicionales

  • "Guía de la colección Edward Feustel sobre el Proyecto Informático de la Universidad Rice" (PDF) . Museo de Historia de la Computación. 1958–89 . Consultado el 15 de mayo de 2019 .
  • La Universidad Rice presenta “La computadora completa”, 1961 , video de YouTube (contribución de Iliffe, alrededor del minuto 15:00).
  • Notas sobre el compilador Genie para la computadora de la Universidad Rice . Universidad Rice. Enero de 1964. Consultado el 14 de marzo de 2019 .{{cite book}}: |website=ignorado ( ayuda ) (Manual de referencia para el lenguaje Genie, con información sobre el entorno de ejecución y programas de utilidad relacionados. Atribuido por Iliffe a Jane G. Jodeit).
  • Jodeit, Jane (noviembre de 1968). "Organización del almacenamiento en sistemas de programación" . Communications of the ACM . 11 (11): 741– 746. doi : 10.1145/364139.364152 . S2CID 17303622 . Describe el sistema de representación de programas y datos basado en palabras clave que se utiliza en el ordenador de la Universidad Rice.
  • Iliffe, John (agosto de 1969). "Elementos de BLM" . The Computer Journal . 12 (3): 251– 258. doi : 10.1093/comjnl/12.3.251 .Describe los principios arquitectónicos, la organización del almacenamiento y las funciones de programación de la máquina experimental de lenguaje básico.
  • Ageu C. Pacheco. Estudio de memorias caché para una máquina paralela/planar. Tesis doctoral, Universidad de Londres, 1989.