La memoria virtual 1

5.1.1 El concepto básico de la memoria virtual

1. La introducción de la memoria virtual

En el que 1) en una gestión de almacenamiento convencional

enfoque de gestión de almacenamiento descritos en el capítulo anterior se denomina gestión de memoria convencional, las dos características siguientes en común:

(1) a la vez. Sólo podemos empezar a ejecutar después de que el trabajo debe ser cargado en la memoria de una sola vez antes de ejecutar.

(2) del residente. Después de que el trabajo en la memoria, permanecen residentes en la memoria hasta el final de la ejecución del trabajo.

- y el tiempo de permanencia propiedades, muchos programas no se ejecutan en la memoria temporal o espacio no utilizado ocupado por un programa o conjunto de datos grande, por lo que parte de la necesidad de trabajo no se va a cargar, corre, corre, y si un espacio de memoria de programa requerido excede la capacidad de memoria real de M, entonces el programa debe caber en la memoria para funcionar.

2) principio de localidad

Localidad se puede expresar de dos maneras:

(1) localidad temporal. Si el programa de Cao de una instrucción a la ejecución de las instrucciones pueden ser ejecutadas de nuevo pronto, si se accede a un dato, a continuación, poco después de que los datos se puede acceder de nuevo. Las causas típicas localidad temporal existe un procedimiento de gran circulación.

(2) localidad espacial. Programa visitó una unidad de almacenamiento, a continuación, poco después, cerca se tendrá acceso a la unidad de almacenamiento, una dirección que está en un período de tiempo que el programa de acceso, se puede concentrar en un cierto rango, que es típicamente del orden de ejecución del programa.

 

2. Definiciones y características de memoria virtual

Basado en el principio de localidad, antes de ejecutar una aplicación y no tiene por qué todo se carga en la memoria, sólo la parte de la corriente comenzará a correr programas y datos cargados en la memoria cuando se ejecuta el programa, y ​​el resto todavía residen en la memoria externa, cuando se desea realizar instrucciones o acceso de datos no está en la memoria, entonces la petición se transfiere a través de una función automática de ellas 0s en la memoria, por lo que el programa puede continuar la ejecución: en este momento, si la memoria está llena, la necesidad de pasar a la función de permutación, la memoria temporal los programas no utilizados o los datos transferidos al disco, después de liberar suficiente espacio en la memoria, entonces usted quiere acceder a un programa o datos en la memoria, por lo que el programa continúa. De esta manera, hacen un gran programa de usuario pulgadas puede ejecutar en menos espacio de memoria: También puede cargar más procesos al mismo tiempo en la memoria para que se ejecuten al mismo tiempo. Desde el punto de vista del usuario, el sistema tiene la capacidad de memoria más que la capacidad de memoria de las vistas reales más grandes, que tienen tales funciones del sistema una memoria y solicitudes transferidos función de permutación, a partir de una extensión lógica de la capacidad de memoria para ser contempladas la memoria virtual.

La memoria virtual tiene las siguientes características principales:

(1) múltiplo de. Administración de almacenamiento convencional de "usar y tirar" Por el contrario, la memoria virtual en la memoria un trabajo en múltiples, la memoria virtual es m veces de características importantes.

(2) para cambiar las propiedades. "Residente" de un contraste de gestión de almacenamiento convencional, durante los recorridos de trabajo, la memoria virtual permite el uso de esos programas o datos ajustados temporalmente de la memoria intercambiando K, para ser trasladado posteriormente a la memoria cuando sea necesario, con lo que mejora de manera efectiva utilización de la memoria.

(3) el sexo virtual. La memoria virtual es una extensión lógica a la memoria de h, el usuario ve un gran muelle volumen sólo un sentimiento, no existe realmente, por lo virtual. Sexo virtual es el objetivo de la memoria virtual.

5.1.2 Implementación de la memoria virtual

1. Sistema de Solicitud de Localización

Solicitud de paginación del sistema es la adición de la página solicita funciones de radiobúsqueda y de la característica de sustitución de páginas forman un sistema de almacenamiento virtual sobre la base del sistema de paginación. Permite a los usuarios programar sólo unas pocas páginas en el programa (y datos) para iniciar la carrera. Más tarde, una vez sustituido por funciones de localización y características de la página tras otra a la página está a punto de correr en la memoria mientras se ejecuta la página intercambiado temporalmente fuera a la memoria externa. Cuando las unidades de reemplazo de páginas. Con el fin de cumplir con la función de reemplazo de solicitud de búsqueda y la página, el sistema debe proporcionar el hardware, software y apoyo a la ejecución de la demanda de paginación necesario.

Soporte de hardware

El principal soporte de hardware son:

