ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Características de los Sistemas Operativos distribuidos


Enviado por   •  22 de Febrero de 2019  •  Documentos de Investigación  •  5.295 Palabras (22 Páginas)  •  85 Visitas

Página 1 de 22

Características de los Sistemas Operativos distribuidos:

• Colección de sistemas autónomos capaces de comunicación y cooperación mediante interconexiones hardware y software .
• Gobierna operación de un S.C. y proporciona abstracción de máquina virtual a los usuarios.
• Objetivo clave es la transparencia.
• Generalmente proporcionan medios para la compartición global de recursos.
• Servicios añadidos: denominación global, sistemas de archivos distribuidos, facilidades para distribución de cálculos (a través de comunicación de procesos internodos, llamadas a procedimientos remotos, etc.).

Unidad 2 Comunicación en los sistemas operativos distribuidos

2.1 Comunicación Sod

La comunicación entre procesos en sistemas con un único procesador se lleva a cabo mediante el uso de memoria compartida entre los procesos. En los sistemas distribuidos, al no haber conexión física entre las distintas memorias de los equipos, la comunicación se realiza mediante la transferencia de mensajes.

2.1.1 Comunicación Cliente Servidor Sockets

Origen de los socket tuvo lugar en una variante del sistema operativo Unix conocida como BSD Unix. En la universidad de Berkeley, en los inicios del Internet, pronto se hizo evidente que los programadores necesitarían un medio sencillo y eficaz para escribir programas capaces de intercomunicarse entre sí. Esta necesidad dio origen a la primera especificación e implementación de sockets.

Cliente-Servidor es el modelo que actualmente domina el ámbito de comunicación, ya que descentraliza los procesos y los recursos. Es un Sistema donde el cliente es una aplicación, en un equipo, que solicita un determinado servicio y existe un software, en otro equipo, que lo proporciona.

Los servicios pueden ser;

a)Ejecución de un programa.

b)Acceso a una Base de Datos.

c)Acceso a un dispositivo de hardware.

Solo se requiere un medio físico de comunicación entre las maquinas y dependerá de ala naturaleza de este medio la vialidad del sistema.

Definición de Socket: designa un concepto abstracto por el cual dos programas (posiblemente situados en computadoras distintas) pueden intercambiarse cualquier flujo de datos, generalmente de manera fiable y ordenada.

Los sockets proporcionan una comunicación de dos vías, punto a punto entre dos procesos. Los sockets son muy versátiles y son un componente básico de comunicación entre interprocesos e intersistemas. Un socket es un punto final de comunicación al cual se puede asociar un nombre.

Para lograr tener un socket es necesario que se cumplan ciertos requisitos:

1.Que un programa sea capaz de localizar al otro.

2.Que ambos programas sean capaces de intercambiarse información.

Por lo que son necesarios tres recursos que originan el concepto de socket

a)Un protocolo de comunicaciones, que permite el intercambio de octetos.

b)Una dirección del Protocolo de Red (Dirección IP, si se utiliza el Protocolo TCP/IP), que identifica una computadora.

c)Un número de puerto, que identifica a un programa dentro de una computadora. Con un socket se logra implementar una arquitectura cliente-servidor. la comunicación es iniciada por uno de los programas (cliente). Mientras el segundo programa espera a que el otro inicie la comunicación (servidor). Un Socket es un archivo existente en el cliente y en el servidor.

Si un socket es un punto final de un puente de comunicaron de dos vías entre dos programas que se comunican a través de la red, ¿Cómo funciona?. Normalmente, un servidor funciona en una computadora específica usando un socket con un número de puerto especifico. El cliente conoce el nombre de la maquina (hostname) o el IP, en la cual el servidor esta funcionando y el numero del puerto con el servidor esta conectado.

Si el cliente lanza una demanda de conexión y el servidor acepta la conexión, este abre un socket en un puerto diferente, para que pueda continuar escuchando en el puerto original nuevas peticiones de conexión, mientras que atiende a las peticiones del cliente conectado. El cliente y el servidor pu8eden ahora comunicarse escribiendo o leyendo en sus respectivos sockets.

Los tipos de socket definen las propiedades de comunicación visibles para la aplicación. Los procesos se comunican solamente entre los sockets del mismo tipo. Existen cinco tipos de sockets.

El Cliente actúa de la siguiente forma:

1)Establece una conexión con el servidor (Crea un socket con el servidor). 2)Mandar mensajes al servidor o Esperar un mensaje de él.(Consultas) 3)Esperar su respuesta o contestarle(existen casos en que este paso no es necesario). 4)Repetir los pasos 2 y 3 mientras sea necesario. 5)Cerrar la conexión con el servidor.

El servidor actúa así.

1)Inicializa un puerto de comunicación, en espera de clientes que intenten conectarse a él (Crea un serverSocket).

2)Una vez que se conecta alguien, crea un hilo de ejecución para este usuario mientras que el thread principal vuelve al paso 1. Esto comunmente se hace para que el servidor puede atender a varios clientes al mismo tiempo.

3)Se comunica con el cliente mediante el socket creado entre el cliente y él.

4)Espera que el cliente se vaya o lo bota el mismo servidor (Cierrra el socket entre ellos) y elimina el thread de comunicación entre ellos.

Las propiedades de un socket dependen de las características del protocolo en el que se implementan. El protocolo más utilizado es TCP, aunque también es posible utilizar UDP o IPX.

Gracias al protocolo TCP, los sockets tienen las siguientes propiedades:

I.Orientado a conexión. Se garantiza la transmisión de todos los octetos sin errores ni omisiones.

II.Se garantiza que todo octeto llegará a su destino en el mismo orden en que se ha transmitido.

Los tipos de socket definen las propiedades de comunicación visibles para la aplicación. Los procesos se comunican solamente entre los sockets del mismo tipo. Existen tres tipos básicos de sockets.

Socket de flujo : da un flujo de datos de dos vías, confiable, y sin duplicados sin límites de grabación. El flujo opera en forma parecida a una conversación telefónica. El tipo del socket es SOCK_STREAM, el cual en el dominio de Internet usa TCP (Transmission Control Protocol).

Socket de datagrama

Soporta un flujo de mensajes de dos vías. En un socket de datagrama podría recibir mensajes en diferente orden de la secuencia de la cual los mensajes fueron envíados. Los límites de grabación en los datos son preservados. Los sockets de datagrama operan parecidos a pasar cartas hacia adelante y hacia atrás en el correo. El tipo de socket es SOCK_DGRAM, el cual en el dominio de internet usa UDP (User Datagram Protocol).

...

Descargar como (para miembros actualizados)  txt (33.2 Kb)   pdf (199.7 Kb)   docx (86.3 Kb)  
Leer 21 páginas más »
Disponible sólo en Clubensayos.com