scd tema 2
Tema 2. Sincronizaci´n en memoria
o
compartida..
Dpt. Lenguajes y Sistemas Inform´ticos
a
ETSI Inform´tica y de Telecomunicaci´n
a
o
Universidad de Granada
Curso 13-14
Sistemas Concurrentes y Distribuidos. Tema 2. Sincronizaci´n en memoria compartida..
o
´
Indice
Sistemas Concurrentes y Distribuidos.
Tema 2. Sincronizaci´n en memoriacompartida..
o
1
2
3
4
5
Introducci´n a la sincronizaci´n en memoria compartida.
o
o
Soluciones software con espera ocupada para E.M.
Soluciones hardware con espera ocupada (cerrojos) para E.M.
Sem´foros para sincronizaci´n
a
o
Monitores como mecanismo de alto nivel
SCD (13-14). Fecha creaci´n: October 4, 2013. P´gina: 2/101.
o
a
Sistemas Concurrentes y Distribuidos.Tema 2. Sincronizaci´n en memoria compartida..
o
Introducci´n a la sincronizaci´n en memoria compartida.
o
o
Indice de la secci´n
o
Secci´n 1
o
Introducci´n a la sincronizaci´n en memoria compartida.
o
o
1.1. Estructura de los procesos con Secciones Cr´
ıticas
1.2. Propiedades para exclusi´n mutua
o
SCD (13-14). Fecha creaci´n: October 4, 2013. P´gina: 3/101.
o
a
SistemasConcurrentes y Distribuidos. Tema 2. Sincronizaci´n en memoria compartida..
o
Introducci´n a la sincronizaci´n en memoria compartida.
o
o
Sincronizaci´n en memoria compartida
o
En esta tema estudiaremos soluciones para exclusi´n mutua y
o
sincronizaci´n basadas en el uso de memoria compartida entre los
o
procesos involucrados. Este tipo de soluciones se pueden dividir en dos
categor´ıas:
Soluciones de bajo nivel con espera ocupada
est´n basadas en programas que contienen expl´
a
ıcitamente
instrucciones de bajo nivel para lectura y escritura directamente a
la memoria compartida, y bucles para realizar las esperas.
Soluciones de alto nivel
partiendo de las anteriores, se dise˜a una capa software por encima
n
que ofrece un interfaz para las aplicaciones. Lasincronizaci´n se
o
consigue bloqueando un proceso cuando deba esperar.
SCD (13-14). Fecha creaci´n: October 4, 2013. P´gina: 4/101.
o
a
Sistemas Concurrentes y Distribuidos. Tema 2. Sincronizaci´n en memoria compartida..
o
Introducci´n a la sincronizaci´n en memoria compartida.
o
o
Soluciones de bajo nivel con espera ocupada
Cuando un proceso debe esperar a que ocurra un evento osea cierta
determinada condici´n, entra en un bucle indefinido en el cual
o
continuamente comprueba si la situaci´n ya se da o no (a esto se le
o
llama espera ocupada). Este tipo de soluciones se pueden dividir en
dos categor´
ıas:
Soluciones software:
se usan operaciones est´ndar sencillas de lectura y escritura de
a
datos simples (t´
ıpicamente valores l´gicos o enteros) enla memoria
o
compartida
Soluciones hardware (cerrojos):
basadas en la existencia de instrucciones m´quina espec´
a
ıficas
dentro del repertorio de instrucciones de los procesadores
involucrados
SCD (13-14). Fecha creaci´n: October 4, 2013. P´gina: 5/101.
o
a
Sistemas Concurrentes y Distribuidos. Tema 2. Sincronizaci´n en memoria compartida..
o
Introducci´n a la sincronizaci´n enmemoria compartida.
o
o
Soluciones de alto nivel
Las soluciones de bajo nivel con espera ocupada se prestan a errores,
producen algoritmos complicados y tienen un impacto negativo en la
eficiencia de uso de la CPU (por los bucles). En las soluciones de alto
nivel se ofrecen interfaces de acceso a estructuras de datos y adem´s se
a
usa bloqueo de procesos en lugar de espera ocupada.Veremos algunas
de estas soluciones:
Sem´foros: se construyen directamente sobre las soluciones de
a
bajo nivel, usando adem´s servicios del SO que dan la capacidad
a
de bloquear y reactivar procesos.
Regiones cr´
ıticas condicionales: son soluciones de m´s alto nivel
a
que los sem´foros, y que se pueden implementar sobre ellos.
a
Monitores: son soluciones de m´s alto nivel...
Regístrate para leer el documento completo.