Sistemas
Operativos distribuidos
Bachiller:
Alberto Isaacs
C.I:22.844.557.
República Bolivariana De Venezuela
Ministerio Del Poder Popular Para La Educación Universitaria
Instituto Universitario Politécnico “Santiago Mariño”
Ingeniería en sistemas
INTRODUCCION
En el inicio de la era de la informática las computadoras eran grandes y caras. Debido a su escasez y
coste, éstas funcionaban de forma independiente entre ellas.
A partir de los años 70, surgen los primeros miniordenadores, que competirían con los grandes
ordenadores tanto por las prestaciones como por su precio, con lo que se extendió su uso. Los
grandes sistemas centralizados fueron dejando paso lentamente a sistemas mucho más
descentralizados, y formados por varios ordenadores o a sistemas multiprocesador. Pronto surgieron
nuevas necesidades de interconexión de los equipos, y se desarrollaron las redes de área local (LAN),
como Ethernet o Token ring. En la actualidad, Internet es la red de mayor tamaño y la más usada, y
mantiene un impresionante ritmo de crecimiento. Además, Internet es la base de muchos nuevos
proyectos de sistemas distribuidos.
SITEMA OPERATIVO DE DISTRIBUCION
Un sistema distribuido es una colección de computadoras independientes que aparecen ante los usuarios del sistema
como una única computadora.
Esta definición tiene dos aspectos:
1. El hardware: las máquinas son autónomas.
2. El software: los usuarios piensan que el sistema es como una única computadora.
 APLICACIONES:
- Una red de computadoras con una pila de procesadores
- Una aerolínea
- Fábrica de robots
- Un banco con sucursales
- Internet
- Multimedia y conferencias
• Sistema operativos distribuidos:
- Moeba
- Mach
- Chorus
- Clouds
- Plan9
- Mosix
- OpenMosix
TIPOS
 Sistemas Operativos por su Estructura
Según [Alcal92], se deben observar dos tipos de requisitos cuando se construye un sistema operativo, los
son:
Requisitos de usuario: Sistema fácil de usar y de aprender, seguro, rápido y adecuado al uso al que se le
destinar.
Requisitos del software: Donde se engloban aspectos como el mantenimiento, forma de operación,
de uso, eficiencia, tolerancia frente a los errores y flexibilidad.
A continuación se describen las distintas estructuras que presentan los actuales sistemas operativos para
satisfacer las necesidades que de ellos se quieren obtener.
 Sistemas Operativos por Servicios
Esta clasificación es la más comúnmente usada y conocida desde
el punto de vista del usuario final. Esta clasificación se comprende
fácilmente con el cuadro sinóptico que a continuación se muestra
en la Fig. 6.
 Sistemas Operativos por la Forma de Ofrecer sus Servicios
Esta clasificación también se refiere a una visión externa, que en
este caso se refiere a la del usuario, el cómo accesa los servicios
se pueden detectar dos tipos principales: sistemas operativos de
red y sistemas operativos distribuídos.
BÁSICAMENTE LOS SISTEMAS DISTRIBUIDOS CUMPLEN UNA SERIE DE CARACTERÍSTICAS:
Los interfaces software clave del sistema están claramente especificados y se ponen a disposición de
desarrolladores. En una palabra, los interfaces se hacen públicos.
Los sistema distribuidos abiertos se basan en la provisión de un mecanismo uniforme de comunicación
entre procesos e interfaces publicados para acceder a recursos compartidos.
Los sistema distribuidos abiertos pueden construirse a partir de hardware y software heterogéneo,
posiblemente proveniente de vendedores diferentes. Pero la conformidad de cada componente con el
estándar publicado debe ser cuidadosamente comprobada y certificada si se quiere evitar tener
de integración.
CARACTERÍSTICAS DE REDES E INTERCONEXIÓN
 Se conecta fácilmente al PC vía Ethernet
 Hasta 8 Mbps de flujo entrante, 1 Mbps de flujo saliente
 Permite a múltiples usuarios compartir una sola conexión ADSL con una dirección WAN IP
 Servidor integrado LAN DHCP
 Servidor DNS integrado y relé.
 Sistema operativo independiente (funciona con: Windows 95, 98, NT, Mac OS, Unix, Linux)
 "Siempre activado "(ponteado) o por marcación (PPP)
 Programa de inicio rápido basado en navegador
 Firewall de software actualizable
 Voz de datos simultáneos en una sola línea de teléfono
 No requiere instalación de software
 Aprobado para conexiones a todos los operadores más importantes de la red
 Cumple estándares ADSL (ANSI T1.413 Issue2, G.dmt, G.lite)
 Disponible como hub de 4 puertos o con conexión ATMF
