EDIT: resposta atualizada / corrigida.
Embora a documentação do kernel sobre este tópico diz que "Rootfs é um instância especial de ramfs (ou tmpfs, se isso estiver ativado) [...] ",
é na realidade ainda um ramfs, como mostra uma pequena olhada no código ( rootfs
não é mencionado em mm/shmem.c
) .
Alguns patches (ver, por exemplo, aqui e aqui ) foram enviados para a lista de discussão do kernel Linux (lkml) para mudar isso. Mas eles não foram aceitos. Uma razão foi que você normalmente não ativou a troca durante a fase initramfs ou em sistemas embarcados.
A imagem do initramfs é extraída para o rootfs. Antes que o espaço do usuário (geralmente switch_root
chamado de /init
) alterna para a nova raiz, ele exclui o conteúdo dos rootfs de forma que apenas a quantidade mínima de memória de um ramfs vazio permaneça. Então, depois disso, você basicamente pode ignorar seu uso de memória e a pergunta se ele pode ser trocado é quase irrelevante.