Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Coherencia: Si una pgina puede estar en ms de un procesador, se puede presentar el problema de coherencia. Una memoria es coherente si el valor retornado por una operacin de lectura es igual al valor ms recientemente escrito. En sistemas con memoria virtual compartida, el problema de mantener la coherencia no se resuelve de manera trivial.
Apuntes preparados por Nstor Gonzlez V. 3
Memoria Virtual Compartida estrategias de coherencia Los problemas de coherencia slo se producen cuando hay escritura y un procesador escribe en una pgina que tambin existe en la memoria local del otro. En general, existen tres estrategias para mantener la coherencia: - Actualizacin inmediata - Difusin de escritura - Invalidacin de escritura
Actualizacin inmediata: La memoria comn mantiene siempre el ltimo valor escrito. En cada actualizacin de la memoria comn, todos los procesadores verifican si tienen una copia de la pgina, si la tienen, la invalidan. Inconveniente: si hay muchas escrituras, hay demasiadas invalidaciones.
Difusin de escritura: Cuando un procesador realiza una escritura, sta es registrada localmente y difundida a todos los procesadores que tengan una copia de la pgina. Las mltiples pginas son todas actualizadas simultneamente. El problema principal es que se requiere de hardware especial para la actualizacin.
Memoria Virtual Compartida estrategias de coherencia Invalidacin de escritura (escritura retardada): Cuando un procesador quiere modificar una pgina, enva un mensaje a todos los que poseen una copia para invalidarla. Slo se informa a los que tiene una copia y no a todos los procesadores. Antes de realizar una escritura, todas las pginas deben haber sido invalidadas. La invalidacin impide que los otros procesos lean datos desactualizados y mantiene la coherencia. La actualizacin se propaga slo cuando un procesador quiere leer un dato. Se disminuye la cantidad de informacin enviada por una actualizacin.
La actualizacin inmediata y la difusin de escritura son ms convenientes cuando hay ms lecturas que escrituras. La invalidacin de escritura (escritura retardada) es ms conveniente cuando hay ms escrituras que lecturas. Sin embargo, en una arquitectura de memoria distribuida (sin memoria fsica comn) el nico mtodo factible de implementar es invalidacin de escritura.
Apuntes preparados por Nstor Gonzlez V. 8
MVC en arquitecturas dbilmente acopladas En arquitecturas dbilmente acopladas no hay memoria fsica comn para los procesadores. Cada procesador dispone de una memoria local. Un sistema de comunicacin permite a los diferentes procesadores intercambiar mensajes. La implementacin MVC en una arquitectura dbilmente acoplada se basa en los mismos principios de la Memoria Virtual. El Espacio Virtual es visto como un conjunto de pginas. Se debe asegurar la coherencia de las pginas compartidas.
MVC en arquitecturas dbilmente acopladas Se usa un protocolo de invalidacin de escritura: Se autoriza un solo redactor (escritor), o varios lectores en forma simultnea en una misma pgina. Cuando se escribe en una pgina virtual p, se enva un mensaje de invalidacin a todos los procesadores que poseen una copia de p. Existe un administrador de pginas virtuales: localiza la copia actualizada de la pgina y recibe todas las solicitudes de acceso.
10
MVC en arquitecturas dbilmente acopladas Formas de implementar el administrador: Centralizado en un procesador predefinido. Asegura la coherencia para todo el conjunto de pginas virtuales. Estticamente distribuido. Cada procesador asegura la coherencia de un conjunto pre-establecido de pginas virtuales. Dinmicamente distribuido. El procesador que administra una pgina cambia en curso de ejecucin. Se dice que un procesador es propietario de una pgina cuando ha sido el ltimo en obtener derechos de acceso en escritura. Todos los algoritmos utilizan tablas de pginas con informacin necesaria a la administracin.
Apuntes preparados por Nstor Gonzlez V. 11
Proc1
Tabla local derecho candado acceso N pgina virtual
(L, E, I )
L : Lectura, puede haber ms copias de la pgina E: Escritura, es el Propietario copia nica I : Invlido, la pgina no est presente
ProcN
Tabla local derecho candado acceso
N pgina virtual
12
Protocolo Centralizado: Si hay un fallo de la pgina p en lectura (L) en un procesador Pj: Pj enva un mensaje al administrador, el cual lo incorpora en el conjunto de copias que estn siendo ledas. El administrador (Pg ) solicita al propietario (Pp) que enve una copia de p a Pj. Si Pp era el nico en poseer una copia, cambia su derecho de acceso de E a L.
13
MVC en arquitecturas dbilmente acopladas Protocolo Centralizado: Si hay un fallo de pgina p en escritura en un procesador Pj: - La operacin es la misma, slo que Pg invalida las copias de p enviando mensajes a los procesadores del conjunto de copias - Luego de invalidar, Pg enva la solicitud a Pp, el cual invalida su copia despus de haber enviado la copia a Pj, que marca con E. Pg modifica el propietario en su tabla Escritura sobre una pgina residente: - Si Pj tiene derecho a escritura, escribe de inmediato (es el nico) - en caso contrario, se trata el asunto como un fallo de pgina.
14
Distribucin esttica del control: A cada procesador se le asigna, en forma esttica y permanente, el control de un grupo de pginas. El esquema funciona igual que en el algoritmo centralizado, excepto que cuando se requiere realizar una accin sobre la pgina p, se hace, por ejemplo, un requerimiento al procesador p mod N.
15
Distribucin dinmica del control: Se requiere repartir los propietarios de las pginas. En cada tabla local se agrega un campo que indica propietario probable. Este campo puede contener la identidad del propietario real o bien el comienzo de una cadena de propietarios probables que siempre conduce al propietario real. Cuando un procesador origina un fallo de pgina, enva su requerimiento al propietario probable de su tabla local. Al iniciar el sistema, cada pgina tiene su propietario por defecto, que conoce su emplazamiento en el disco Mientras se encamina un requerimiento por la cadena de propietarios probables, todos los procesadores actualizan su campo propietario probable con el nmero de Pj El propietario real enva la pgina y delega la propiedad. Si es una escritura, el nuevo propietario enva un mensaje de invalidacin a los que tienen copia.
Apuntes preparados por Nstor Gonzlez V. 16
Memoria Virtual Compartida ejemplos de realizaciones Realizaciones Basadas en hardware: (Firefly, Dash)
Antecesores de la memoria global compartida. Multiprocesadores con bus o redes de interconexin. Gestin por hardware.