(1) Solicitud mecanismo página tabla paginación. Se aumentó, si la estructura de datos se forma como un mecanismo de paginación de mil demanda en la pestaña pura tabla de páginas.

mecanismo de fallo (2) página. Cada vez que desee acceder a la página del programa de usuario aún no ha sido transferido a la memoria, se producirá un fallo de página, a petición 0 S será la página faltante en la memoria.

(3) los medios de conversión de direcciones. También es la base de las agencias de traducción de direcciones de paginación puros en el desarrollo de la formación.

1) Solicitud de Localización de software

Esto incluye el software para la implementación de la solicitud de búsqueda y la página de sustitución realización de software. Están en apoyo del hardware requerido para el programa está funcionando la página (aún no en la memoria) en la memoria, y luego temporalmente sin usar reemplazo de páginas de memoria de la memoria en el disco.

2. El sistema de la sección Solicitud

El sistema se basa en un segmento de petición del sistema segmentado, aumentando el segmento segmento segmento de almacenamiento virtual sistema de paginación de la demanda y se forma la función de permutación. Permite al usuario cargar el programa, siempre y cuando algunos segmentos (pero no todos los segmentos) para iniciar los programas y los datos de funcionamiento. Después de ejecutar segmento recordarán temporalmente la función mediante la sustitución de la sección de llamada de función y la sección, y el segmento entonces transferido está a punto de ejecución. Reemplazo se realiza en unidades de segmentos. Con el fin de cumplir con los pedidos de segmentos, el sistema también necesitan el apoyo de hardware y software necesario.

1) Soporte de hardware

El principal soporte de hardware son:

(1) Solicitar la sección de mecanismo de la tabla de segmentos. Se aumentó en varios sección de mecanismo de la tabla de segmentos puro se forma como una solicitud de la estructura de datos de segmento.

mecanismo de fallo (2) página. Cada vez que desee segmento de acceso de usuario no se haya transferido a la memoria, se producirá una breve interrupción de segmento para solicitar la sección que falta del sistema operativo en la memoria.

(3) los medios de conversión de direcciones. También se basa puramente en los medios de traducción de direcciones de segmentación formados en el desarrollo.

2) de soporte de software

Esto incluye una solicitud para la realización del segmento de tono de software y el segmento de permutación software implementado. Que, con el apoyo del hardware, la primera memoria temporalmente sin segmento de sustitución de la memoria en el disco, y luego el programa deseado está ejecutando la sección (todavía no está en la memoria) en la memoria.

 

gestión de almacenamiento de paginación 5.2 Demanda

soporte de hardware de paginación 5.2.1 solicitud

1. El mecanismo de la tabla de página solicitada

En el sistema de paginación por demanda es la principal estructura de datos necesita solicitar la tabla de páginas, el papel básico de la dirección lógica es una dirección física en el espacio de direcciones de usuario asignada al espacio de memoria.

 

 

 

En el que ahora se describen cada uno de los campos de la siguiente:

(1) bit de estado (bit de presencia) P: Dado que el sistema de paginación por demanda, sólo una parte de la aplicación transferida a la memoria, algunos todavía están en el disco de memoria externa, se requiere para aumentar la presencia de un campo de bits en la tabla de páginas. Dado que sólo uno de los campos, también es conocida bit de la palabra. Se utiliza para indicar si la página se ha transferido a la memoria como una referencia para acceder al programa.

(2) Acceso Campo A: Grabación de página número por un período de tiempo para acceder, o se ha registrado el tiempo que la página no se ha accedido recientemente, para proporcionar un algoritmo de reemplazo (programa) cuando se cambia la página de referencia seleccionada.

(3) el bit M modificación: después de identificar la página en la memoria no ha sido alterado. Puesto que cada página en la memoria de todos mantener una copia en la memoria externa, por lo tanto, en el momento de la página de sustitución, si no se modificará, entonces no es necesario escribir la última página a la memoria externa para reducir sistema y pasadores Jian el número de disco de inicio: si se ha modificado, debe volver a escribir la página a la memoria externa, la memoria externa con el fin de garantizar una copia conservó siempre al día. En resumen, cuando la página de referencia M bits para su sustitución.

(4) la dirección de memoria externa: se usa para indicar las direcciones de las páginas en la memoria externa, el número de bloque físico es por lo general para la referencia cuando se transfiere a la página.

  1. Asignación de memoria

(1) el número mínimo de bloque físico

(2) la asignación de memoria

① fijo <----> parcialmente

② variable de <----> parcialmente

③ variables <----> Global

(3) algoritmo de asignación

① uniformemente

② prorrata

③ prioridad

  1. estrategia llamada

(1) Cuando (pre-sintonizar, solicitud de sintonizar)

