Processos

Estados, espaço de endereçamento, fork, exec, wait, descritores e saída.

TLDR

Perguntar sobre esta página

ChatGPTClaudePerplexityGrokGeminiCopiar e abrirDeepSeekCopiar e abrir

Processo

Execução com PID e estado próprios. O PCB é gestão no núcleo; o espaço de endereçamento é código e dados do programa.

  • Zombie: terminou e já não executa; liberta a memória de execução, mas resta uma entrada na tabela do núcleo com PID e estado até wait o recolher.
  • Órfão: pai terminou, filho vivo; adotado por init ou subreaper.
  • Mesmo endereço virtual em dois processos não prova partilha física.

fork, exec e espera

Retorno de forkSignificado
-1falha
0filho
PIDpai
  • Dados privados ficam logicamente separados (COW); descritores herdados partilham posição.
  • Desenha uma bifurcação por processo que chega a cada fork: nn forks de todos dão 2n2^n; filhos que saem logo quebram a progressão.
  • exec substitui a imagem no mesmo PID; sucesso não retorna. execlp leva argumentos soltos, execvp vetor terminado em NULL; "ls -l" junto não é analisado.
  • Recolha: cria todos, guarda PIDs, espera com waitpid repetindo em EINTR, interpreta com WIFEXITED/WEXITSTATUS antes de avançar.
  • No filho após exec falhado: _exit, não exit nem return, para não repetir limpezas herdadas. fflush antes de fork evita saída duplicada.

Árvores e trabalhadores.

À tua maneira

Aparência

Modo de cor
Tema
Cor de destaque

Leitura

Fonte de leitura

Álgebra, lógica e uma ideia de cada vez.

Código

Fonte do código

Navegação

Cursor de leitura, sem edição. h, j, k, l movem; / pesquisa nesta página. v seleciona caracteres; V seleciona linhas; y copia. Tab permite destacar ou comentar. Espaço ou Enter abre blocos recolhíveis. Nos cartões, h, j, k, l mudam o foco.

CSS personalizado

Ativa uma sugestão ou guarda o teu CSS. Só muda este navegador.

Usa --page, --text e --accent para acompanhar o tema.

Seletores e recuperação

.site-header, .prose, .course-card, [data-reading-history], [data-playground] e .page-actions.

Abre a aparência com a tecla vírgula ou no rodapé. Se o CSS esconder os controlos, abre esta página sem CSS personalizado.

Pesquisar

Escreve para pesquisar em todo o site.

para escolher · Enter para abrir · Esc para fechar

Copiar fórmula

A cópia automática não está disponível. Copia o LaTeX abaixo.

Pesquisar nesta página

Enter procura · n / N repetem · Esc cancela. Ctrl / Cmd K pesquisa todo o site.

Atalhos de teclado

Clica numa tecla para a mudar. Esc cancela. Backspace desativa.

PesquisarCtrl / Cmd K

Os atalhos não interferem enquanto escreves. Tab e Enter funcionam sempre.