Como o / proc / self é implementado no Linux?


19

Eu estava mexendo no /procsistema de arquivos no Linux e me deparei com isso /proc/self, que é um link simbólico para o diretório de processos do processo atual. Eu gostaria de saber como é implementado. Uma solução seria alterar esse link simbólico em todas as alternâncias de contexto , mas isso é obviamente muito caro, pois envolve acesso ao disco.

Respostas:


20

http://lxr.linux.no/linux+v3.2.9/fs/proc/base.c#L2482 é a implementação atual.

O procsistema de arquivos é totalmente virtual e é implementado para que o VFS interno readlinkdelegue para o local certo para links simbólicos especiais. Assim, calcula para que selfpontos quando é lido / percorrido, nem todas as alternâncias de contexto.


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.