2. Procesamiento en Paralelo Es la Ejecución simultanea
Un Proceso es un flujo
de
de ejecución
Un programa
Se clasifica en Representado por
Diferentes Procesos
Es dividido en
Un Contador Contexto de
Paralelismo de Programa Ejecución
implícito Dos o más
Procesadores
Contiene
Mejora de Paralelismo estados de
Se clasifica en
explícito
MISD (Procesadores
La Concurrencia Vectoriales)
de la CPU
La Pila, de la
Oculta Se usan
memoria y de la
SIMD (Procesadores E/S
Matriciales)
La arquitectura
Aprovecha Dos o más
computacional
Procesadores
MIMD
Los recursos de
paralelismo de
la CPU Implementa
Con memoria
Memoria Memoria
Compartida Dedicada Compartida Distribuida
3. Procesamiento en Paralelo
Escalabilidad
Memoria
Procesamiento
Emplea los diseños Utiliza jerárquica de dos Esto permite
paralelo escalable niveles
Aprovecha las Reducir el
ventajas de MPP tráfico de
bus del
Procesamiento sistema
Multiprocesamiento
masivamente paralelo
simétrico (SMP)
(MPP) Facilitar la
SMP Programación
Simple y
es
La Memoria RAM efectivo
Los Procesadores
Es DISTRIBUIDA entre comparten
los procesadores Memoria RAM y BUS Genera un El tráfico en el bus de
del Sistema problema memoria se satura
Es un Permite Esto permite que
Escalable Sistema reducir
Una aplicación Debido a
El tráfico en Se distribuyan las esto
obtenga la memoria
el bus del tareas entre varios
Sus que necesita para una
sistema procesadores
desventajas simulación compleja
SMP NO es
Requiere estar al escalable
La Sincronización de
tanto de la
Difícil de programar datos entre tares es
Organización de la
difícil
memoria
4. En la Programación
Concurrente Implementado por Edsger Dijkstra
Existen algoritmos Compartir un
Le permite a
para la Exclusión Algoritmo de Dekker recurso sin
dos procesos
mutua conflictos
Algoritmo de Peterson
Es elegido según una
Un proceso
Si ambos procesos variable de turno
intentan acceder a la
sección crítica al mismo
Desarrollado en
Le permite a dos tiempo
procesos
Espera la finalización
1981 El otro proceso
del otro proceso
Compartir un recurso
sin conflictos
Para dos Posteriormente Más de dos
Usando procesos procesos
para
solo
Memoria
compartida
5. Para evitar que
fragmentos de código
Se usa la
accedan al mismo
En la Exclusión Mutua Programación tiempo a recursos que
concurrente no deben ser
compartidos.
Edsger Dijkstra
Se
implementan Inhabilitar las Empleando
los semáforos interrupciones una técnica
Inventados
por
Un semáforo es una El conjunto de
variable especial Durante instrucciones más
protegida pequeño
Permiten Restringir o
permitir
Esto impide
Tienen dos
El acceso a Recursos compartidos
estados
La corrupción de la
estructura compartida
Todos los recursos están
Si estado = 0
siendo utilizados
El recurso está
Si estado = 1
disponible
6. En la Exclusión Mutua
El código a ser
Contiene
ejecutado
Se
implementan
los Monitores Inicialización
Los procedimientos
privados, que sólo
Son objetos destinados conformados pueden ser usados
a ser usados sin peligro por desde dentro del
por más de un hilo de monitor y no son
ejecución visibles desde fuera
Sus componentes
son
Datos privados
Sus tipos son
Son los procedimientos
que pueden ser
Métodos llamados desde fuera
Tipo Hoare del monitor.
Tipo Mesa
Cola de entrada Contiene a
Los hilos que han
llamado a algún
método del monitor
pero no han podido
adquirir permiso para
ejecutarlos aún.