proceso
En informática, un proceso es una instancia de un programa informático que se está ejecutando. Contiene el código del programa y su actividad actual. Dependiendo del sistema operativo (SO), un proceso puede estar formado por múltiples hilos de ejecución que ejecutan instrucciones de forma concurrente. Un programa de ordenador es una colección pasiva de instrucciones; un proceso es la ejecución real de esas instrucciones. Varios procesos pueden estar asociados al mismo programa; por ejemplo, abrir varias instancias del mismo programa suele significar que se está ejecutando más de un proceso. La multitarea es un método que permite que varios procesos compartan procesadores (CPU) y otros recursos del sistema. Cada CPU ejecuta una única tarea a la vez. Sin embargo, la multitarea permite a cada procesador cambiar entre las tareas que se están ejecutando sin tener que esperar a que termine cada tarea. Dependiendo de la implementación del sistema operativo, las conmutaciones pueden realizarse cuando las tareas realizan operaciones de entrada/salida, cuando una tarea indica que puede ser conmutada, o en interrupciones de hardware. Una forma común de multitarea es el tiempo compartido. El tiempo compartido es un método que permite una respuesta rápida para aplicaciones de usuario interactivas. En los sistemas de tiempo compartido, los cambios de contexto se realizan rápidamente. Esto hace que parezca que se están ejecutando varios procesos simultáneamente en el mismo procesador. La ejecución de varios procesos de forma aparentemente simultánea se denomina concurrencia. Por razones de seguridad y fiabilidad, la mayoría de los sistemas operativos modernos impiden la comunicación directa entre procesos independientes, proporcionando una funcionalidad de comunicación entre procesos estrictamente mediada y controlada.
