O que você está vendo aqui é bem específico do mate-terminal
em si, embora geralmente use alguma infraestrutura compartilhada do GNOME / GTK + que você também pode encontrar em outros aplicativos (você mencionou pcmanfm
também.)
Quando você inicia uma nova cópia de mate-terminal
, talvez de um binário diferente, ele cria um novo processo para ele. Mas mate-terminal
está programado para conectar-se ao D-Bus e tentar procurar uma "fábrica". Nesse caso, ele passará os argumentos para o que iniciar no terminal e fará com que a "fábrica" o controle, depois encerrará o processo. novo processo. (Se não houver fábrica, ela se registrará como a fábrica, é por isso que o primeiro processo iniciado acabará gerenciando todos os terminais.)
A "fábrica" é encontrada por meio do caminho do D-Bus, /org/mate/Terminal/Factory
, que é código-morto no binário. (Assim, replicado em outras cópias do binário.)
No caso de mate-terminal
especificamente, você pode desabilitar esse comportamento passando a ele um argumento de linha de comando --disable-factory
. (Veja a página de manual para mais detalhes.)
Isso é bastante exclusivo de como mate-terminal
funciona. Em particular, pcmanfm
não faz isso da mesma maneira. Não está claro se pcmanfm
suporta uma maneira de iniciar um processo separado ou se a única maneira de funcionar é comunicando-se por meio do D-Bus com uma instância existente. (Você teria que olhar para pcmanfm
para ver se funciona).