Programa de vida en segundo plano

Programa de vida en segundo plano

Si inicia un programa en segundo plano en la terminal con la opción &. ¿Se detendrá cuando cierres la terminal?

Respuesta1

Se detiene cuando tucolgarla terminal. Los terminales no necesariamente tienen el concepto de sercerrado.

con una terminalprograma emulador, no hay nada real colgado, pero cerrar el programa del emulador provoca un bloqueo del terminal emulado. (Más estrictamente: cerrar el lado maestro del dispositivo pseudoterminal califica como un bloqueo del terminal en el lado esclavo). No todos los programas emuladores tienen la noción de estar cerrados. El que está integrado en el núcleo del sistema operativo y proporciona la información del núcleo.terminales virtuales, no se puede "cerrar", por ejemplo.

Con un terminal real, hay un puerto serie con una línea de detección de operador y una interrupción real del módem que puede ocurrir si el usuario de acceso telefónico en el terminal remoto cuelga la conexión telefónica.

Todo esto se remonta a la época de los sistemas de tiempo compartido con terminales remotas donde se facturaba a los usuarios por su uso. Si uno perdía accidentalmente la conexión telefónica, seguramente no quería que le facturaran los programas que aún se estaban ejecutando, potencialmente hasta el próximo reinicio del sistema. Por el contrario, los administradores de sistemas y otros usuarios no querían que los programas siguieran ejecutándose y conectados a terminales ahora teóricamente libres que luego pudieran asignarse a otros usuarios de acceso telefónico.

Mucho ha cambiado desde entonces. El control de trabajo BSD, para empezar, inspiró cambios en la distribución de la señal de colgar y la introducción de la noción de unlíder de sesiónque está a cargo de los trabajos dentro de una sesión de inicio de sesión y cuya muerte se considera un golpe demoledor para esos trabajos. Hemos obtenido inicio de sesión remoto a través de Internet y la idea de unSesión de inicio de sesión GUI. Y los programas de emulador de terminal se han vuelto tan frecuentes que la gente los confunde con los terminales que son.emulando.

Pero la idea fundamental sigue siendo que, en el caso normal, los procesos de usuario finalizan (de alguna manera, incluso a través de la mediación de un líder de sesión) cuando cesa su sesión terminal.

Respuesta2

VisitaEjecutar programas en segundo plano desde la terminalo¿La forma más eficiente de iniciar y separar un programa del terminal?

Si inicia un programa en segundo plano en la terminal con la opción &. ¿Se detendrá cuando cierres la terminal?

Creo que cerrar gnome-terminalhaciendo clic en el botón cerrar puede provocar la detención o eliminación de ese programa.Perosi cierras la terminal porexitcomando que el programa no se cerrará/detendrá/matará.

Respuesta3

Sí, se detendrá. Para evitar que el programa se detenga, utilice nohup.

Por ejemplo, nohup firefox > /dev/null 2>&1 &permitirá ejecutar Firefox en segundo plano sin cerrar y evitará que se muestren errores/salidas en la consola.

información relacionada