Ao manipular dados, na maioria das vezes, a chave é manter apenas os dados relevantes para o seu conjunto particular de tarefas e nada mais. Muitos dos dados expostos em /proc
são feitos para um único propósito, ou seja, uma ferramenta que precisa ter visibilidade, etc.
Considerando os comentários, eu diria 3 coisas sobre /proc/[number]/stat
:
- Os dados exibidos aqui são relevantes para funções e objetos de dados em
/usr/src/linux/fs/proc/array.c
. - Esses dados também são relevantes para
ps
. - Ao analisar os dados que estão aqui, você perceberá que não há nada aqui específico para o usuário. É tudo voltado para processos.
NOTA: para # 2. Esses são os dados do processo que são relevantes para ps
. Os processos pertencentes a um usuário são mantidos em uma estrutura de dados diferente dentro do Kernel em outro lugar.
Por outro lado, com /proc/[number]/status
, o comentário praticamente diz a você quais são esses dados, um ser humano lendo isso. Portanto, é provável que esse nó dentro do Kernel não sirva a nenhum outro propósito, a partir de uma perspectiva de ferramentas, para agrupar dados de outras fontes em um único local para o usuário consumi-lo.
Evidência adicional
Se você precisar de mais provas, olhe para essa pergunta que eu respondi há algum tempo, intitulado: / proc / meminfo MemTotal =? . Esta questão cobriu /proc/meminfo
e foi uma questão semelhante aqui também. Alguns dos dados são expostos durante a inicialização do Kernel sob dmesg
log output. No entanto, esses dados, embora relacionados à memória e percebidos como relevantes para /proc/meminfo
estavam ausentes, novamente porque não eram úteis para:
- o público-alvo de ferramentas que usariam
/proc/meminfo
- Não é relevante para as funções internas, métodos e estruturas de dados do Kernel que fizeram uso dos dados em
/proc/meminfo
.