Вы находитесь на странице: 1из 6

Procesos cooperativos:

􀂄Procesos concurrentes:

􀂄Los procesos pueden tener distintas relaciones de comunicación entre sí:

•Independientes: no puede afectar, ni ser afectado por los demás procesos que se ejecutan en
el sistema, compiten por el uso de recursos escasos.

•Cooperativos: puede afectar o ser afectado por los demás procesos que se ejecutan en el
sistema, colaboran entre sí buscando un objetivo común.

􀂄Obviamente, cualquier proceso que comparte datos con otro proceso es


cooperativo
Razones para crear un entorno que permita la cooperación entre procesos:

􀂄Compartir información: acceso concurrente a elementos de información comunes.


􀂄Aceleración de los cálculos: para ejecutar una tarea con mayor rapidez, la
dividimos en subtareas, cada una de las cuales se ejecuta en paralelo con las otras.
􀂄Modularidad: posibilidad de dividir las funciones del sistema en procesos
individuales.
􀂄Comodidad: para evitar que a un usuario individual se le acumule gran número de
tareas.

Ejemplo de proceso cooperativo:

Problema del productor-consumidor.


􀂄Un proceso productor produce información que es consumida por un proceso
consumidor, para que se ejecuten concurrentemente, es preciso contar con un
buffer de elementos que el productor puede llenar y el consumidor puede vaciar.
􀂄Productor y consumidor deben de estar sincronizados para que el consumidor no
trate de consumir un elemento que aún no se ha producido (el consumidor espera al
productor).
􀂄Restricciones de espera para productor y consumidor con buffer limitado:
•Productor: espera si buffer lleno.
•Consumidor: espera si buffer vacío.

EL PROCESO DE DISEÑO DE
SISTEMAS DISTRIBUIDOS
• La primera diferencia que tienen los sistemas distribuidos con
los sistemas centralizados, radica en que como el sistema está
distribuido en dos o más localidades, varios aspectos de diseño
deben ser considerados, tales como: confiabilidad, disponibilidad
y sobrevivencia del sistema cuando sea implementado.
• Para crear diseños efectivos, es necesario conocer y entender
las características de las arquitecturas comúnmente usadas
para soportar los sistemas distribuidos y compartir datos.
• Hay que decidir si se quiere particionar los datos y el
procesamiento a lo largo de varias localidades.
• Las capacidades y los aspectos relacionados con las tecnologías
que pueden ser usadas para upsize, downsize y, distribuir SI y
datos, son fundamentales para entender como migrar de
diseños y aplicaciones centralizadas a ambientes de
computación distribuidos y multiproceso.
Cuando se diseñan sistemas distribuidos, debe generarse documentación
que consolide la información a considerar cuando se implemente físicamente
el sistema diseñado. Los tipos de informaciones que deben
ser consideradas cuando se implementa un sistema distribuido son:
1) Descripción de la localidad (para cada una). Información
geográfica, localización física, información de la infraestructura,
características del personal (entrenamiento, Habilidades, etc.), otros.
2) Descripción del uso de los datos (para cada localidad). Elementos
de datos usados, elementos de datos creados, elementos de datos
actualizados, elementos de datos eliminados.
3) Descripción de los Procesos del Negocio (para cada localidad).
Lista de los procesos y descripción de los procesos.
4) Contraste de las alternativas de arquitectura del SI para la
localidad, los datos y los procesos necesarios (para cada
localidad). Pros y contras del soporte tecnológico, pros y contras de
la ausencia de red -sistema local-, pros y contras de distintas
configuraciones de distribución, otros pros y contras.

BASE DE DATOS DISTRIBUIDA. Una única base de datos lógica que es


esparcida físicamente a través de las computadoras ubicadas en múltiples
localidades, conectadas por un enlace de comunicación de datos.
Actividad: Comparar ambos procesos en cuanto a los requerimientos para su diseño. Además explicar cuando es
recomendable su utilización.

Вам также может понравиться