Sei sulla pagina 1di 17

CAPITULO 1: COMPONENTES DE UN SISTEMA DISTRIBUIDO

Introduccin
En sta primera unidad se abordan los aspectos conceptuales necesarios para iniciar
el estudio de los SD. Se presentan los componentes de un sistema distribuido, las
principales caractersticas as como los tipos de sistemas distribuidos.

Leccin 1: Introduccin y Conceptos

Un Sistema Distribuido consiste en una coleccin de computadores autnomos


enlazados por una red y equipadas con un sistema de software distribuido que luce a
los usuarios como si fuera en sistema nico y centralizado.
Figura 1. Sistema Distribuido

Este tipo de sistemas se poseen las siguientes caractersticas intrnsecas:


Cada uno de los componentes trabajan en forma concurrente (interactan
simultneamente).

Los componentes pueden fallar de manera independiente sin ocasionar un fallo


general.
No existe un reloj global que sincronice los procesos que se ejecutan en el sistema.
Los componentes no comparten memoria.
Los sistemas distribuidos estn por todas partes. Internet (considerado un gran
sistema distribuido) permite que los usuarios de todo el mundo accedan a sus
servicios donde quiera que estn situados. La mayora de empresas administran una
intranet, que provee servicios locales y servicios de Internet a los usuarios locales y
habitualmente proporciona servicios a otros usuarios de Internet. Es posible construir
pequeos sistemas distribuidos con computadores porttiles y otros dispositivos
computacionales pequeos conectados a una red inalmbrica.

Figura 2. Sistema Distribuido Multimedia

En la figura 2 se presenta un sistema distribuido multimedia tpico capaz de soportar


una variedad de aplicaciones como conferencias, accesos a secuencias almacenadas
de vdeo y difusin de radio y televisin digitales. En este sistema, distribuido y
2

abierto, las aplicaciones multimedia pueden ser iniciadas y utilizadas sin anuncio
previo. Pueden coexistir varias aplicaciones en la misma red e incluso en la misma
estacin de trabajo, para lo cual se debe garantizar que todas las aplicaciones sern
capaces de obtener la cantidad de recursos necesaria en los momentos requeridos,
incluso cuando otras aplicaciones estn compitiendo por esos recursos.
Leccin 2: Objetivos de un Sistema Distribuido
La comparticin de recursos es el principal factor que motiva la construccin de

sistemas distribuidos. Recursos como impresoras, archivos, pginas web o registros


de bases de datos se administran mediante servidores del tipo apropiado. Por
ejemplo, los servidores web administran pginas y otros recursos web. Los recursos
son accedidos por clientes, por ejemplo, los clientes de los servidores web se llaman
normalmente browsers o navegadores web.
Adems de compartir recursos, un sistema distribuid o tiene como finalidad atender
los siguientes aspectos que regularmente se presentan en una red:

1. Concurrencia
En una red de computadores, la ejecucin de programas concurrentes es la norma.
Yo puedo realizar mi trabajo en mi computador, mientras t realizas tu trabajo en el
tuyo, compartiendo recursos como pginas web o archivos, cuando es necesario. La
capacidad del sistema para manejar recursos compartidos se puede incrementar
aadiendo ms recursos (por ejemplo, computadores) a la red. La coordinacin de
programas que comparten recursos y se ejecutan de forma concurrente es tambin
un aspecto importante de cualquier sistema distribuido.

2. Inexistencia de reloj global


Cuando los programas necesitan cooperar coordinan sus acciones mediante el
intercambio de mensajes. La coordinacin estrecha depende a menudo de una idea
compartida del instante en el que ocurren las acciones de los programas. Pero resulta
que hay lmites a la precisin con lo que los computadores en una red pueden
sincronizar sus relojes (Figura 3), ya que no hay una nica nocin global del tiempo
correcto. Esto es una consecuencia directa del hecho que la nica comunicacin se
realiza enviando mensajes a travs de la red.
Figura 3. Sincronizacin en Red

Fuente: Autor

3. Fallos independientes
Todos los sistemas informticos pueden fallar y los diseadores de sistemas tienen la
responsabilidad de planificar las consecuencias de posibles fallos. Los sistemas
distribuidos pueden fallar de muy diversas formas. Los fallos en la red producen el
aislamiento de los computadores conectados al Sistema Distribuido, pero eso no
significa que detengan su ejecucin. De hecho, los programas que se ejecutan en
ellos pueden no ser capaces de detectar cuando la red ha fallado o est
excesivamente lenta (Figura 4).
Fallos Independientes

