Blogia
mcd-unerg

Memoria Compartida Distribuida Basada en Objetos

Puesto que en muchos lenguajes de programación los datos se encuentran organizados como objetos y no como variables simples, los sistemas de MCD basados en objetos intentan transportar datos por la red utilizando como unidad de manipulación el objeto y no las páginas o las variables.

 

Los procesos que se ejecutan en los distintos computadores que componen el sistema tienen acceso a un espacio de objetos compartidos, en lugar de a un espacio lineal de direcciones. El sistema es responsable de la ubicación y administración de es- tos objetos compartidos. Un proceso puede invocar métodos de un objeto compartido, independientemente de la ubicación del proceso y del objeto. Los objetos están protegidos por el ocultamiento de información, por lo que los procesos no pueden acceder directamente al estado interno de ningún objeto compartido. Esto facilita algunas optimizaciones dentro del sistema. Por ejemplo, puede relajarse el modelo de consistencia sin que el programador tenga conocimiento alguno. Al igual que en el caso de la granularidad a nivel de variables compartidas, cuando se utiliza el objeto como unidad para compartir es posible eliminar el false sharing.

 

Además, también en este caso es factible utilizar un protocolo de actualización en vez de uno de invalidación. Sin embargo, quizás la mayor ventaja de este modelo es su modularidad y flexibilidad, a la vez que permite una integración limpia con la sincronización.

 

La principal desventaja es el aumento en el overhead que se produce por la manipulación aun más indirecta de la memoria. En realidad, este es un problema inherente al uso de objetos.

 

Un ejemplo de un sistema de MCD basado en objetos es Linda [11], un sistema basado en una memoria compartida altamente estructurada y que es accedida a través de un pequeño conjunto de primitivas que se agregan a lenguajes tradicionales como C y Fortran. El espacio de objetos se llama tuple space, o espacio de tuplas. Los procesos pueden insertar y remover tuplas al espacio, desde cualquier computador.

3 comentarios

pABLO -

muchas gracias te amo

Manuel Gil 15.948.786 Sec:04 -

Las memoria compartida distribuida Toma las ventajas de los enfoques, como software de los sistemas de memoria compartida y el hardware de los sistemas de memoria distribuida
Colección de estaciones de trabajo conectadas por una red, compartiendo un único espacio de memoria virtual paginado
La ubicación de los datos, su movimiento, etc, lo maneja el sistema de memoria compartida distribuida.

joana vargas secc 02 18068841 -

La memoria compartida distribuida o DSM es una abstracción que se propone como alternativa a la comunicación por mensajes. Una alternativa al uso de páginas es tomar el objeto como base de la transferencia de memoria. Aunque el control de la memoria resulta más complejo, el resultado es al mismo tiempo modular y flexible, y la sincronización y el acceso se pueden integrar limpiamente. Todos los accesos a los objetos compartidos han de realizarse mediante llamadas a los métodos de los objetos, con lo que no se admiten programas no modulares y se consideran incompatibles.