Tarea en segundo plano (proceso en segundo plano): un proceso que se ejecuta en segundo plano, en segundo plano. Esto significa que el shell del sistema operativo que ejecuta un proceso en segundo plano no espera a que el proceso se complete o finalice, como lo hace con los programas regulares. El shell puede iniciar muchos más procesos inmediatamente después de iniciar un proceso en segundo plano, por lo que se ejecutarán al mismo tiempo. De hecho, los procesos se ejecutarán uno por uno, luego el otro, pero la velocidad de cambio entre procesos es demasiado rápida para la percepción humana, por lo que nos parece que se ejecutan simultáneamente. Los procesos de fondo típicos que se ejecutan en el sistema son los controladores de eventos y los servicios del sistema. Dentro de la memoria RAM asignada, se puede ejecutar cualquier número deseado de procesos.
Como regla general (por ejemplo, en UNIX), la división de procesos en segundo plano y en primer plano refleja solo la relación del proceso con el shell del sistema operativo y el controlador de terminal, y no los detalles de su ejecución dentro del entorno operativo y el despachador. .
Entonces, por ejemplo, un proceso en segundo plano, como regla, no tiene derecho a aceptar la entrada del usuario, cuando intenta hacerlo, se detiene y el shell del sistema operativo muestra un mensaje sobre esto al usuario.
El shell de UNIX subdivide los grupos de procesos que ejecuta en "primer plano", "fondo" y "suspendido", y admite la transferencia de grupos de procesos de una de las clases anteriores a otra. Esto se hace usando & (ampersand) al final de la línea de comando, el método abreviado de teclado Ctrl-Z (suspende el grupo de procesos actual en primer plano) y los comandos job, fg y bg.
La diferencia entre los procesos en segundo plano y los "daemons" (servicios) del sistema operativo UNIX es que el "daemon" pierde por completo su asociación con el terminal de usuario y el shell del sistema operativo, y a menudo continúa existiendo incluso después de la salida del proceso de shell que lo generó. . El proceso en segundo plano aún mantiene una asociación lógica con la terminal y el shell.
En los sistemas Unix , puede hacer que un proceso se ejecute en segundo plano ejecutándolo con un ampersand :
$ command &