Académique Documents
Professionnel Documents
Culture Documents
La memoria virtual utiliza dos niveles de la jerarquía de memoria: la memoria principal y una
memoria de respaldo (que usualmente es el disco duro, aunque también puede ser una
memoria expandida). Sobre memoria de respaldo se establece un mapa uniforme de
memoria virtual. Las direcciones generadas por el procesador se refieren a este mapa
virtual, pero, sin embargo, los accesos reales se realizan sobre la memoria principal.
Para su funcionamiento, la memoria virtual exige una gestión automática según la jerarquía
de memoria formada por los niveles de memoria principal y de disco.
Los métodos más comunes para poner en práctica el almacenamiento virtual son:
● Paginación
● Segmentación
Paginación
En la paginación cada proceso tiene su tabla de páginas y cada que carga todas sus
páginas en memoria principal, se crea y carga en memoria principal una tabla de páginas.
Cada entrada de dicha tabla contiene el número de marco de la página correspondiente en
memoria principal. Es normal asociar a una única tabla de páginas con cada proceso. En
este caso, las entradas de la tabla de páginas pasan a ser más complejas. Puesto que sólo
algunas de las páginas de un proceso pueden estar en memoria principal, se necesita un bit
en cada entrada de la tabla para indicar si la página correspondiente está presente en
memoria principal o no lo está. Si el bit indica que la página está en memoria, la entrada
incluye también el marco para esa página.
Segmentación
En esta manera de administración de la memoria virtual cada proceso tiene su propia tabla
de segmentos, cuando todos los segmentos se encuentran en memoria principal, la tabla de
segmentos del proceso se crea y carga en memoria. Cada entrada de la tabla de
segmentos contiene la dirección de comienzo del segmento correspondiente en memoria
principal así como su longitud. La misma estructura, una tabla de segmentos se necesitará
al hablar de un esquema de memoria virtual basado en segmentación. Nuevamente, es
normal asociar una única tabla de segmentos a cada proceso.
En este caso las entradas de la tabla de segmentos pasan a ser más complejas. Puesto que
solo algunos de los segmentos de un proceso estarán en memoria principal, se necesitará
de un bit en cada entrada de la tabla de segmentos para indicar si el segmento
correspondiente está presente en memoria principal. Si el bit indica que el segmento está en
memoria, la entrada incluye también la dirección de comienzo y la longitud del segmento.
Fragmentación
ITTLA
Sistemas Operativos II
Memoria Virtual