Estoy interesado en la forma en que los archivos mmaps de Linux se almacenan en la memoria principal (en mi contexto es para ejecutar, pero supongo que el proceso de mmap es el mismo para escribir y leer también) y qué tamaño usa.
Así que sé que Linux usa paginación con un tamaño de página generalmente de 4kB (¿en qué parte del núcleo puedo encontrar este tamaño?). Pero, ¿qué significa esto exactamente para la memoria asignada: suponga que tiene un binario de unos pocos miles de bytes, digamos 5812B y lo ejecuta. ¿Qué sucede en el núcleo: asigna 2 * 4kB y luego copia el 5812B en este espacio, desperdiciando> 3KB de memoria principal en la segunda página?
Sería genial si alguien supiera el archivo en la fuente del núcleo donde se define el tamaño de página.
Mi segunda pregunta también es muy simple, supongo: asumí 5812B como tamaño de archivo. ¿Es correcto que este tamaño simplemente se tome del inodo?