Me di cuenta de que todas las instancias de terminales de pareja que inicio, ya sea dentro de una terminal de pareja o a través de un botón de enlace, tienen el mismo PID.
Por ejemplo, obtuve algo como
$ wmctrl -lp
<omitted lines that don't matter>
0x03c0001f 1 7411 <hostname> Terminal
0x03c06b9f 1 7411 <hostname> Terminal
0x03c07349 1 7411 <hostname> Terminal
0x03c073f4 1 7411 <hostname> Terminal
0x03c0749f 1 7411 <hostname> Terminal
0x03c0754c 1 7411 <hostname> Terminal
0x03c075f9 1 7411 <hostname> Terminal
0x03c076a6 1 7411 <hostname> Terminal
0x0340000b 1 <pid1> <hostname> xeyes
0x0460000b 1 <pid2> <hostname> xeyes
lo que muestra claramente que hay múltiples ventanas de Terminal, todas con el mismo PID. Como se indicó anteriormente, no importaba si el proceso se inició o no dentro de una terminal o haciendo clic en un enlace de la barra de menú . Tampoco importaba si iniciaba o no el proceso en segundo plano dentro de la terminal.
¿Cuál es la regla aplicada aquí, o "por qué es así"?
Mi entendimiento solía ser que cada comando que comenzaba en un shell obtendría un PID único.
¿No es poco práctico tener múltiples terminales con el mismo PID?
Ya no puedo matarlos individualmente por PID.
Editar:Versión del kernel:3.16.0-4-amd64
Respuesta aceptada:
Todas las instancias de Mate Terminal tienen el mismo PID porque, de hecho, son un solo proceso que muestra varias ventanas. Mate Terminal se ejecuta en un solo proceso porque esa es la forma en que está diseñada la aplicación. Cuando ejecuta el comando mate-terminal
, se pone en contacto con el proceso existente y le envía una instrucción para abrir una nueva ventana.
A partir de Mate Terminal 1.8.1, puede ejecutar mate-terminal --disable-factory
para abrir una nueva ventana en un nuevo proceso. Tenga en cuenta que esta opción se ha eliminado de la versión de Gnome en 3.10; No sé si los desarrolladores de Mate han decidido fusionar ese cambio. Consulte Ejecutar verdaderas instancias de múltiples procesos de gnome-terminal para una pregunta similar con respecto a Gnome-terminal.