A data processing system stores information in tuple space as tuples that
are accessible by multiple entities. Methods, apparatus, computer-readable
media, and data structures provide efficient extensions to tuple space
coordination languages for example Linda, that increase concurrency by
lessening tuple removal, without requiring compile time analysis, altering
existing primitives, or adding new primitives. Traces are used to analyze
tuple space access in distributed systems, resulting in optimizations
based upon certain conditions which, if met, enable a tuple to remain
visible in tuple space without blocking, so that other processes can
continue to read the tuple while a first process is updating the tuple. A
run-time optimization modifies the conditions if the execution is in a
closed system that is known not to intentionally contain deadlock, further
improving performance.
Un sistema de proceso de datos almacena la información en espacio del tuple como tuples que sean accesibles por las entidades múltiples. Los métodos, los aparatos, los medios legibles por computador, y las estructuras de datos proporcionan extensiones eficientes a las idiomas por ejemplo Linda de la coordinación del espacio del tuple, que aumentan concurrencia disminuyendo retiro del tuple, sin requerir compilan análisis del tiempo, alterando primitivos existentes, o agregando nuevos primitivos. Los rastros se utilizan para analizar el acceso del espacio del tuple en sistemas distribuidos, dando por resultado las optimizaciones basadas sobre ciertas condiciones que, si están resueltas, permitan a un tuple seguir siendo visible en espacio del tuple sin el bloqueo, de modo que otros procesos puedan continuar leyendo el tuple mientras que un primer proceso está poniendo al día el tuple. Una optimización run-time modifica las condiciones si la ejecución está en un sistema cerrado que se sepa para no contener intencionalmente callejón sin salida, funcionamiento que mejora adicional.