EDITAR:Respuesta actualizada/corregida.
Aunque la documentación del núcleo sobre este tema dice que "Rootfs es una instancia especial de ramfs (o tmpfs, si está habilitado) [...]", en realidad sigue siendo un ramfs, como muestra un breve vistazo al código (rootfs
no se menciona en mm/shmem.c
).
Algunos parches (ver, por ejemplo, aquí y aquí) se enviaron a la lista de correo del kernel de Linux (lkml) para cambiar esto. Pero no fueron aceptados. Una razón fue que normalmente no tiene habilitado el intercambio durante la fase initramfs o en sistemas integrados.
La imagen de initramfs se extrae a rootfs. Antes del espacio de usuario (generalmente switch_root
llamado desde /init
) cambia a la nueva raíz, elimina el contenido de rootfs de modo que solo queda la cantidad mínima de memoria de un ramfs vacío. Entonces, después de esto, básicamente puede ignorar su uso de memoria y la pregunta de si se puede intercambiar es casi irrelevante.