O sistema de arquivos proc (do inglês proc filesystem - procfs) é um sistema de
arquivos especial em sistemas operacionais do tipo Unix que apresenta informações
sobre processos e outras informações de sistema em uma estrutura hierárquica semelhante a arquivos, fornecendo um método mais conveniente e padronizado para acessar dinamicamente dados de processos armazenados no núcleo do que os métodos de rastreamento tradicionais ou acesso direto à memória do núcleo. Normalmente, ele é mapeado para um ponto de montagem chamado /proc no momento da inicialização. O sistema de arquivos proc age como uma interface para estruturas de dados internas no núcleo. Ele pode ser usado para obter informações sobre o sistema e para alterar certos parâmetros do núcleo em tempo de execução (sysctl).
Muitos sistemas operacionais do tipo Unix suportam o sistema de arquivos proc,
incluindo Solaris, IRIX, Tru64 UNIX, BSD, Linux, IBM AIX, QNX e o Plan 9 from Bell Labs. O OpenBSD abandonou o suporte na versão 5.7, lançada em maio de 2015.
O núcleo do Linux estende-o para dados não relacionados a processos.[1]
O sistema de arquivos proc fornece um método de comunicação entre o espaço do
kernel e o espaço do usuário. Por exemplo, a versão GNU do utilitário de relatório de processos ps usa o sistema de arquivos proc para obter seus dados, sem usar nenhuma chamada de sistema especializada.