Há pouca relação entre /proc/sys
e /sys
além do fato de que ambos são interfaces de kernel e uma coincidência de nomes.
/proc/sys
é uma interface para sysctl , que são parâmetros de configuração do kernel. Ler ou modificar /proc/sys/foo/bar
é equivalente a obter ou definir o foo.bar
sysctl. Os valores de Sysctl são organizados por categorias semânticas, eles não estão intrinsecamente relacionados à estrutura do kernel. Muitos valores de sysctl são configurações presentes em todos os sistemas Linux, independentemente de quais drivers ou recursos são compilados; alguns estão relacionados a recursos opcionais (por exemplo, determinados protocolos de rede), mas nunca a dispositivos de hardware específicos.
/sys/module
é, como o nome indica, uma interface para os módulos do kernel. Cada diretório corresponde a um módulo do kernel. Você pode ler e, às vezes, modificar os parâmetros do módulo foo
escrevendo para /sys/module/foo/parameters/*
.
Componentes que são carregados no kernel lêem seus parâmetros a partir da linha de comando do kernel. Esses parâmetros não podem ser definidos no tempo de execução (pelo menos não através de uma interface gerada automaticamente como /sys/module
: o componente pode expor uma interface personalizada para isso).