CARACTERÍSTICAS DE PROTOCOLO DE COMUNICACION
Un protocolo es el conjunto de normas para comunicarse dos o más entidades (objetos que se intercambian
información). Los elementos que definen un protocolo son:
- Sintaxis: formato, codificación y niveles de señal de datos.
- Semántica: información de control y gestión de errores.
- Temporización: coordinación entre la velocidad y orden secuencial de las señales.
Las características más importantes de un protocolo son:
- Directo/indirecto: los enlaces punto a punto son directos pero los enlaces entre dos entidades en
diferentes redes son indirectos ya que intervienen elementos intermedios.
Monolítico/estructurado:
Monolítico es aquel en que el emisor tiene el control en una sola capa de todo el proceso de
transferencia. En protocolos estructurados, hay varias capas que se coordinan y que dividen la tarea de
comunicación.- Simétrico/asimétrico: los simétricos son aquellos en que las dos entidades que se
comunican son semejantes en cuanto a poder tanto emisores como consumidores de información. Un
protocolo es asimétrico si una de las entidades tiene funciones diferentes de la otra (por ejemplo en clientes
y servidores).
Normalizado/no normalizado:
Los no normalizados son aquellos creados específicamente para un caso concreto y que no va a ser
necesario conectarlos con agentes externos. En la actualidad, para poder intercomunicar muchas entidades
es necesaria una normalización.
GESTIÓN DE MEMORIA EN SISTEMAS DISTRIBUIDOS
Una de las principales características de un sistema distribuido es la ausencia de una memoria común. Esto hace
que la comunicación y sincronización en este tipo de sistemas tenga que hacerse mediante el intercambio de
mensajes. La mayoría de los sistemas distribuidos actuales siguen este modelo, con cada computadora gestionando
su memoria virtual. Sin embargo, hay propuestas que intentan mejorar este esquema. Estas propuestas son:
• Utilización de paginadores externos.
• Memoria compartida distribuida.
La utilización de paginadores externos:
Se basa en almacenar el espacio de intercambio (swap) en servidores de archivos distribuidos y en el empleo de
paginadores externos, que son procesos que se encargan de tratar los fallos de página que ocurren en una
computadora. El empleo de paginadores externos permite disponer de un sistema con una gran cantidad de espacio
para paginación, liberando a las computadoras de reservar espacio para la paginación.
La memoria compartida distribuida:
Es una abstracción que permite que los procesos que ejecutan en un sistema distribuido puedan comunicarse
utilizando memoria compartida. Esta abstracción se construye utilizando: el paso de mensajes disponible. El empleo
de memoria compartida como mecanismo de comunicación': facilita el desarrollo de aplicaciones, ya que el modelo
de programación es más sencillo y lá sincronización puede realizarse utilizando construcciones tradicionales, cómo
pueden ser los semáforos.
VENTAJAS DE LOS SISTEMAS DISTRIBUIDOS
Con respecto a Sistemas Centralizados:
Una de las ventajas de los sistemas distribuidos es la economía, pues es mucho más barato, añadir
servidores y clientes cuando se requiere aumentar la potencia de procesamiento.
 El trabajo en conjunto. Por ejemplo: en una fábrica de ensamblado, los robots tienen sus CPUs diferentes
y realizan acciones en conjunto, dirigidos por un sistema distribuido.
 Tienen una mayor confiabilidad. Al estar distribuida la carga de trabajo en muchas máquinas la falla de
una de ellas no afecta a las demás, el sistema sobrevive como un todo.
 Capacidad de crecimiento incremental. Se puede añadir procesadores al sistema incrementando su
potencia en forma gradual según sus necesidades. Con respecto a PCs Independientes:
 Se pueden compartir recursos, como programas y periféricos, muy costosos. Ejemplo: Impresora Láser,
dispositivos de almacenamiento masivo, etc. 1. Al compartir recursos, satisfacen las necesidades de
muchos usuarios a la vez. Ejemplo: Sistemas de reservas de aerolíneas.
 Se logra una mejor comunicación entre las personas. Ejemplo: el correo electrónico.
 Tienen mayor flexibilidad, la carga de trabajo se puede distribuir entre diferentes ordenadores.
DESVENTAJAS DE LOS SISTEMAS DISTRIBUIDOS
El principal problema es el software, es el diseño, implantación y uso del software distribuido, pues presenta
numerosos inconvenientes. Los principales interrogantes son los siguientes: - ¿Qué tipo de S. O., lenguaje de
programación y aplicaciones son adecuados para estos sistemas?. - ¿Cuánto deben saber los usuarios de la
distribución?. - ¿Qué tanto debe hacer el sistema y qué tanto deben hacer los usuarios?. La respuesta a estos
interrogantes no es uniforme entre los especialistas, pues existe una gran diversidad de criterios y de
interpretaciones al respecto.
Otro problema tiene que ver con las redes de comunicación. Por ejemplo: -Perdida de mensajes, saturación
en el tráfico, etc.
Un problema que puede surgir al compartir datos es la seguridad de los mismos. En general se considera
que las ventajas superan a las desventajas, si estas últimas se administran seriamente.
Un sistema operativo de red (Network Operating System) es un componente software de una computadora que
tiene como objetivo coordinar y manejar las actividades de los recursos del ordenador en una red de equipos.
Consiste en un software que posibilita la comunicación de un sistema informático con otros equipos en el ámbito
de una red. Dependiendo del fabricante del sistema operativo de red, tenemos que el software de red para un
equipo personal se puede añadir al propio sistema operativo del equipo o integrarse con él. Netware de Novell es
el ejemplo más familiar y famoso de sistema operativo de red donde el software de red del equipo cliente se
incorpora en el sistema operativo del equipo. El equipo personal necesita ambos sistema operativos para gestionar
conjuntamente las funciones de red y las funciones individuales.
Su comparación con sistemas operativos distribuidos:
Sistemas operativos
Son aquellos que te permiten instalar programas en el disco duro para compartir recursos entre varios
equipos(cliente). Existen diferentes sistemas operativos de red los cuales se clasifican por las siguiente
características:
•Medios de transmisión.
•Tipos de usuario(Permisos).
•Cantidad de programas que proporcione a nivel corporativo.
El primer Sistema Operativo de red estaba enfocado a equipos con un procesador Mochorola 68000, pasando
posteriormente a procesadores Intel como Novell Netware.
Los Sistemas Operativos de red mas ampliamente usados son: Novell Netware, Personal Netware, LAN Manager,
Windows NT Server, UNIX, LANtastic, Li. La mayoria, de los sistemas actualmente,j&b utilizan el Sistema Operativo
Linux, debido a su elevada seguridad, y estabilidad, Mac es una buena opcion si se disponen de los recursos
necesarios, la diferencia entre ambos radica en la licencia, el primero es libre y la segunda es propietario.
SISTEMA OPERATIVO DE RED (NOS)
ROBUSTEZ
El primer paso que tenemos que dar, antes de proceder a analizar a fondo el significado del término
robustez, es determinar su origen etimológico. Al hacerlo descubrimos que se trata de una palabra que
procede del latín, y más concretamente del vocablo “robustus” que a su vez emana de “robur”, que puede
traducirse como “roble”.
Robustez es la cualidad de robusto. Este adjetivo hace referencia a aquello vigoroso, fuerte o firme. Por
ejemplo: “Es un coche de gran robustez que puede recorrer miles de kilómetros sin sufrir ningún daño”, “La
robustez del equipo se resintió con la salida de Vokachik”, “Para que un emprendimiento tenga robustez, lo
más importante es contar con una buena reserva financiera”.
La robustez puede referirse a características físicas o simbólicas. Una construcción que se mantiene en pie
desde hace varios siglos demuestra su robustez por haber resistido el paso del tiempo. Esto puede ser posible
por la calidad de los materiales y la capacidad de los constructores. En cambio, si una construcción comienza a
tener fallas estructurales a los cinco años de su nacimiento, nadie podría destacar su robustez, ya que se trata
de una edificación endeble y frágil.
Dentro del ámbito matemático y estadístico, tenemos que subrayar que existe lo que se conoce como
estadística robusta. Esta es una aproximación a los métodos clásicos de trabajo que existen en dicha área pero
que tiene como particularidad que crea un conjunto de estadísticos o estimadores que no se ven afectados,
bajo ningún concepto, por variaciones respecto a las hipótesis.
En este sentido, tendríamos que destacar además que aquella da lugar a que se pueda proceder a
determinar la robustez de un método de trabajo, la cual se sustentará en características tales como la
función de influencia o lo que se ha dado en llamar punto de quiebre, que sirve para dejar claras las
observaciones incorrectas.Un sistema informático, por otra parte, puede vanagloriarse de su robustez si
puede ejecutar diversos procesos de manera simultánea sin generar fallos o bloquearse (colgarse). Un
ejemplo de sistema robusto es aquel destinado a la creación de gráficos en 3D que posibilita trabajar con
imágenes muy pesadas sin problemas. Si el programa se cuelga al cargar la primera imagen, se trata de una
aplicación poco robusta.Como puede verse en estos ejemplos, la robustez no siempre hace referencia a lo
material. Una construcción robusta sí requiere de componentes físicos que le permitan contar con esta
cualidad, pero un programa informático con el mismo calificativo alcanza dicha denominación por el tipo de
programación o por su gestión de la información digital.Asimismo, hay que resaltar que robustez es también
una de las cualidades más importantes que se establecen en la tercera generación del videojuego Pokemon.
Se trata de una habilidad que permite no sólo que el personaje siga viviendo sino también que pueda hacer
frente a los golpes de tipo fulminante que intentan asestarle sus rivales.No obstante, existen otros juegos de
ese tipo que, del mismo modo, establecen la robustez como una cualidad para los participantes. Este sería el
caso, por ejemplo, de “World of Warcraft”.
ASPECTOS DE DISEÑO:
A continuación se analiza en forma breve algunos de los aspectos claves del diseño con los que deben
trabajar las personas que piensan construir un sistema operativo distribuido.
 Transparencia:
