Tamaño de la tabla de páginas y número de entradas

0

Supongamos que en el sistema operativo de 32 bits, tenemos 4 GB de espacio de direcciones virtuales disponibles. Entonces, eso significa que necesitamos mapear 2 ^ 32 = 4,294,967,296 direcciones.

Si calcula el tamaño para almacenar todas las 4,294,967,296 direcciones en el espacio de direcciones y si cada una es de 4 bytes, debería tomar:

Tamaño de la memoria para todas las direcciones = 4,294,967,296 direcciones x 4 bytes

Mi pregunta es:

¿Una sola tabla de páginas puede almacenar tantas direcciones en sus entradas? Si es así, ¿por qué el tamaño de la tabla de páginas sería de solo 4 MB como se responde aquí ?

usuario125221
fuente

Respuestas:

1

La memoria virtual no viene en bytes individuales. Una unidad mínima de memoria que puede asignar, compartir, asignar, intercambiar, bloquear, etc. es una página de (generalmente) 4096 bytes.

El espacio de direcciones completo (4 GB) se divide en 1Mi de dichas páginas. Es por eso que toda la tabla contiene 1Mi de entradas de 4 bytes cada una, que es exactamente 4 MB.

Dmitry Grigoryev
fuente