Qual chamada do sistema cria o processo pai?

Qual chamada do sistema cria o processo pai?

Meu entendimento é que forké a chamada do sistema que cria um novo processo clonando o processo pai. Pelo que cria o processo pai? Se estiver usando uma biblioteca C para criar vários processos, qual foi a chamada do sistema para criar o primeiro processo? Por exemplo ao executar./main.o

Responder1

O próprio Kernel contém uma chamada interna para execve()criar o processo 1 (init), que nunca termina.

Init() é a raiz de toda a árvore de processos. Ele começa bifurcando processos para todos os serviços conhecidos e outras tarefas configuradas, e para todos os dispositivos de login.

Responder2

Quando você executa seu programa a partir de um shell, o shell é seu processo pai.

O shell chama fork()para criar um novo processo filho e, nesse novo processo, chama um membro da exec()família para começar a executar seu programa.

Se o seu programa for iniciado por algum outro processo (não shell), a sequência será a mesma.

Obviamente, isso tem que começar em algum lugar: o ancestral final de todos os processos é o initprocesso (PID 0), que é iniciado magicamente pelo kernel para iniciar o espaço do usuário.

informação relacionada