Diseñar el sistema de forma que todas las personas piensen que la colección de máquinas es tan sólo un
sistema de tiempo compartido, de un procesador, a la manera antigua.
 Tipos de Transparencia:
- Transparencia de localización: los usuarios no pueden indicar la localización de los recursos.
- Transparencia de migración: los recursos se pueden mover a voluntad sin cambiar sus nombres.
- Transparencia de réplica: los usuarios no pueden indicar el número de copias existentes.
- Transparencia de concurrencia: varios usuarios pueden compartir recursos de manera automática.
- Transparencia de paralelismo: las actividades pueden ocurrir en paralelo sin el conocimiento de los
usuarios
CONTROL DE CONCURRECIA
Muchos sistemas de bases de datos son capaces de manejar de forma concurrente a múltiples usuarios. En
algunas situaciones cada usuario puede estar interactuando con una base de datos diferente, mientras que en
otras pueden ser muchos los usuarios que interactúen con la misma base de datos.
Las bases de datos muy grandes, como, por ejemplo, las asociadas con los sistemas de reserva de billetes
para líneas aéreas, pueden ser consultadas por millares de usuarios simultáneamente. Incluso en casos
extremos como éste, cada usuario individual no suele ser consciente de estar compartiendo los mismos datos
con otras personas. La responsabilidad del correcto intercambio de mensajes entre los usuarios y las bases de
datos apropiadas es compartida por el sistema operativo y por el SGBD. En este contexto, un usuario podría
referirse tanto a una persona sentada a un terminal, como a un programa por lotes que interactúa con una
base de datos.
Cuando varios usuarios acceden concurrentemente a una misma base de datos, existen varios tipos de
potenciales conflictos relativos al uso de los datos. Estos conflictos podrían ocurrir, por ejemplo, si un usuario
estuviese intentando modificar una información que otros usuarios están intentando leer. Otra posibilidad sería
el que dos usuarios pudiesen intentar actualizar simultáneamente el mismo registro; o, peor aún, que un
usuario pudiese intentar leer un registro mientras otro está intentando borrarlo. El sistema de bases de datos
debe asegurarse de que los conflictos de este tipo se resuelvan de forma que satisfagan las necesidades de los
diferentes usuarios, sin crear ninguna confusión durante el proceso. Este tipo de tarea del SGBD se denomina
control de concurrencia.
Para ilustrar con mayor detalle los tipos de conflictos que pueden surgir, supongamos que dos usuarios,
LEE y ESCRIBE, están trabajando concurrentemente con la misma base de datos. LEE introduce una petición
para una transacción que lee un registro determinado; aproximadamente al mismo tiempo, ESCRIBE solicita
una transacción que modifica ese mismo registro. El resultado que el usuario LEE va a ver dependerá de cuál
de las dos transacciones realice en primer lugar el sistema de bases de datos. Si se procesa en primer lugar
la transacción completa de LEE, se enviará a éste la versión antigua del registro. Por otro lado, si la primera
en procesarse completamente es la transacción para ESCRIBE, el registro será modificado primero, y LEE verá
la nueva versión del mismo.
Las transacciones de los usuarios no son procesadas necesariamente en el orden cronológico en el que
han sido solicitadas. LEE puede haber solicitado una transacción varios segundos antes de que lo haya
hecho ESCRIBE, y, sin embargo, la transacción de ESCRIBE puede que se complete antes. Esta posibilidad
existe porque una transacción puede componerse de muchas partes diferentes, cada una de las cuales se
procesa por separado. Debido a la complejidad del funcionamiento tanto del sistema operativo como del
SGBD, es más que posible que la transacción A comience antes que la B, pero que la B se complete antes
que la A.
MÉTODOS DE ACCESO REMOTO
Métodos de acceso remoto. Modelo Carga/Descarga Consiste básicamente en dos operaciones: lectura y
escritura. La primera operación consiste en la transferencia de un archivo completo desde el servidor hacia el
cliente solicitante; la segunda operación consiste en el envío de un archivo del cliente al servidor, es decir, en
sentido contrario. Mientras tanto los archivos pueden ser almacenados en memoria o en un disco local, según sea
el caso. Modelo de Acceso Remoto Este tipo de modelo consiste en que todas las operaciones (abrir y cerrar, leer y
escribir, etc.) se realizan en el servidor mas no en los clientes. El modelo de acceso remoto. Estos dos modelos se
diferencian en que en el primero se debe transferir el archivo completo del servidor al cliente y viceversa, lo que no
es necesario en el modelo de acceso remoto. Debemos tener en cuenta que el solo hecho de compartir archivos
puede traer dos problemas principales por resolver: el permiso de acceso y la gestión de los accesos simultáneos.
Métodos de acceso remoto. Permisos de Accesos: Un sistema de archivos distribuidos provee al usuario de una
herramienta flexible que permite compartir archivos extensos entre ellos. Esta herramienta actualmente utilizada
con mucho éxito (pero con algunas deficiencias) no es más que una lista de derechos de acceso los cuales pueden
ser asignados a un usuario en particular para un archivo en particular. Gestión de Accesos Simultáneos El sistema
operativo o el sistema de gestión de archivos permite al usuario (que previamente ha tenido acceso a determinado
archivo) que él mismo pueda bloquear el archivo cuando vaya a utilizarlo , o en todo caso, bloquear los registros
individuales durante la actualización. Si no se considera ninguna de estas dos opciones, entonces se analizará
aspectos de exclusión mutua e interbloqueo.
ATOMICIDAD
Atomicidad Las transacciones son un mecanismo estándar para manejar los cambios al estado del un
sistema distribuido. Proveen un modelo para controlar el acceso concurrente a los datos y para manejar las
fallas inherentes al cómputo distribuido. Si se permite que el trabajo que los objetos realizan, progrese
concurrentemente sin considerar transacciones, lo único que se obtendrá será un caos total. Una transacción
es generalmente una unidad de trabajo que se hace a nombre de una aplicación o componente. Cada
transacción puede estar compuesta de múltiples operaciones realizadas en datos que están dispersos en
uno o varios procesos o en una o varias máquinas. Cada transacción asegura el trabajo de proteger la
integridad del estado de un sistema al proveer cuatro garantías básicas conocidas como las propiedades
ACID: atomicidad (atomicity), consistencia (consistency), aislamiento (isolation) y durabilidad (durability)
Atomicidad Una transacción tiene que ser atómica lo que significa que es indivisible; todas las operaciones
deben ejecutarse o ninguna en lo absoluto. No debe haber posibilidad de que solo una parte se ejecute. En
un sistema bancario, por ejemplo, una transferencia de dinero entre dos cuentas de cheques tiene que ser
atómica; tomar dinero de una cuenta para agregarlo a otra. No es posible ejecutar una de las operaciones y
la otra no. La atomicidad se garantiza a través de mecanismos de base de datos con los que se hace el
seguimiento de la transacción. S i la transacción falla por cualquier razón, las actualizaciones que se hayan
realizado hasta el momento serán deshechas. Solo si la transacción llega al fin los cambios se volverán parte
de la base de datos. La propiedad de atomicidad permite escribir operaciones que emulan transacciones de
negocio tales como retiros de cuentas de cheques, reservaciones de vuelo o compra y venta de bonos entre
otras.
Conclusión
El concepto de transparencia de un sistema distribuido va ligado a la idea de que todo el sistema
funcione de forma similar en todos los puntos de la red, independientemente de la posición del
usuario. Queda como labor del sistema operativo el establecer los mecanismos que oculten
la naturaleza distribuida del sistema y que permitan trabajar a los usuarios como si de un único equipo
se tratara.
En un sistema transparente, las diferentes copias de un archivo deben aparecer al usuario como un
único archivo. Queda como labor del sistema operativo el controlar las copias, actualizarlas en caso de
modificación y en general, la unicidad de los recursos y el control de la concurrencia.
El que el sistema disponga de varios procesadores debe lograr un mayor rendimiento del sistema, pero
el sistema operativo debe controlar que tanto los usuario como los programadores vean el núcleo del
sistema distribuido como un único procesador. El paralelismo es otro punto clave que debe controlar el
sistema operativo, que debe distribuir las tareas entre los distintos procesadores como en un sistema
multiprocesador, pero con la dificultad añadida de que ésta tarea hay que realizarla a través de varios
ordenadores.
Bibliografía
 http://www.monografias.com/trabajos6/sidi/sidi.shtml
 http://www.monografias.com/trabajos108/sistemas-operativos-distribuidos-
