/proc
é apenas outro sistema de arquivos, as entradas finais dentro dele são criadas exatamente como em qualquer outro sistema de arquivos. Se você criar um processo, a entrada /proc/<pid>/
será criada para conter os dados no processo. Quando esse processo abre um descritor de arquivo, uma entrada é criada dentro de /proc/<pid>/fd/
.
Quanto ao conhecimento útil, não tive oportunidade de usar o conteúdo de /proc/<pid>/
para nada, mas espero que um dia eu possa. Depende muito do que é útil para você. Sysadmin acharia coisas diferentes interessantes do que um especialista em segurança, do que um administrador do banco de dados. Ainda assim, é bom saber que há esse tipo de dados disponíveis. Um dia pode vir a calhar, mas eu não investiria muito tempo aprendendo as porcas e parafusos desse problema. Isso é porque para mim, pessoalmente, isso seria um investimento de tempo ruim. Sua milhagem pode variar:).
Editar : não consegui ajustar minha resposta ao comentário de tylerl dentro de um comentário, por isso entra aqui.
tylerl, você está certo e errado ao mesmo tempo, dependendo de como alguém olha para o problema (pense: dualidade onda / partícula da luz). Você certamente está certo quando diz que procfs
não é um sistema de arquivos "real". Você não pode criar diretórios ou arquivos ou armazenar dados nele. Sim, é uma API que permite acesso a algumas estruturas de kernel, definitivamente não cria estruturas em disco. Não tenho tanta certeza sobre as estruturas na memória (onde é o tempo [cm] dos diretórios em /proc
armazenados?), Mas admito a ignorância e não discuto o ponto.
Por outro lado, quando você deseja explorar procfs
, observe o que está lá e aprenda com entradas lá, você pode tratá-lo como "apenas outro sistema de arquivos". Você pode ler alguns "arquivos" e pode escrever (geralmente valores estritamente definidos) em alguns "arquivos". Quando você cria um processo (por exemplo, execute bash &
), uma entrada /proc/<pid>
terá a data de criação correspondente à hora da criação do processo. Eu acho que para o modelo "veja o que está lá", uma boa aproximação é "esta entrada é criada no sistema de arquivos no momento da criação do processo". Claro, estritamente falando, pode ser uma mentira. Ainda assim, é uma mentira muito útil se você não precisa de toda a montanha da verdade despejada em você.