O processo criado pelo kernel é conhecido como “Processo pai,”E todos os processos derivados do processo pai são denominados como“Processos infantis.”Um único processo pode consistir em vários processos infantis com um único PID Mas com o mesmo PPID.
Uma pergunta pode ocorrer na mente do iniciante, qual é a diferença entre PID e PPID?
Já discutimos PID Na maioria dos nossos artigos, se você é o novo, não se preocupe!
Nos sistemas Linux, vários processos são executados por vez. Às vezes, um processo pode ter um único fio (unidade de execução dentro de um processo) ou vários threads. Processos têm estados diferentes; Eles poderiam estar esperando, prontos ou em estado de corrida. É tudo sobre como o usuário ou o kernel os prioriza. Portanto, esses processos são identificados pelos números únicos que chamamos ID do processo (PID). Números exclusivos para os processos pais são chamados de PPIDs e cada processo pai pode ter vários processos filhos com seus IDs de processo exclusivos. Os PIDs dos processos filhos são diferentes, pois representam unidades de execução separadas, mas têm o mesmo ID do processo pai (PPID).
Nós precisamos PPID Quando o processo da criança cria alguns problemas e não funciona corretamente. Nesse caso, pode afetar o funcionamento de outros processos, e o sistema também pode ser afetado. Aqui, para interromper o processo que está funcionando continuamente, é necessário matar seu processo pai.
Vamos verificar como podemos encontrar o PPID:
Como encontrar ID do processo pai (PPID) no Linux:
Temos algumas abordagens para encontrar o PPID de um processo de execução nos sistemas Linux:
Como encontrar o PPID usando o comando pstree no Linux:
O "PSTEE”O comando é uma boa abordagem para identificar o ID do processo pai (PPID), pois mostra o relacionamento entre pais e filhos em uma hierarquia de árvores.
Digite o simplesmente “PSTEE”Comando com o“-p”Opção no terminal para verificar como ele exibe todos os processos pais em execução, juntamente com seus processos filhos e respectivos PIDs.
$ pSTree -P
Ele mostra o ID do pai junto com os IDs de processos filhos.
Vamos verificar um exemplo de "Mozilla Firefox" para obter seu PPID junto com a hierarquia completa do processo. Execute o seguinte comando no terminal:
$ PSTEE -P | Grep "Firefox"
(grep é uma ferramenta de linha de comando que ajuda a procurar string específica)
Nos resultados mencionados, podemos ver que 3528 é o ppid do processo “Raposa de fogo,”E todos os outros são processos infantis.
Para imprimir apenas o ID do processo pai no terminal, execute o comando mencionado:
$ PSTEE -P | Grep “Firefox” | Cabeça -1
Como encontrar o PPID usando o comando ps:
O "ps”O utilitário de comando é outra maneira de processar informações do“/Proc”FileSystem e monitorá -los.
Através deste comando, o usuário também pode encontrar o PPID e Pids de um processo de corrida.
Execute o seguinte “ps”Comando junto com o“ef”Opção para mostrar informações detalhadas de processos, incluindo PPID:
$ ps -ef
Se você quiser exibir o PPID de um processo específico com detalhes, execute o mencionado “ps”Comando com o“grep”:
$ ps -ef | Grep "Firefox"
(o "-f”A opção é usada para listar os detalhes do processo)
E para obter apenas o PPID de "Raposa de fogo,”Use a seguinte sintaxe:
$ ps -e | grep [process_name]
Então, encontre o PPID de "Raposa de fogo”Usando o comando:
$ ps -e | Grep "Firefox"
Conclusão:
A cada execução de um programa, o kernel cria um processo que carrega detalhes de execução na memória. Este processo criado é conhecido como o processo pai tendo threads simples ou múltiplos. Cada processo atribuiu o único PPID e Pids automaticamente pelo kernel.
Enquanto trabalhava com o sistema Linux, deve -se saber sobre o PPIDS dos processos de execução. Um problema com o processo infantil pode afetar os outros processos. Nesses casos, podemos precisar matar o processo pai.
O PPIDS de processos de execução podem ser identificados usando várias maneiras. As abordagens mais simples são através do “ps"Comando e"PSTEE”Comando.
Vimos acima como podemos descobrir o PPID de um processo específico usando essas duas ferramentas de comando.