presentacion-powerpoint/sistemas-operativos-distribuidos-presentacion-
powerpoint.shtml
 http://www.monografias.com/docs114/sistema-distribuido/sistema-
distribuido.shtml
 https://www.slideshare.net/argentm/sistemas-operativos-distribuidos-80742837
 http://www.forodvd.com/tema/122782-metodos-de-acceso-remoto-a-equipo-
teletrabajo/
 https://www.coursehero.com/file/p7umos1/CONCLUSIONES-El-desarrollo-del-
presente-trabajo-permiti%C3%B3-conocer-m%C3%A1s-a-fondo/
Anexos

Sistemas operativos distribuidos

  • 1.
    Sistemas Operativos distribuidos Bachiller: Alberto Isaacs C.I:22.844.557. RepúblicaBolivariana De Venezuela Ministerio Del Poder Popular Para La Educación Universitaria Instituto Universitario Politécnico “Santiago Mariño” Ingeniería en sistemas
  • 2.
    INTRODUCCION En el iniciode la era de la informática las computadoras eran grandes y caras. Debido a su escasez y coste, éstas funcionaban de forma independiente entre ellas. A partir de los años 70, surgen los primeros miniordenadores, que competirían con los grandes ordenadores tanto por las prestaciones como por su precio, con lo que se extendió su uso. Los grandes sistemas centralizados fueron dejando paso lentamente a sistemas mucho más descentralizados, y formados por varios ordenadores o a sistemas multiprocesador. Pronto surgieron nuevas necesidades de interconexión de los equipos, y se desarrollaron las redes de área local (LAN), como Ethernet o Token ring. En la actualidad, Internet es la red de mayor tamaño y la más usada, y mantiene un impresionante ritmo de crecimiento. Además, Internet es la base de muchos nuevos proyectos de sistemas distribuidos.
  • 3.
    SITEMA OPERATIVO DEDISTRIBUCION Un sistema distribuido es una colección de computadoras independientes que aparecen ante los usuarios del sistema como una única computadora. Esta definición tiene dos aspectos: 1. El hardware: las máquinas son autónomas. 2. El software: los usuarios piensan que el sistema es como una única computadora.  APLICACIONES: - Una red de computadoras con una pila de procesadores - Una aerolínea - Fábrica de robots - Un banco con sucursales - Internet - Multimedia y conferencias • Sistema operativos distribuidos: - Moeba - Mach - Chorus - Clouds - Plan9 - Mosix - OpenMosix
  • 4.
    TIPOS  Sistemas Operativospor su Estructura Según [Alcal92], se deben observar dos tipos de requisitos cuando se construye un sistema operativo, los son: Requisitos de usuario: Sistema fácil de usar y de aprender, seguro, rápido y adecuado al uso al que se le destinar. Requisitos del software: Donde se engloban aspectos como el mantenimiento, forma de operación, de uso, eficiencia, tolerancia frente a los errores y flexibilidad. A continuación se describen las distintas estructuras que presentan los actuales sistemas operativos para satisfacer las necesidades que de ellos se quieren obtener.  Sistemas Operativos por Servicios Esta clasificación es la más comúnmente usada y conocida desde el punto de vista del usuario final. Esta clasificación se comprende fácilmente con el cuadro sinóptico que a continuación se muestra en la Fig. 6.  Sistemas Operativos por la Forma de Ofrecer sus Servicios Esta clasificación también se refiere a una visión externa, que en este caso se refiere a la del usuario, el cómo accesa los servicios se pueden detectar dos tipos principales: sistemas operativos de red y sistemas operativos distribuídos.
  • 5.
    BÁSICAMENTE LOS SISTEMASDISTRIBUIDOS CUMPLEN UNA SERIE DE CARACTERÍSTICAS: Los interfaces software clave del sistema están claramente especificados y se ponen a disposición de desarrolladores. En una palabra, los interfaces se hacen públicos. Los sistema distribuidos abiertos se basan en la provisión de un mecanismo uniforme de comunicación entre procesos e interfaces publicados para acceder a recursos compartidos. Los sistema distribuidos abiertos pueden construirse a partir de hardware y software heterogéneo, posiblemente proveniente de vendedores diferentes. Pero la conformidad de cada componente con el estándar publicado debe ser cuidadosamente comprobada y certificada si se quiere evitar tener de integración.
  • 6.
    CARACTERÍSTICAS DE REDESE INTERCONEXIÓN  Se conecta fácilmente al PC vía Ethernet  Hasta 8 Mbps de flujo entrante, 1 Mbps de flujo saliente  Permite a múltiples usuarios compartir una sola conexión ADSL con una dirección WAN IP  Servidor integrado LAN DHCP  Servidor DNS integrado y relé.  Sistema operativo independiente (funciona con: Windows 95, 98, NT, Mac OS, Unix, Linux)  "Siempre activado "(ponteado) o por marcación (PPP)  Programa de inicio rápido basado en navegador  Firewall de software actualizable  Voz de datos simultáneos en una sola línea de teléfono  No requiere instalación de software  Aprobado para conexiones a todos los operadores más importantes de la red  Cumple estándares ADSL (ANSI T1.413 Issue2, G.dmt, G.lite)  Disponible como hub de 4 puertos o con conexión ATMF
  • 7.
    CARACTERÍSTICAS DE PROTOCOLODE COMUNICACION Un protocolo es el conjunto de normas para comunicarse dos o más entidades (objetos que se intercambian información). Los elementos que definen un protocolo son: - Sintaxis: formato, codificación y niveles de señal de datos. - Semántica: información de control y gestión de errores. - Temporización: coordinación entre la velocidad y orden secuencial de las señales. Las características más importantes de un protocolo son: - Directo/indirecto: los enlaces punto a punto son directos pero los enlaces entre dos entidades en diferentes redes son indirectos ya que intervienen elementos intermedios. Monolítico/estructurado: Monolítico es aquel en que el emisor tiene el control en una sola capa de todo el proceso de transferencia. En protocolos estructurados, hay varias capas que se coordinan y que dividen la tarea de comunicación.- Simétrico/asimétrico: los simétricos son aquellos en que las dos entidades que se comunican son semejantes en cuanto a poder tanto emisores como consumidores de información. Un protocolo es asimétrico si una de las entidades tiene funciones diferentes de la otra (por ejemplo en clientes y servidores). Normalizado/no normalizado: Los no normalizados son aquellos creados específicamente para un caso concreto y que no va a ser necesario conectarlos con agentes externos. En la actualidad, para poder intercomunicar muchas entidades es necesaria una normalización.
  • 8.
    GESTIÓN DE MEMORIAEN SISTEMAS DISTRIBUIDOS Una de las principales características de un sistema distribuido es la ausencia de una memoria común. Esto hace que la comunicación y sincronización en este tipo de sistemas tenga que hacerse mediante el intercambio de mensajes. La mayoría de los sistemas distribuidos actuales siguen este modelo, con cada computadora gestionando su memoria virtual. Sin embargo, hay propuestas que intentan mejorar este esquema. Estas propuestas son: • Utilización de paginadores externos. • Memoria compartida distribuida. La utilización de paginadores externos: Se basa en almacenar el espacio de intercambio (swap) en servidores de archivos distribuidos y en el empleo de paginadores externos, que son procesos que se encargan de tratar los fallos de página que ocurren en una computadora. El empleo de paginadores externos permite disponer de un sistema con una gran cantidad de espacio para paginación, liberando a las computadoras de reservar espacio para la paginación. La memoria compartida distribuida: Es una abstracción que permite que los procesos que ejecutan en un sistema distribuido puedan comunicarse utilizando memoria compartida. Esta abstracción se construye utilizando: el paso de mensajes disponible. El empleo de memoria compartida como mecanismo de comunicación': facilita el desarrollo de aplicaciones, ya que el modelo de programación es más sencillo y lá sincronización puede realizarse utilizando construcciones tradicionales, cómo pueden ser los semáforos.
  • 9.
    VENTAJAS DE LOSSISTEMAS DISTRIBUIDOS Con respecto a Sistemas Centralizados: Una de las ventajas de los sistemas distribuidos es la economía, pues es mucho más barato, añadir servidores y clientes cuando se requiere aumentar la potencia de procesamiento.  El trabajo en conjunto. Por ejemplo: en una fábrica de ensamblado, los robots tienen sus CPUs diferentes y realizan acciones en conjunto, dirigidos por un sistema distribuido.  Tienen una mayor confiabilidad. Al estar distribuida la carga de trabajo en muchas máquinas la falla de una de ellas no afecta a las demás, el sistema sobrevive como un todo.  Capacidad de crecimiento incremental. Se puede añadir procesadores al sistema incrementando su potencia en forma gradual según sus necesidades. Con respecto a PCs Independientes:  Se pueden compartir recursos, como programas y periféricos, muy costosos. Ejemplo: Impresora Láser, dispositivos de almacenamiento masivo, etc. 1. Al compartir recursos, satisfacen las necesidades de muchos usuarios a la vez. Ejemplo: Sistemas de reservas de aerolíneas.  Se logra una mejor comunicación entre las personas. Ejemplo: el correo electrónico.  Tienen mayor flexibilidad, la carga de trabajo se puede distribuir entre diferentes ordenadores.
  • 10.
    DESVENTAJAS DE LOSSISTEMAS DISTRIBUIDOS El principal problema es el software, es el diseño, implantación y uso del software distribuido, pues presenta numerosos inconvenientes. Los principales interrogantes son los siguientes: - ¿Qué tipo de S. O., lenguaje de programación y aplicaciones son adecuados para estos sistemas?. - ¿Cuánto deben saber los usuarios de la distribución?. - ¿Qué tanto debe hacer el sistema y qué tanto deben hacer los usuarios?. La respuesta a estos interrogantes no es uniforme entre los especialistas, pues existe una gran diversidad de criterios y de interpretaciones al respecto. Otro problema tiene que ver con las redes de comunicación. Por ejemplo: -Perdida de mensajes, saturación en el tráfico, etc. Un problema que puede surgir al compartir datos es la seguridad de los mismos. En general se considera que las ventajas superan a las desventajas, si estas últimas se administran seriamente.
  • 11.
    Un sistema operativode red (Network Operating System) es un componente software de una computadora que tiene como objetivo coordinar y manejar las actividades de los recursos del ordenador en una red de equipos. Consiste en un software que posibilita la comunicación de un sistema informático con otros equipos en el ámbito de una red. Dependiendo del fabricante del sistema operativo de red, tenemos que el software de red para un equipo personal se puede añadir al propio sistema operativo del equipo o integrarse con él. Netware de Novell es el ejemplo más familiar y famoso de sistema operativo de red donde el software de red del equipo cliente se incorpora en el sistema operativo del equipo. El equipo personal necesita ambos sistema operativos para gestionar conjuntamente las funciones de red y las funciones individuales. Su comparación con sistemas operativos distribuidos: Sistemas operativos Son aquellos que te permiten instalar programas en el disco duro para compartir recursos entre varios equipos(cliente). Existen diferentes sistemas operativos de red los cuales se clasifican por las siguiente características: •Medios de transmisión. •Tipos de usuario(Permisos). •Cantidad de programas que proporcione a nivel corporativo. El primer Sistema Operativo de red estaba enfocado a equipos con un procesador Mochorola 68000, pasando posteriormente a procesadores Intel como Novell Netware. Los Sistemas Operativos de red mas ampliamente usados son: Novell Netware, Personal Netware, LAN Manager, Windows NT Server, UNIX, LANtastic, Li. La mayoria, de los sistemas actualmente,j&b utilizan el Sistema Operativo Linux, debido a su elevada seguridad, y estabilidad, Mac es una buena opcion si se disponen de los recursos necesarios, la diferencia entre ambos radica en la licencia, el primero es libre y la segunda es propietario. SISTEMA OPERATIVO DE RED (NOS)
  • 12.
    ROBUSTEZ El primer pasoque tenemos que dar, antes de proceder a analizar a fondo el significado del término robustez, es determinar su origen etimológico. Al hacerlo descubrimos que se trata de una palabra que procede del latín, y más concretamente del vocablo “robustus” que a su vez emana de “robur”, que puede traducirse como “roble”. Robustez es la cualidad de robusto. Este adjetivo hace referencia a aquello vigoroso, fuerte o firme. Por ejemplo: “Es un coche de gran robustez que puede recorrer miles de kilómetros sin sufrir ningún daño”, “La robustez del equipo se resintió con la salida de Vokachik”, “Para que un emprendimiento tenga robustez, lo más importante es contar con una buena reserva financiera”. La robustez puede referirse a características físicas o simbólicas. Una construcción que se mantiene en pie desde hace varios siglos demuestra su robustez por haber resistido el paso del tiempo. Esto puede ser posible por la calidad de los materiales y la capacidad de los constructores. En cambio, si una construcción comienza a tener fallas estructurales a los cinco años de su nacimiento, nadie podría destacar su robustez, ya que se trata de una edificación endeble y frágil. Dentro del ámbito matemático y estadístico, tenemos que subrayar que existe lo que se conoce como estadística robusta. Esta es una aproximación a los métodos clásicos de trabajo que existen en dicha área pero que tiene como particularidad que crea un conjunto de estadísticos o estimadores que no se ven afectados, bajo ningún concepto, por variaciones respecto a las hipótesis.
  • 13.
    En este sentido,tendríamos que destacar además que aquella da lugar a que se pueda proceder a determinar la robustez de un método de trabajo, la cual se sustentará en características tales como la función de influencia o lo que se ha dado en llamar punto de quiebre, que sirve para dejar claras las observaciones incorrectas.Un sistema informático, por otra parte, puede vanagloriarse de su robustez si puede ejecutar diversos procesos de manera simultánea sin generar fallos o bloquearse (colgarse). Un ejemplo de sistema robusto es aquel destinado a la creación de gráficos en 3D que posibilita trabajar con imágenes muy pesadas sin problemas. Si el programa se cuelga al cargar la primera imagen, se trata de una aplicación poco robusta.Como puede verse en estos ejemplos, la robustez no siempre hace referencia a lo material. Una construcción robusta sí requiere de componentes físicos que le permitan contar con esta cualidad, pero un programa informático con el mismo calificativo alcanza dicha denominación por el tipo de programación o por su gestión de la información digital.Asimismo, hay que resaltar que robustez es también una de las cualidades más importantes que se establecen en la tercera generación del videojuego Pokemon. Se trata de una habilidad que permite no sólo que el personaje siga viviendo sino también que pueda hacer frente a los golpes de tipo fulminante que intentan asestarle sus rivales.No obstante, existen otros juegos de ese tipo que, del mismo modo, establecen la robustez como una cualidad para los participantes. Este sería el caso, por ejemplo, de “World of Warcraft”.
  • 14.
    ASPECTOS DE DISEÑO: Acontinuación se analiza en forma breve algunos de los aspectos claves del diseño con los que deben trabajar las personas que piensan construir un sistema operativo distribuido.  Transparencia: Diseñar el sistema de forma que todas las personas piensen que la colección de máquinas es tan sólo un sistema de tiempo compartido, de un procesador, a la manera antigua.  Tipos de Transparencia: - Transparencia de localización: los usuarios no pueden indicar la localización de los recursos. - Transparencia de migración: los recursos se pueden mover a voluntad sin cambiar sus nombres. - Transparencia de réplica: los usuarios no pueden indicar el número de copias existentes. - Transparencia de concurrencia: varios usuarios pueden compartir recursos de manera automática. - Transparencia de paralelismo: las actividades pueden ocurrir en paralelo sin el conocimiento de los usuarios
  • 15.
    CONTROL DE CONCURRECIA Muchossistemas de bases de datos son capaces de manejar de forma concurrente a múltiples usuarios. En algunas situaciones cada usuario puede estar interactuando con una base de datos diferente, mientras que en otras pueden ser muchos los usuarios que interactúen con la misma base de datos. Las bases de datos muy grandes, como, por ejemplo, las asociadas con los sistemas de reserva de billetes para líneas aéreas, pueden ser consultadas por millares de usuarios simultáneamente. Incluso en casos extremos como éste, cada usuario individual no suele ser consciente de estar compartiendo los mismos datos con otras personas. La responsabilidad del correcto intercambio de mensajes entre los usuarios y las bases de datos apropiadas es compartida por el sistema operativo y por el SGBD. En este contexto, un usuario podría referirse tanto a una persona sentada a un terminal, como a un programa por lotes que interactúa con una base de datos. Cuando varios usuarios acceden concurrentemente a una misma base de datos, existen varios tipos de potenciales conflictos relativos al uso de los datos. Estos conflictos podrían ocurrir, por ejemplo, si un usuario estuviese intentando modificar una información que otros usuarios están intentando leer. Otra posibilidad sería el que dos usuarios pudiesen intentar actualizar simultáneamente el mismo registro; o, peor aún, que un usuario pudiese intentar leer un registro mientras otro está intentando borrarlo. El sistema de bases de datos debe asegurarse de que los conflictos de este tipo se resuelvan de forma que satisfagan las necesidades de los diferentes usuarios, sin crear ninguna confusión durante el proceso. Este tipo de tarea del SGBD se denomina control de concurrencia.
  • 16.
    Para ilustrar conmayor detalle los tipos de conflictos que pueden surgir, supongamos que dos usuarios, LEE y ESCRIBE, están trabajando concurrentemente con la misma base de datos. LEE introduce una petición para una transacción que lee un registro determinado; aproximadamente al mismo tiempo, ESCRIBE solicita una transacción que modifica ese mismo registro. El resultado que el usuario LEE va a ver dependerá de cuál de las dos transacciones realice en primer lugar el sistema de bases de datos. Si se procesa en primer lugar la transacción completa de LEE, se enviará a éste la versión antigua del registro. Por otro lado, si la primera en procesarse completamente es la transacción para ESCRIBE, el registro será modificado primero, y LEE verá la nueva versión del mismo. Las transacciones de los usuarios no son procesadas necesariamente en el orden cronológico en el que han sido solicitadas. LEE puede haber solicitado una transacción varios segundos antes de que lo haya hecho ESCRIBE, y, sin embargo, la transacción de ESCRIBE puede que se complete antes. Esta posibilidad existe porque una transacción puede componerse de muchas partes diferentes, cada una de las cuales se procesa por separado. Debido a la complejidad del funcionamiento tanto del sistema operativo como del SGBD, es más que posible que la transacción A comience antes que la B, pero que la B se complete antes que la A.
  • 17.
    MÉTODOS DE ACCESOREMOTO Métodos de acceso remoto. Modelo Carga/Descarga Consiste básicamente en dos operaciones: lectura y escritura. La primera operación consiste en la transferencia de un archivo completo desde el servidor hacia el cliente solicitante; la segunda operación consiste en el envío de un archivo del cliente al servidor, es decir, en sentido contrario. Mientras tanto los archivos pueden ser almacenados en memoria o en un disco local, según sea el caso. Modelo de Acceso Remoto Este tipo de modelo consiste en que todas las operaciones (abrir y cerrar, leer y escribir, etc.) se realizan en el servidor mas no en los clientes. El modelo de acceso remoto. Estos dos modelos se diferencian en que en el primero se debe transferir el archivo completo del servidor al cliente y viceversa, lo que no es necesario en el modelo de acceso remoto. Debemos tener en cuenta que el solo hecho de compartir archivos puede traer dos problemas principales por resolver: el permiso de acceso y la gestión de los accesos simultáneos. Métodos de acceso remoto. Permisos de Accesos: Un sistema de archivos distribuidos provee al usuario de una herramienta flexible que permite compartir archivos extensos entre ellos. Esta herramienta actualmente utilizada con mucho éxito (pero con algunas deficiencias) no es más que una lista de derechos de acceso los cuales pueden ser asignados a un usuario en particular para un archivo en particular. Gestión de Accesos Simultáneos El sistema operativo o el sistema de gestión de archivos permite al usuario (que previamente ha tenido acceso a determinado archivo) que él mismo pueda bloquear el archivo cuando vaya a utilizarlo , o en todo caso, bloquear los registros individuales durante la actualización. Si no se considera ninguna de estas dos opciones, entonces se analizará aspectos de exclusión mutua e interbloqueo.
  • 18.
    ATOMICIDAD Atomicidad Las transaccionesson un mecanismo estándar para manejar los cambios al estado del un sistema distribuido. Proveen un modelo para controlar el acceso concurrente a los datos y para manejar las fallas inherentes al cómputo distribuido. Si se permite que el trabajo que los objetos realizan, progrese concurrentemente sin considerar transacciones, lo único que se obtendrá será un caos total. Una transacción es generalmente una unidad de trabajo que se hace a nombre de una aplicación o componente. Cada transacción puede estar compuesta de múltiples operaciones realizadas en datos que están dispersos en uno o varios procesos o en una o varias máquinas. Cada transacción asegura el trabajo de proteger la integridad del estado de un sistema al proveer cuatro garantías básicas conocidas como las propiedades ACID: atomicidad (atomicity), consistencia (consistency), aislamiento (isolation) y durabilidad (durability) Atomicidad Una transacción tiene que ser atómica lo que significa que es indivisible; todas las operaciones deben ejecutarse o ninguna en lo absoluto. No debe haber posibilidad de que solo una parte se ejecute. En un sistema bancario, por ejemplo, una transferencia de dinero entre dos cuentas de cheques tiene que ser atómica; tomar dinero de una cuenta para agregarlo a otra. No es posible ejecutar una de las operaciones y la otra no. La atomicidad se garantiza a través de mecanismos de base de datos con los que se hace el seguimiento de la transacción. S i la transacción falla por cualquier razón, las actualizaciones que se hayan realizado hasta el momento serán deshechas. Solo si la transacción llega al fin los cambios se volverán parte de la base de datos. La propiedad de atomicidad permite escribir operaciones que emulan transacciones de negocio tales como retiros de cuentas de cheques, reservaciones de vuelo o compra y venta de bonos entre otras.
  • 19.
    Conclusión El concepto detransparencia de un sistema distribuido va ligado a la idea de que todo el sistema funcione de forma similar en todos los puntos de la red, independientemente de la posición del usuario. Queda como labor del sistema operativo el establecer los mecanismos que oculten la naturaleza distribuida del sistema y que permitan trabajar a los usuarios como si de un único equipo se tratara. En un sistema transparente, las diferentes copias de un archivo deben aparecer al usuario como un único archivo. Queda como labor del sistema operativo el controlar las copias, actualizarlas en caso de modificación y en general, la unicidad de los recursos y el control de la concurrencia. El que el sistema disponga de varios procesadores debe lograr un mayor rendimiento del sistema, pero el sistema operativo debe controlar que tanto los usuario como los programadores vean el núcleo del sistema distribuido como un único procesador. El paralelismo es otro punto clave que debe controlar el sistema operativo, que debe distribuir las tareas entre los distintos procesadores como en un sistema multiprocesador, pero con la dificultad añadida de que ésta tarea hay que realizarla a través de varios ordenadores.
  • 20.
    Bibliografía  http://www.monografias.com/trabajos6/sidi/sidi.shtml  http://www.monografias.com/trabajos108/sistemas-operativos-distribuidos- presentacion-powerpoint/sistemas-operativos-distribuidos-presentacion- powerpoint.shtml http://www.monografias.com/docs114/sistema-distribuido/sistema- distribuido.shtml  https://www.slideshare.net/argentm/sistemas-operativos-distribuidos-80742837  http://www.forodvd.com/tema/122782-metodos-de-acceso-remoto-a-equipo- teletrabajo/  https://www.coursehero.com/file/p7umos1/CONCLUSIONES-El-desarrollo-del- presente-trabajo-permiti%C3%B3-conocer-m%C3%A1s-a-fondo/
  • 21.