Este documento describe los sistemas operativos distribuidos, los cuales permiten que componentes de hardware y software ubicados en computadores en red se comuniquen y coordinen mediante el intercambio de mensajes. Explica conceptos clave como proceso, agente, cliente, servidor y host. También cubre características como la compartición de recursos, apertura, concurrencia, escalabilidad y tolerancia a fallos. Finalmente, analiza ventajas y desventajas de los sistemas distribuidos.
2. S. O. Distribuido
Un sistema en el que los componentes hardware/software ubicados en
computadores en red, se comunican y coordinan sus acciones
intercambiando mensajes. Colección de ordenadores autónomos enlazados
por una red y soportados por aplicaciones que hacen que la colección actúe
como un servicio integrado.
Conceptos:
Proceso: Programa que se ejecuta en una maquina. En muchas maquinas
pueden ejecutarse varios procesos a la vez.
Agente: Proceso conectado a la red. En ocasiones se denomina "agente" a
un proceso que actúa sin control directo del usuario, y que puede
presentarse a la red como un usuario.
Cliente: Proceso que puede establecer conexiones a servidores y enviar
peticiones a él.
3. Agente de usuario: Cliente que representa al usuario. A menudo tienen
interface de usuario, para que las personas puedan controlarlo directamente.
Servicio: Parte de un sistema de computadores que gestiona una colección
de recursos y presenta una funcionalidad a los usuarios y a las aplicaciones.
Servidor: proceso que acepta conexiones de clientes y realiza servicios
para ellos. Un servidor puede atender varias peticiones simultaneas de varios
clientes (1 o varios procesos, uno para cada cliente).
Host: maquina conectada a la red que proporciona servicios. El mismo
host puede tener varios procesos servidor que proporcionen diversos
servicios.
Cliente Servidor
Agente Usuario 1-n Procesos
Conexión
PC HOST
4. Características
Compartición de Recursos. Para que sea efectiva, esta debe ser manejada
por un programa que ofrezca un interfaz de comunicación permitiendo que
el recurso sea accedido, manipulado y actualizado de una manera fiable y
consistente.
Apertura. se determina por el grado hacia el que nuevos servicios de
compartición de recursos se pueden añadir sin perjudicar ni duplicar a los ya
existentes.
hardware : añadir periféricos, memoria o interfaces de comunicación, etc.
software : añadir características al sistema operativo, protocolos de
comunicación
5. Características
Concurrencia. Cuando existen varios procesos en una única maquina
decimos que se están ejecutando concurrentemente .
Escalabilidad. Esto es, si Ia demanda de un recurso crece, debería ser
posible extender el sistema para darle servicio. Por ejemplo, Ia frecuencia
con Ia que se accede a los ficheros crece cuando se incrementa el numero de
usuarios.
Tolerancia a Fallos. Redundancia hardware (uso de componentes
redundantes) y recuperación del software (diseño de programas que sean
capaces de recuperarse de los fallos).
Transparencia. ejerce una gran influencia en el diseño del software de
sistema.
6. ¿Por que sistemas distribuidos?
Funcionales: los computadores tienen diferentes funcionalidades.
Ejemplo: terminales/servidor.
Distribución del trabajo: los computadores se reparten el trabajo.
Económicos: es mas barato muchos ordenadores pequeños que pocos
muy grandes.
Físicos: dispersos geográficamente.
Ejemplo estaciones meteorológicas.
7. Factores que han afectado el desarrollo de los
Sistemas Distribuidos.
Avances Tecnológicos.
Nuevos requerimientos.
Globalización.
Aspectos Externos ( Culturales,
Políticos, Economicos ).
Integración.
8. Tolerancia a fallos
Una característica de los sistemas distribuidos, que los difiere de los
sistemas singulares, es la noción para errores parciales. Un error parcial
puede ocurrir cuando algún componente del sistema distribuido falla, el
fallo puede afectar el correcto funcionamiento de algunos componentes,
pero a la vez dejar otros componentes sin afectarlos. A contrario de un
sistema monousuario, el cual puede afectar a todo el sistema, apagándolo.
Un punto importante en los sistemas distribuidos, es construirlos de tal
forma que puede recuperarse automáticamente de fallos sin afectar el
rendimiento . Cuando un error ocurre el sistema debería seguir operando de
forma aceptable mientras se hacen las reparaciones. Para que un sistema
distribuido pueda ser tolerante a fallos, se ocupan las siguientes
características:
Disponibilidad Confiabilidad
Seguridad Mantenimiento
9. S. O. Distribuidos
Procesadores mas poderosos y a menos costos .
Avances en la Tecnología de Comunicaciones.
Ventajas Compartición de Recursos.
Eficiencia y Flexibilidad.
Disponibilidad y Confiabilidad.
Crecimiento Modular.
Requerimientos de mayores controles de procesamiento.
Velocidad de propagación de información ( Muy lenta a
veces).
Desventajas Servicios de replicación de datos y servicios con
posibilidades de fallas.
Mayores controles de acceso y proceso .
Administración mas compleja.
Costos.