De forma similar, la cada de un servidor o la terminacin inesperada de un programa


en alguna parte del sistema (crash) no se da a conocer inmediatamente a los dems
componentes con los que se comunica. En un sistema distribuido cada componente
del sistema puede fallar independientemente, permitiendo que los dems continen su
ejecucin

Leccin 3: Comunicacin en los Sistemas Distribuidos


Por ser de gran importancia para el esquema de comunicacin entre los elementos de
un sistema distribuido, se har una profundizacin en el concepto de Agente y sus
diversas connotaciones.
1. Agentes

Uno de los elementos claves para la comunicacin en un Sistema Distribuido es el


Agente. La palabra Agente se refiere a todo ente que posee la habilidad, capacidad
y autorizacin para actuar en nombre de otro (Figura 5). A diario, los agentes
humanos asisten a las personas en tareas que requieren recursos especializados o
conocimiento especfico en un dominio. Por ejemplo, una secretaria atiende y
resuelve situaciones en nombre de su jefe: administra la agenda, coordina las
reuniones, recibe a los visitantes. El usuario delega en el agente una o varias tareas
que debe llevar a cabo quedando a la espera de los resultados. Dichas tareas son a
menudo fciles de e specificar, pero - en algunos casos complejas de realizar.
Los investigadores en el campo de los agentes computacionales han dado varias
definiciones al trmino, cada uno desde su ptica particular, fundamentada
bsicamente en la lnea de investigacin en la cual trabajan (Inteligencia Artificial,
Ingeniera de Software, Sistemas Autnomos, Sistemas Distribuidos). A continuacin
se presentan algunas definiciones:

Segn Nwana, el trmino agente se refiere a un componente de software y/o


hardware que es capaz de actuar para poder ejecutar tareas en nombre de un
usuario.
Pattie Maes del laboratorio de Inteligencia Artificial del MIT (Massachusetts Institute of
Technology / Instituto Tecnolgico de Massachusetts) defini a los agentes autnomos
como sistemas computacionales que habitan en algn ambiente dinmico y complejo,
censando su estado actuando autnomamente, llevando a cabo una serie de objetivos
o tareas para los cuales fueron diseados.
Nicholas Negro ponte, director del Media Lab del MIT, hizo la observacin que el
futuro de la computacin ser de delegar a y no de manipular computadores.
Dentro de este marco el trmino agente se redefine para cada aplicacin que persiga
dicho objetivo.
2. Propiedades de los agentes
Con base en todas las definiciones anteriores es posible extraer algunas
caractersticas que requieren los agentes: deben ser parte de un ambiente, deben
poder monitorear (sensar) su entorno y actuar sobre el, y deben responder segn los
objetivos para los cuales fueron diseados. Deben entonces poseer una serie de
atributos o propiedades que lo definen como agente.

Autonoma: Capacidad de actuar sin la intervencin directa de una persona o de otro


agente. Un agente debe poder controlar sus propias acciones y estado interno. Una
vez que el usuario activa el agente indicando algn objetivo de alto nivel, ste acta
independientemente, seleccionando estrategias y monitoreando el progreso en busca
de la meta. Si falla con una estrategia, usa otra, pero sin intervencin humana o con
la mnima indispensable.
Habilidad Social: Un agente debe ser comunicativo. Debe tener habilidad para

