Programación orientada a procesos - Process-oriented programming

La programación orientada a procesos es un paradigma de programación que separa las preocupaciones de las estructuras de datos y los procesos concurrentes que actúan sobre ellas. Las estructuras de datos en este caso son típicamente persistentes, complejas y de gran escala, el tema de aplicaciones de propósito general, en contraposición al procesamiento especializado de conjuntos de datos especializados que se ven en aplicaciones de alta productividad (HPC). El modelo permite la creación de aplicaciones a gran escala que comparten parcialmente conjuntos de datos comunes. Los programas se descomponen funcionalmente en procesos paralelos que crean y actúan sobre datos compartidos lógicamente.

El paradigma se inventó originalmente para las computadoras paralelas en la década de 1980, especialmente las computadoras construidas con microprocesadores transputadores por INMOS o arquitecturas similares. Occam fue uno de los primeros lenguajes orientados a procesos desarrollados para Transputer.

Algunas derivaciones han evolucionado del paradigma de transmisión de mensajes de Occam para permitir una eficiencia uniforme al transferir aplicaciones entre computadoras paralelas de memoria distribuida y memoria compartida . El primer ejemplo derivado de este tipo aparece en el lenguaje de programación Ease diseñado en la Universidad de Yale en 1990. Desde entonces han aparecido modelos similares en la combinación flexible de bases de datos SQL y lenguajes orientados a objetos como Java , a menudo denominados modelos relacionales de objetos y ampliamente utilizados en sistemas distribuidos a gran escala en la actualidad. Es probable que el paradigma aparezca en las computadoras de escritorio a medida que los microprocesadores aumentan la cantidad de procesadores ( multinúcleo ) por chip.

El modelo Actor podría describirse de manera útil como un tipo especializado de sistema orientado a procesos en el que el modelo de paso de mensajes está restringido al caso fijo simple de una cola de entrada infinita por proceso (es decir, actor), a la que cualquier otro proceso puede enviar mensajes. .

Ver también

Referencias

enlaces externos