Perguntas sobre 'fork'

1
resposta

Como dois endereços virtuais idênticos podem apontar para endereços físicos diferentes?

Após uma chamada fork () no Linux, dois processos (um sendo filho do outro) compartilharão a memória heap alocada. Essas páginas alocadas são marcadas como COW (copy-on-write) e permanecerão compartilhadas até que o processo as modifique. Nesse...
06.10.2015 / 05:31
1
resposta

Como o kernel sabe qual descritor de arquivo para gravar dados após fork () em um servidor concorrente?

Arquitetura cliente / servidor simultânea básica: Há um loop principal atendendo solicitações em uma porta (por exemplo, 3000), depois de aceitar a conexão, o servidor gera um processo filho que acaba tendo acesso aos descritores de arquivo onde...
04.03.2014 / 23:27
1
resposta

O garfo SSH mata a conexão

Estou usando um script Linux que tem a tarefa de encaminhar o controle do sistema para o suporte remoto. Nesse script, um dos comandos é um comando de encaminhamento de porta ssh que encaminhará a porta do fluxo de vídeo ao vivo de uma câmera re...
19.10.2014 / 11:58
1
resposta

Quais são as semânticas de obter um EADDRINUSE quando nenhum soquete de escuta está ligado, mas as conexões estão abertas

Considere um processo pai que conclua um socket/bind/accept e que bifurque os filhos com esse soquete aberto para que eles se comuniquem, enquanto o pai continua aceitando conexões. Esse processo pai é então morto. Outro processo agora ten...
14.10.2014 / 13:18
2
respostas

Como limitar o número de processos que um usuário pode criar?

Acho que tenho um programa que cria incontáveis garfos de si mesmo (não intencionalmente, espero). Eu gosto de testar isso, mas não consigo matar a máquina, então como eu poderia limitar o número de processos para executar isso de uma maneira...
07.03.2014 / 18:38
1
resposta

Systemd timeout porque não detecta daemon bifurcando

Atualmente estou desenvolvendo um daemon systemd. O problema que estou enfrentando é que o daemon é morto 1m30s após ser lançado porque o forking não é detectado. Estou usando a função int daemon(int nochdir, int noclose) para daemonizar o...
31.10.2017 / 11:41
1
resposta

Processar o sinalizador 1: Bifurcado mas não exec (caso de uso?)

Na página man de ps, ele lista o sinalizador de processo 1 como "processo bifurcado, mas não exec". O que seria um caso / situação de uso comum para um processo estar nesse estado?     
25.02.2016 / 14:56
2
respostas

Por que os descritores de arquivos são compartilhados entre processos bifurcados?

Quando nós fork() um processo, o processo filho herda os descritores de arquivo. A questão é, por quê? Como eu estou vendo, compartilhar o descritor de arquivos é uma dor de cabeça quando todo processo está tentando rastrear onde o ponteir...
31.01.2018 / 11:22
1
resposta

script de wrapper: fork: retry: nenhum processo filho

"myapplication" precisa de alguma configuração ou limpeza, por isso uso o seguinte script de wrapper: #!/bin/bash echo "Do important set up stuff" myapplication echo "Clean up" e colocá-lo no meu caminho, chamado "myapplication" por isso,...
25.07.2016 / 16:41
2
respostas

Por que o shell não está esperando por um processo filho de um comando depois que o comando sai?

Eu tenho aprendido sobre processos UNIX e não consegui entender um ponto. Digamos que temos código assim, void fork_child() { if (fork() == 0) { /* Child */ printf("Running Child, PID = %d\n", getpid()); wh...
20.02.2018 / 19:32