interactuar con otros agentes o incluso con alguna persona, para solicitar informacin
o bien para exponer los resultados obtenidos de la ejecucin de las tareas planeadas.
La naturaleza de la comunicacin depende del tipo de agente con quien se comunique
(humanos o no), en ambos casos debe establecer un protocolo comn de intercambio
de informacin entre ambas partes. Los agentes deben poseer algn tipo de interfaz
para comunicars e con sus usuarios. Dicha interfaz puede establecerse simplemente
mediante el envo de mensajes por correo electrnico o puede ser todo lo sofisticada
que se desee (lo ideal es proveer una interfaz ms antropomrfica para los agentes).
Reactividad: Se refiere al hecho de que un agente debe poder sensar el estado del
ambiente dentro del cual se encuentra inmerso y -en funcin de esto- actuar,
respondiendo de manera adecuada a cambios producidos en el mismo. Los efectos
producidos pueden modificar el estado de su entorno. Por ejemplo, un agente de
filtrado de correo electrnico est sensando su ambiente, alerta a la llegada de nuevos
mensajes. La llegada de un nuevo mensaje (cambio en el medio) produce que el
agente responda de acuerdo a las tareas asignadas.
Orientacin por objetivos: Un agente no slo debe actuar por cambios detectados
en el medioambiente, sino que debe trabajar en funcin de los objetivos para los
cuales fue diseado y las tareas que le fueron delegadas en cada momento. Un
agente busca permanentemente satisfacer su agenda interna. En las aplicaciones
convencionales, cuando un usuario ejecuta un comando, se activa un proceso que se
ejecuta por determinado tiempo, algunos solicitan datos al usuario, retornan
resultados y as sucesivamente. Esta es una visin pasiva de computacin, ya que la
motivacin viene de parte del usuario. En un modelo basado en agentes, el proceso
es auto-motivado, es decir, el agente busca satisfacer cierto estado interno con
mnima intervencin humana. Por ejemplo, un agente recuperador de archivos tiene
especificada una tarea. El agente debe intentar permanentemente satisfacer la tarea
que le fue delegada con base en las estrategias de bsqueda y recuperacin con las
cuales fue construido, hasta cumplir con el objetivo.
Continuidad temporal: Un agente es un proceso temporalmente continuo. A
diferencia de un programa convencional del cual se conoce su inicio y fin, un agente
debe ejecutarse hasta que se haya alcanzado con el conjunto de objetivos solicitados,

o bien, mientras su ciclo perdure y su usuario no desee detenerlo. La continuidad


temporal es la propiedad que da vida al agente, posibilitando que se mantenga
alerta a una solicitud o a algn cambio en el medio. El ciclo de vida de un agente
depende de sus caractersticas, de las tareas que realice y de los deseos de su
usuario en cuanto al tiempo durante el cual el agente debe ejecutarse.
Movilidad: Es la capacidad de un agente de viajar por las redes de computadores,
de nodo a nodo, en busca de los recursos que le permitan cumplir con su agenda. El
trmino viajar se refiere a que en un determinado instante de tiempo el agente
detiene su ejecucin, almacena su estado interno y se dirige a otro sitio dentro de una
red de computadores (tanto el cdigo del agente como su estado) para luego
continuar con su ejecucin en la nueva ubicacin. Los recursos a los que puede
acceder pueden ser de software o hardware. Por ejemplo, un agente puede ir en
busca de una base de datos que se encuentra en cierta mquina o bien ejecutarse
remotamente haciendo uso del procesador y memoria del equipo destino.
3. Clasificacin de los Agentes
Los agentes pueden clasificarse de varias maneras, teniendo en cuenta algunas de
las propiedades que poseen o bien haciendo hincapi en alguna en particular. De esta
manera puede armarse un rbol taxonmico que abarque todas las combinaciones de
propiedades y tareas que se quieran.
Partiendo de lo anterior, se presenta la siguiente clasificacin de los agentes de
acuerdo con la funcin u objetivo principal del mismo

Agentes de interfaz

Agentes colaborativos
Agentes mviles
Agentes de recuperacin de informacin

Agentes de interfaz
Un agente de interfaz es un software cuasi-inteligente que asiste a un usuario cuando
interacta con una o ms aplicaciones. La motivacin es que se les pueda delegar
tareas aburridas y laboriosas. Son asistentes personales que reducen el trabajo por la

sobrecarga de informacin, como por ejemplo el filtrado de los mensajes de correo


