Muito boa descrição do problema.
Com base no que você disse, acho que o que você está vendo é o uso de placas em alta. Uma boa experiência seria executar um cat /proc/meminfo
e cat /proc/slabinfo
em um atraso de 3 segundos enquanto você mergulha na hierarquia fs e descobre os 3000 arquivos. O que essencialmente está acontecendo é que o kernel irá percorrer a estrutura fs e varrer os arquivos individuais e seus inodes e todos eles serão armazenados na memória. Se você verificar /proc/slabinfo
, verá um objeto chamado ext4_inode_cache
, que informa quanta memória cada inode levará. Multiplique isso pelo número de objetos (obj_size * no_obj) e você terá a quantidade de memória usada pelo objeto. Quanto mais fundo você entrar na hierarquia fs, mais memória será consumida até que o sistema atinja a marca d'água alta da zona de memória. Nesse ponto, o kernel começará a recuperar.
Se você digitar meminfo e slabinfo, receberá os detalhes que procura. Se você quiser que eu olhe, pastebin;)