Un modelo de memoria virtual compartida distribuida para Mapaná
A distributed shared virtual memory model for Mapaná
Este artículo describe el diseño e implementación de un modelo de memoria virtual compartida distribuida para Mapaná. Mapaná es una plataforma de máquina virtual paralela que se ejecuta en computadores homogéneos conectados en red. El modelo provee la creación de un espacio de direcciones lógico, único para cada máquina virtual; así, los procesos que pertenecen a una determinada máquina virtual tienen el mismo espacio y pueden compartirlo, a pesar de estar en máquinas físicas diferentes. Se tiene un proceso origen, o raíz, que, al ser replicado en otros nodos de la red, da lugar a los procesos homólogos o parientes con idénticos espacios de direcciones. El modelo se implementó en Linux, para lo cual se modificó el sistema de memoria virtual, extendiéndolo para incluir el concepto de páginas remotas y la administración de las mismas. Se describe la interacción entre módulos y programas de usuario implementados para llevar a cabo la replicación de un proceso y la ocurrencia de un fallo de página remoto.
1. INTRODUCCIÓN
Ballesteros [Ballesteros, 1998], en su tesis doctoral en informática, afirma que la administración moderna de memoria desea tener simultáneamente el mayor número posible de procesos, por ello el espacio físico disponible se divide entre más procesos. Esta frase hace considerar la importancia de la unión, en un modelo de memoria para una plataforma paralela, de las tres características que componen el titulo de este artículo: virtual, compartido y distribuido, para adoptar un esquema eficiente. Al ser virtual, se dispone de más memoria de la que realmente se tiene, permitiendo ejecutar aplicaciones muy grandes, y asegurando que todos los procesos de una misma máquina virtual hagan referencia al mismo contenido de memoria física a través de sus direcciones virtuales, ya que las direcciones físicas pueden ser diferentes.
Por manejar un rango idéntico de direcciones virtuales, también llamadas lógicas, la memoria se comparte entre procesos de diferentes nodos como si se tratara de un proceso padre clonado en un mismo nodo. Y, finalmente, la distribución le brinda a los procesos el beneficio de tener sólo las páginas de memoria que necesitan para ejecutarse y obtenerlas a través de cualquier otro proceso que comparte el código y datos. El modelo de memoria propuesto para Mapaná bajo Linux reúne las ventajas de estas tres características; así, cuando se crea un proceso raíz, sus regiones de memoria son replicadas en los procesos parientes.
Este documento es un artículo elaborado por Alba Eugenia Urrea Cardozo M.Sc. - Profesora Escuela de Ingeniería de Sistemas y Computación - Facultad de Ingeniería - Universidad del Valle y Rafael Gómez D.E.A. (Francia) - Ingeniero de Sistemas y Computación - Profesor Departamento de Ingeniería de Sistemas y Computación - Facultad de Ingeniería - Universidad de los Andes para la Revista Ingeniería y Competitividad Vol 7, Núm 1. Publicación de la Universidad del Valle. Colombia. Contacto: [email protected]; [email protected]
Recursos
-
Formatopdf
-
Idioma:español
-
Tamaño:1970 kb