electrnico o la recuperacin de archivos de Internet. Esta categora de agentes
apoyan y proveen asistencia a su usuario. El agente observa y monitorea las acciones
que toma el usuario en la interfaz, aprende nuevos atajos, y sugiere mejores formas
de hacer las tareas. La idea es que el agente pueda adaptarse a las preferencias y
hbitos de sus usuarios. Enfatizan la autonoma y el aprendizaje para llevar a cabo
tareas para sus dueos y trabajan en el mismo ambiente que stos.
A su vez, los agentes de interfaz pueden encontrarse subdivididos debido a diferentes
tareas para las cuales son construidos. Las ms comunes son:
Asistentes: Trabajan realizando tareas tpicas como el manejo de la agenda.
Estos agentes ayudan al usuario a planificar las reuniones. Sus acciones incluyen
negociar, aceptar o rechazar reuniones.
Filtros: Su tarea principal es la de analizar informacin segn un conjunto de
reglas dadas por el usuario. La aplicacin tpica es el filtrado de mensajes de
correo electrnico.
Guas: Asisten a los usuarios en el uso de una aplicacin. Estos agentes
monitorean las acciones de los usuarios e intentan sugerir qu pasos realizar para
alcanzar el objetivo. Algunos ayudan a navegar por la Web.
Agentes colaborativos
Los agentes colaborativos constituyen un sistema multiagentes, es decir existe ms de
un agente dedicado a satisfacer los requerimientos de sus usuarios. Para ello es
necesario contar con esquemas de comunicacin entre agentes que posibiliten la
cooperacin y el intercambio de conocimiento. Adems, deben poseer un alto grado
de autonoma para actuar interactuando con sus pares.
La motivacin detrs de la construccin de agentes colaborativos es que los sistemas
construidos con unidades relativamente simples proveen mayor funcionalidad que un
ente mayor, pudiendo extender la funcionalidad del sistema ms all de las
capacidades de uno de sus miembros.

Adems, estas arquitecturas posibilitan contar con mayor confiabilidad (debido a la


redundancia) y mayor velocidad (debido al paralelismo) en el sistema conjunto. Las
reas de aplicacin de este tipo de agentes incluyen:
Resolucin de problemas demasiado grandes.
Interconexin de mltiples sistemas.
Manejo de informacin proveniente de fuentes distribuidas.
Agentes Mviles
Los agentes mviles son procesos capaces de viajar por una red de computadores,
9

interactuando con hosts externos, recolectando informacin en nombre de su dueo y


retornando a casa luego de completar las tareas establecidas (Figura 6). Los
agentes forman un nivel de abstraccin ms para el usuario, detrs del cual se
encuentran soluciones a cuestiones tcnicas en algunos casos complicadas. Una de
estas cuestiones es la distribucin, es decir, como manejar recursos computacionales
distribuidos. Con la idea de agentes mviles los recursos distribuidos no son
10

completamente ocultados al usuario pero tampoco completamente expuestos . La


nocin de movilidad viene del objetivo de reducir el trfico innecesario dentro de una
red , con lo que se pueden reducir los costos de comunicacin. Adems, al aportar
una nueva forma de computacin distribuida posibilita el mejor aprovechamiento de
los recursos de la red y permite que los usuarios tengan acceso a una cantidad mayor
de recursos. Por ejemplo, debido a que las sesiones en busca de un recurso
determinado ciertas veces son largas, la idea de agentes mviles provee una solucin.
Un usuario delega la tarea de bsqueda de informacin a un agente, establece una
comunicacin con la red y enva al agente a cumplir con su misin. La prxima vez
que el usuario se conecte, el agente retorna con los resultados obtenidos.
Figura 6. Agentes Mviles

Para soportar la movilidad, debe existir una infraestructura de transporte que mueva
el cdigo del agente de una ubicacin a otra.Adems, se debe contar con un entorno
de ejecucin de agentes, donde los agentes viven, compuesto por todas los
computadores que los proveen. Finalmente, para construir sistemas con agentes
mviles es necesario resolver algunas cuestiones fundamentales tales como:

Transporte: Cmo se mueven de lugar en lugar?


Ejecucin: Cmo ejecutar el agente de forma remota?
Autenticacin: Cmo saber si el agente es quien dice ser y a quin
representa?

Privacidad: Cmo asegurar que el agente mantenga resguardado su estado


interno?

Seguridad: Cmo protegerlo de virus? Cmo prevenirque el agente entre en


bucles infinitos o falle?

Agentes de recuperacin de informacin


El objetivo principal de los agentes dedicados especficamente a la recuperacin de
informacin es obtener informacin por el usuario (Figura 7). La motivacin para su
construccin es que con el crecimiento vertiginoso de Internet, la cantidad de
informacin accesible supera la cantidad de tiempo disponible para analizarla. Un
adagio popular en Internet dice: Nos estamos sumergiendo en informacin pero
hambrientos de conocimiento.
Las tecnologas de la informacin han expandido los horizontes de los usuarios en
cuanto a las formas de generar y acceder a la misma. Pero esta amplia variedad de
informacin distribuida plantea desafos en cuanto a las formas de manejar su

complejidad y heterogeneidad

Agentes de Recuperacin de Informacion

Hoy en da, la informacin se produce en mltiples contextos, se difunde por medios


