Funcionamiento de la memoria virtual en Linux

Páginas: 9 (2233 palabras) Publicado: 2 de octubre de 2013
Funcionamiento de la memoria virtual en Linux


12/01/2013



Introducción
La memoria virtual es una técnica de gestión de la memoria que permite que el sistema operativo disponga, tanto para el software de usuario como para sí mismo, de mayor cantidad de memoria que la disponible físicamente.
Muchas aplicaciones requieren acceso a más información que la que se puede mantener en memoriafísica. Una solución consiste en que las aplicaciones mantengan parte de su información en disco, moviéndola a la memoria principal cuando sea necesario.
Al usar memoria virtual hace parecer que el ordenador tiene mucha más memoria principal (RAM) que la que realmente posee. Este método es invisible a los procesos. La cantidad de memoria máxima tiene que ver con las características delprocesador.
Funcionamiento de la memoria virtual en Linux
Los sistemas basados en Unix comparten multitud de aspectos con los basados en Linux. Hay que destacar que el sistema de gestión de memoria en Linux es muy complejo. Respecto a memoria virtual, Linux hace uso de una estructura de tabla de páginas con tres niveles. Para utilizarlas, las direcciones virtuales en Linux se ven como un conjunto de 4campos.
Para tratar de aumentar la eficiencia al cargar y descargar páginas desde o hacia la memoria, se ha definido un mecanismo en el cuál las páginas son agrupadas en marcos de tamaño fijo. Para reemplazar páginas, se utiliza el algoritmo en el cual las páginas tienen asignada una especie de variable de edad. Cuando es necesario reemplazar una página, aquellas que no han sido referenciadas enbastante tiempo son las mejores candidatas.
Direccionamiento de memoria
El sistema operativo ofrece memoria a todos los procesos por igual y debe tratar con el hardware para realizar dicha función, aprovechándolo al máximo. El sistema operativo suele tener asistencia del hardware para realizar la gestión de memoria: por ejemplo, en sistemas i386, se dispone de una unidad especializada para ello,la Memory Management Unit (MMU).
Existen los tres tipos de direcciones, las lógicas, las lineales y las físicas. Las transformaciones y el formato de las direcciones dependen de la arquitectura. En Linux, los espacios de direcciones lógico y lineal son idénticos. En los procesadores de la arquitectura i386, el paso de dirección lógica a lineal se denomina segmentación, y de lineal a físicapaginación. Si deshabilitamos la paginación, la dirección física es igual a la lineal.
Segmentación en Linux
Linux no aprovecha la segmentación del i386. Sin embargo, no puede desactivarla, la utiliza de una forma muy limitada. Se ha preferido la paginación sobre la segmentación porque la gestión de memoria es más simple, y uno de los objetivos de Linux es la portabilidad: muchos procesadoressoportan malamente la segmentación, así que la independencia de la plataforma se vería mermada en Linux.

Paginación en Linux
Linux gestiona la memoria central y las tablas de páginas utilizadas para convertir las direcciones lineales (virtuales) en direcciones físicas. Implementa una gestión de la memoria ampliamente independiente de la plataforma sobre la que se ejecuta. Este modelo no siempre secorresponde con el de la plataforma sobre el cual se ejecuta. Es tan sumamente extenso el modelo de paginación en Linux que se hace imposible de abordar. No obstante, podemos consultar en el archivo fuente mm/memory.c la gestión de las tablas de página (las encargadas de realizar la traducción entre dos tipos de direcciones). Las funciones dependientes de la arquitectura se definen en asm/potable.h.Linux hace uso de las ventajas de la segmentación y de los circuitos de los procesadores i386 para traducir direcciones lógicas en direcciones físicas. Podemos también decir que alguna porción de RAM está permanentemente asignada al kernel y utilizada para almacenar el código del kernel y estructuras de datos estáticas del mismo. La restante parte de la RAM se denomina memoria dinámica, y ésta...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Administracion de memoria virtual en linux
  • Administración De Memoria Virtual En Windows Y Linux
  • Memoria en linux
  • Memoria Virtual
  • Memoria Virtual
  • Memoria virtual
  • MEMORIA VIRTUAL
  • Memoria Virtual

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS