Articulo de referencia

Euclides concurrente

Concurrent Euclid ( ConEuc ) es una variante concurrente del lenguaje de programación Euclid, diseñado por James Cordy y Ric Holt , entonces en la Universidad de Toronto , en 19...

Concurrent Euclid ( ConEuc ) es una variante concurrente del lenguaje de programación Euclid, diseñado por James Cordy y Ric Holt , entonces en la Universidad de Toronto , en 1980. ConEuc fue diseñado para software de sistema concurrente, de alto rendimiento y gran fiabilidad , como sistemas operativos , compiladores y sistemas de microprocesadores embebidos . El sistema operativo TUNIS , una variante de Unix , se implementó completamente en Concurrent Euclid. ConEuc extiende un subconjunto básico de Euclid con procesos y monitores (según lo especificado por CAR Hoare ), así como construcciones de lenguaje necesarias para la programación de sistemas, incluyendo compilación separada, variables en direcciones absolutas, convertidores de tipos, enteros largos y otras características.

ConEuc se implementó mediante un compilador pequeño (50 k bytes), rápido y portátil, que se autocompilaba y contaba con generadores de código reemplazables. Se desarrollaron generadores de código de alta calidad para varios ordenadores, incluidos el PDP-11 , el VAX-11 , el Motorola 68000 y el Motorola 6809, que producían código comparable al de los mejores compiladores de C. Los programas concurrentes de Euclid que utilizaban concurrencia podían ejecutarse en una máquina sin hardware (con soporte de un pequeño núcleo de lenguaje ensamblador) o en modo simulado como un proceso ordinario que se ejecutaba bajo un sistema operativo.

El lenguaje de programación Turing es un descendiente directo de Concurrent Euclid, y su variante Turing Plus acabó reemplazando a ConEuc en la mayoría de las aplicaciones.

Referencias

  • JR Cordy y RC Holt 1980. Especificación de Euclid concurrente. Informes técnicos CSRI-115 (julio de 1980) y CSRI-133 (agosto de 1981), Instituto de Investigación de Sistemas Informáticos, Universidad de Toronto. 54 páginas.
  • RC Holt 1982. Euclides concurrente, el sistema Unix y Túnez. Addison-Wesley 1982. 323 páginas.
  • RC Holt 1982. Una breve introducción a Euclides concurrente. ACM SIGPLAN Notices 17, 5 (mayo de 1982), 60-79.
  • RC Holt 1982. Tunis: un sistema similar a Unix escrito en Concurrent Euclid. SIGOPS Operating Systems Review 16, 1 (enero de 1982), 4-5.