muy variados y se utiliza en todas partes. El rpido crecimiento de la cantidad de
documentos en Internet (especialmente en la web) presenta la dificultad de poder
acceder a la informacin relevante.
Se produce as el fenmeno conocido como sobrecarga de informacin , entonces
se trata de mejorar, pero no eliminar, el problema especfico de la sobrecarga y
administracin de la informacin. Adems, existe el problema que debido al gran
volumen de informacin disponible, se mezclan el ruido o desperdicio con la
informacin til o necesaria, lo que determina la gran dificultad de hallar lo que
realmente resulta de inters para las personas.
Las soluciones actuales a este problema se basan en la construccin de motores de
bsqueda, con mecanismos de indexacin de documentos, combinados con

interfaces de consulta apropiadas a esta tarea, o bien, ndices manuales multi-nivel (o


directorios), los cuales presentan clasificaciones de los documentos segn el criterio
de sus autores. Ambas tcnicas poseen debilidades visibles. Los primeros, son muy
propensos a recuperar demasiada cantidad de documentos no deseables ya que
trabajan (bsicamente) mediante tcnica de bsqueda de la ocurrencia de los
trminos buscados en los documentos. Por otra parte, los ndices manuales,
solamente tienen parte de los posibles documentos, debido al alto costo que posee
la recuperacin, manipulacin y clasificacin manual de los mismos. La motivacin es
poder disear una tcnicaque permita describir los cientos de millones de documentos
disponibles de manera precisa, creando un ndice de alta calidad, con una forma
eficaz y eficiente de acceder a ste (ya sea de manera manual o automtica). Una de
las solucion es posible se basa en los agentes de recuperacin de informacin. Estos
agentes pueden asistir a un usuario novato en la formulacin de consultas avanzadas,
en base a sus necesidades de informacin. Adems, permiten acceder e integrar
fuentes heterogneas y manejar diferentes tipos formatos de informacin.
Los agentes de recuperacin de informacin poseen mtodos para permitir el rpido
acceso y recuperacin de informacin relevante. Tienen la tarea de administrar,
manipular y juntar informacin de fuentes distribuidas. Pueden tener mecanismos de
bsqueda y navegacin flexibles y algoritmos de clasificacin poderosos. El objetivo
es construir agentes capaces de armar un diario personalizado, sabiendo dnde
buscar, cmo encontra lo buscado y cmo armarlo luego. Los agentes se presentan
como una herramienta muy til en la tarea de resolver el problema de la sobrecarga
de informacin, debido a que stos pueden realizar sus tareas mucho ms rpido que
las personas y, adems, se encuentran disponibles las veinticuatro horas

4. Ejemplos de Agentes

Para dar claridad acerca concepto de agente software, se describen dos ejemplos de
amplia utilizacin en las plataformas computacionales distribuidas:

Los agentes de biblioteca.


Un interesante mbito de aplicacin de los agentes de recuperacin de informacin
son las bibliotecas. Las colecciones de informacin pblica almacenadas en formato
electrnico han aumentado considerablemente, por lo cual las bibliotecas deben
incorporar este formato como una alternativa a las publicaciones tradicionales. Dentro
de este mbito, los agentes de recuperacin de informacin pueden resultar de gran
utilidad como asistentes de los bibliotecarios, manejando los grandes volmenes de
material electrnico almacenado. Dado un contexto de bsqueda (segn la peticin de
material por parte de un usuario), el bibliotecario puede recurrir a un agente para que
lo asista en las tareas de buscar, clasificar y filtrar la informacin solicitada. Con base
en una solicitud, el agente puede recurrir a estrategias para seleccionar las bases de
datos donde buscar y cmo categorizar los documentos encontrados. Adems,
pueden colaborar con el bibliotecario en el desarrollo de las siguientes actividades:

Recuperar informacin de fuentes distribuidas


(Internet) Realizar consultas con distintas estrategias
Generar reportes detallados y/o resumidos
Mantener estadsticas de solicitudes/bsqueda/utilidad
Crear perfiles de usuarios, con base en sus reas temticas o preferencias de
material

En los prximos aos, es impensable una biblioteca que no incorpore asistentes


digitales. La diversidad de soportes, formatos, idiomas, motores de consulta, etc,
estn a disposicin de los usuarios con la finalidad de brindar una mayor calidad de
servicio informativo, pero l usuario debe abstraerse de cuestiones tecnolgicas que
lo dispersen de sus objetivos principales. Esta ltima cuestin es la que tienden a
realizar los asistentes o agentes de bibliotecas, operando como interfaces inteligentes
entre el usuario y las tecnologas de informacin.
Googlebot
Un Googlebot es un agente distribuido (robot de bsqueda) usado por Google.
Colecciona documentos desde la web, para construir una base de datos para el motor
de bsqueda Google.
Si un webmaster no quiere que su pgina sea descargada por un Googlebot, el

puede insertar un texto llamado robots.txt, el cual puede hacer que Googlebot (y
otros robots de informacin) no investiguen esa pgina.
Googlebot tiene dos versiones, deepbot y freshbot. Deepbot investiga profundamente,
tratando de seguir cualquier enlace en esa pgina, adems de poner est pgina en
el cach, y dejarla disponible para Google. Freshbot investiga la web buscando por
contenido nuevo, visitando sitios que cambia frecuentemente. Idealmente, el freshbot
visita la pgina de un peridico todos los das, mientras que la de una revista cada
semana, o cada 15 das.

Googleboot

Googlebot descubre enlaces a otras pginas, y se dirige hacia ellos tambin, as


puede abarcar toda la web fcilmente.
Leccin 4: Ventajas y desventajas de los Sistemas Distribuidos
En general, los sistemas distribuidos exhiben algunas ventajas sobre los sistemas
centralizados. Las principales se describen enseguida:

Economa: El cociente precio/desempeo de la suma del poder de los


procesadores separados contra el poder de uno solo centralizado es mejor
cuando estn distribuidos.

Velocidad: Relacionado con el punto anterior, la velocidad sumada es muy


superior.

Confiabilidad: Si una sola mquina falla, el sistema total sigue funcionando.

Crecimiento: El poder total del sistema puede irse incrementando al aadir


pequeos sistemas, lo cual es mucho ms difcil en un sistema centralizado y caro.

Distribucin: Algunas aplicaciones requieren de por s una distribucin fsica.

Por otro lado, los sistemas distribuidos tambin exhiben algunas ventajas sobre
sistemas aislados. Estas ventajas son:

Compartir datos: Un sistema distribuido permite compartir datos ms


fcilmente que los sistemas aislados, que tendran que duplicarlos en cada
nodo para lograrlo.

Compartir dispositivos: Un sistema distribuido permite acceder dispositivos


desde cualquier nodo en forma transparente, lo cual es imposible con los
sistemas aislados. El sistema distribuido logra un efecto sinergtico.

Comunicaciones: La comunicacin persona a persona es factible en los


sistemas distribuidos, en los sistemas aislados no.

Flexibilidad: La distribucin de las cargas de trabajo es factible en el sistema


distribuido, se puede incrementar el poder de cmputo.

As como los sistemas distribuidos exhiben grandes ventajas, tambin se pueden


identificar algunas desventajas, algunas de ellas tan serias que han frenado la
produccin comercial de sistemas operativos en la actualidad. El problema ms
importante en la creacin de sistemas distribuidos es el software; los problemas de
comparticin de datos y recursos son tan complejos que los mecanismos de solucin
generan mucha sobrecarga al sistema hacindolo ineficiente. El revisar y validar, por
ejemplo, quines tienen acceso a algunos recursos y quines no, el aplicar los
mecanismos de proteccin y registro de permisos consume demasiados recursos. En
general, las soluciones presentes para estos problemas estn an en sus comienzos.
Otros problemas de los sistemas distribuidos surgen debido a la concurrencia y al
paralelismo. Tradicionalmente las aplicaciones son creadas para computadores que
ejecutan secuencialmente, de manera que el identificar secciones de cdigo

paralelizable es un trabajo arduo, pero necesario para dividir un proceso grande


en sub-procesos y enviarlos a diferentes unidades de procesamiento para lograr la
distribucin. Con la concurrencia se deben implantar mecanismos para evitar las
condiciones de competencia, las postergaciones indefinidas, el ocupar un recurso y
estar esperando otro, las condiciones de espera circulares y, finalmente, los "abrazos
mortales" (deadlocks). Estos problemas de por s se presentan en los sistemas
multiusuarios o multitareas, y su tratamiento en los sistemas distribuidos es an ms
complejo, y por lo tanto, necesita de algoritmos ms complejos con la inherente
sobrecarga esperada.