Cada vez que hacemos doble clic sobre un ejecutable (o cualquier otra manera de iniciar un programa), Windows llamará a la función CreateProcess para iniciar un nuevo proceso. Una de las cosas que hace esta función (entre otras muchas) es crear un espacio privado de direcciones virtuales de 4 GB… ¿Mandeeeeeeeee? A muchos lo único que le sonará familiar son los 4 GB, porque el resto parece chino. No es tan complicado, esto significa que Windows considera que tenemos una memoria de 4 GB (casi ná) y encima toda para nosotros. Así que disponemos de un rango de direcciones desde $00000000 hasta $FFFFFFFF, desde 0 hasta 11111111111111111111111111111111 (que nadie los cuente, que son 32 bits) o en cristiano: desde el byte 0 al byte número 4.294.967.295.
En teoría podríamos recorrernos ese rango a través de un puntero y todo funcionaría. Y digo en teoría porque las cosas no son tan sencillas, pero luego veremos por qué. A este modo de gestionar la memoria se le denomina “Modelo de memoria plano”.
Que tengamos un espacio de direcciones de 4 GB no significa que tengamos 4 GB de memoria RAM instalada (a ver quien es el afortunado), sino que la suma entre la memoria RAM física, y la memoria virtual puede llegar a 4 GB. ¿Y qué es la memoria virtual?
No hay comentarios:
Publicar un comentario