(2) donde (Small: modificado; en: transferido a la memoria; Large: All)

4. El mecanismo de conversión de dirección

mecanismo de traducción de direcciones de sistema de paginación Demand se basa en la unidad de conversión de dirección del sistema de paginación para la memoria virtual, añadir algunas funciones tales como la manipulación de generación y la página de fallo.

 

 

 

Durante la traducción de direcciones, recuperar primero la mesa rápido, tratar de averiguar la página partido de la Corte quiero preguntar. Si lo encuentra, modificar la tabla de página de acceso a las entradas de bits Cao, el tiempo de referencia para el algoritmo de reemplazo para desplazarse por las páginas. Para un comando de escritura, la posición debe ser modificado a "1" indica que la página ha sido modificada en la memoria. A continuación, utilice el número de bloque físico y la página de página de dirección física dirección de entrada de la tabla dada formulario. Dirección termina proceso de traducción.

Si la página no se encuentra en la mesa de entrada rápida tabla de páginas, usted debe ir a la tabla de páginas de memoria para encontrar albaricoque, y después de la entrada de tabla de páginas que se encuentra en el bit de estado P para ver si la página se ha cargado en la memoria. Si la página ya está cargado en la memoria, a continuación, una entrada de tabla de páginas debe ser escrito en la tabla de páginas rápida. Cuando la tabla tiene toda velocidad, debe llamar a la entrada de tabla de página de la página identificada por un algoritmo, y luego escribir la entrada de tabla de página página: Si esta página no ha sido cargado en la memoria, entonces el error de página que se genere Cao fuera, pide al sistema operativo desde la página de memoria externa en la memoria.

5.3 página algoritmo de sustitución

1.FIFO

El proceso ha sido transferido a una página de memoria de acuerdo con el orden de la vuelta de la cadena en una cola y establecer un puntero, llamado a reemplazar el puntero de modo que siempre apunta a la página más antigua. Pero la ley del algoritmo y los procesos reales de funcionamiento son incompatibles, funciones porque en el proceso, algunas páginas de acceso frecuente, por ejemplo, una página que contiene las variables globales, de uso común, rutinas, etc., el algoritmo FIFO no puede garantizar que estas páginas no tienen que ser eliminadas. A continuación, damos un ejemplo, utilizando el algoritmo de reemplazo de páginas FIFO.

 

 

 

Cuando el proceso de la primera visita a la página 2, página 7 será intercambiado, ya que es el primero en ser cargado en la memoria: En la primera visita a la página 3, vuelta a la página 0 intercambiado, porque 2,0,1 tres páginas existentes es la más antigua de la página. Como se puede ver en la Figura 5-4, cuando se utiliza el método FIFO, llevado a cabo 12 de reemplazo de páginas, apenas más que el algoritmo de sustitución óptima se duplicó.

  1. LRU

La razón por la cual el rendimiento del algoritmo de reemplazo FIFO es pobre, porque se basa en la condición de que cada vez que una página en la memoria, y la página ha redistribuido no refleja el uso de la página. LRU algoritmo de reemplazo de páginas es tomar decisiones basadas en el uso de la memoria paginada. No es posible predecir el uso futuro de cada página, sólo se puede utilizar el "pasado reciente", como la aproximación "futuro cercano", por lo tanto, el algoritmo de sustitución LRU es seleccionar la página menos utilizado recientemente para ser eliminado. El algoritmo da a cada página de un campo visita a un récord desde que se accede a la última página ya que el tiempo transcurrido t, cuando la necesidad de eliminar una página, seleccione una página existente en su valor más grande t, que es menos recientemente el uso que la página sea eliminada. algoritmo LRU mediante el uso de los siguientes Ejemplos.

 

 

 

Cuando el proceso de la primera visita a la página 2, página 7 se debe a ser visitada menos recientemente, por lo que será reemplazado a cabo. Cuando el proceso de la primera visita a la página 3, página 1 se convierta en la página menos usado recientemente, se intercambia. platos FIG que pueden ser, el mismo que el método óptimo de conversión de imagen antes de comprar cinco veces, pero esto no es inevitable. Debido a que el algoritmo de reemplazo es óptima desde el punto "retrógrado" de vista, que se juzga en función del uso después de cada página: El algoritmo LRU está "a la espera", que se basa en el uso anterior de cada página al juez, pero no existe una relación necesaria entre el pasado y la futura dirección de la página.

Adicional de ejemplo, para una comprensión más clara de FIFO y LRU

 

 

 

 

 

 

 

Por cierto, Belady describe en este fenómeno .

Supongo que te gusta

Origin www.cnblogs.com/giaogiaogiao/p/12667062.html
Recomendado
Clasificación