La
memoria virtual es una técnica para proporcionar la simulación de un espacio de
memoria mucho mayor que la memoria física de una máquina. Esta ilusión permite
que los programas se hagan sin tener en cuenta el tamaño exacto de la memoria
física.
La
memoria virtual también simplifica la carga del programa para su ejecución
llamado reubicación, este procedimiento permite que el mismo programa se
ejecute en cualquier posición de la memoria física.
Los métodos más comunes de
implementación son:
• Técnicas
de “paginación”.
• Técnicas
de “segmentación”.
• Una
combinación de ambas técnicas.
Paginación:
Es una técnica de manejo de memoria, en la cual el espacio de memoria se divide en secciones físicas de igual tamaño, denominadas marcos de página
El termino memoria virtual se asocia normalmente con sistemas que emplean paginación, aunque también se puede usar memoria virtual basada en la segmentación.
Cada proceso tiene su propia tabla de páginas y cuando carga todas sus páginas en la o memoria principal. Puesto que solo algunas de las páginas de un proceso pueden estar en la memoria principal, se necesita un bit en cada entrada de la tabla para indicar si la página perteneciente está presente en la memoria principal o no. Si el bit indica que la pagina está en la memoria, la entrada incluye también el número de marco para esa página.
Es una técnica de manejo de memoria, en la cual el espacio de memoria se divide en secciones físicas de igual tamaño, denominadas marcos de página
El termino memoria virtual se asocia normalmente con sistemas que emplean paginación, aunque también se puede usar memoria virtual basada en la segmentación.
Cada proceso tiene su propia tabla de páginas y cuando carga todas sus páginas en la o memoria principal. Puesto que solo algunas de las páginas de un proceso pueden estar en la memoria principal, se necesita un bit en cada entrada de la tabla para indicar si la página perteneciente está presente en la memoria principal o no. Si el bit indica que la pagina está en la memoria, la entrada incluye también el número de marco para esa página.
Segmentación:
La segmentación permite al programador contemplar la memoria como si constara de varios espacios de direcciones o segmentos. Los segmentos pueden ser de distintos tamaños, incluso de forma dinámica. Las referencias a la memoria constan de una dirección de la forma (número de segmento, desplazamiento).
La segmentación permite al programador contemplar la memoria como si constara de varios espacios de direcciones o segmentos. Los segmentos pueden ser de distintos tamaños, incluso de forma dinámica. Las referencias a la memoria constan de una dirección de la forma (número de segmento, desplazamiento).
Paginación
y Segmentación:
La paginación y la segmentación
puras son métodos de manejo de memoria bastante efectivos, aunque la mayoría de
los sistemas operativos modernos implantan esquemas combinados, es decir,
combinan la paginación y la segmentación.
La idea de combinar estos esquemas
se debe a que de esta forma se aprovechan los conceptos de la división lógica
de los programas (segmentos) con la granularidad de las páginas. De esta forma,
un proceso estará repartido en la memoria real en pequeñas unidades (paginas)
cuya liga son los segmentos. También es factible así el compartir segmentos a
medida que las partes necesitadas de los mismos se van reverenciando (paginas).
No hay comentarios:
Publicar un comentario