Administracion de memoria virtual en linux

Solo disponible en BuenasTareas
  • Páginas : 18 (4408 palabras )
  • Descarga(s) : 0
  • Publicado : 30 de marzo de 2010
Leer documento completo
Vista previa del texto
INTRODUCCION
En la actualidad Linux es uno de los sistemas operativos de mayor crecimiento en el mercado de los ordenadores, debido a su potencia, funcionalidad y rendimiento especialmente; pero lo que hace que Linux tenga estas características tan especiales depende de algo supremamente desconocido para el usuario que interactúa con el sistema, como lo es la memoria virtual y laadministración que hace el sistema operativo de esta.
El presente trabajo es un informe detallado relacionado con la administración de la memoria virtual en Linux, donde se tienen en cuenta cada uno de los elementos que hacen posible el funcionamiento de este proceso, como lo son la swap o zona de intercambio, la tabla de páginas, algoritmos de reemplazo, las caches, etc.
Por último, se describe comolleva a cabo Linux la administración de cada uno de los elementos nombrados anteriormente para garantizar el correcto y optimo funcionamiento de la maquina, que en última instancia es lo más importante para el usuario final, así como la estructura y características técnicas de cada uno de estos.
OBJETIVOS
OBJETIVO GENERAL
Profundizar los conocimientos sobre la administración que haceLinux de la memoria virtual. OBJETIVOS ESPECIFICOS
Conocer cada uno la estructura, características y funcionamiento de cada uno de los elementos inmersos en el proceso de administrar la memoria virtual.
Descubrir el funcionamiento de este proceso, que es intangible para el usuario final, pero que es de vital importancia en el rendimiento de la maquina.
Comprenderla importancia de uso que hace el sistema operativo Linux de uno de los recursos vitales de la maquina, como lo es la memoria.

MEMORIA VIRTUAL EN LINUX
Los procesos de Linux usan bibliotecas de código común, como por ejemplo rutinas de manejo de ficheros. No tendría sentido que cada proceso tenga su propia copia de la biblioteca, así pues Linux usa bibliotecas compartidas quevarios procesos pueden usar al mismo tiempo. El código y los datos de estas bibliotecas compartidas tienen que estar unidos al espacio virtual de direccionamiento de un proceso y también al espacio virtual de direccionamiento de los otros procesos que comparten la biblioteca.
Un proceso no utiliza todo el código y datos contenidos en su memoria virtual dentro de un período de tiempo determinado. Lamemoria virtual del proceso puede que tenga código que sólo se usa en ciertas ocasiones, como en la inicialización o para procesar un evento particular. Puede que sólo haya usado unas pocas rutinas de sus bibliotecas compartidas. Sería superfluo cargar todo su código y datos en la memoria física donde podría terminar sin usarse. El sistema no funcionaría eficientemente si multiplicamos ese gastode memoria por el número de procesos en el sistema.
Para solventar el problema, Linux usa una técnica llamada Paginación por Demanda **(demand paging**) que sólo copia una página de memoria virtual de un proceso en la memoria física del sistema cuando el proceso trata de usarla. De esta manera, en vez de cargar el código y los datos en la memoria física de inmediato, el núcleo de Linux alterala tabla de páginas del proceso, designando las áreas virtuales como existentes, pero no en memoria.
Linux necesita saber de dónde viene esa memoria virtual y cómo ponerla en memoria para arreglar los fallos de página. Como estas áreas de memoria virtual vienen de varias fuentes, Linux introduce un nivel de abstracción en la interfaz haciendo que la estructura apunte a un grupo de rutinas demanejo de memoria virtual. De esta manera, toda la memoria virtual de un proceso se puede gestionar de una manera consistente sin que importe las diferentes maneras de gestionar esa memoria por parte de distintos servicios de gestión.
Cuando un proceso reserva memoria virtual, en realidad Linux no reserva memoria física para el proceso. Lo que hace es describir la memoria virtual creando una...
tracking img