II. MODELOS FUNDAMENTALES DE LOS SISTEMAS DISTRIBUIDOS. Maestría en Ingeniería de Sistemas y Computación Profesor: MSc. Henry Alberto Diosa

Tamaño: px
Comenzar la demostración a partir de la página:

Download "II. MODELOS FUNDAMENTALES DE LOS SISTEMAS DISTRIBUIDOS. Maestría en Ingeniería de Sistemas y Computación Profesor: MSc. Henry Alberto Diosa"

Transcripción

1 II. MODELOS FUNDAMENTALES DE LOS SISTEMAS DISTRIBUIDOS Maestría en Ingeniería de Sistemas y Computación Profesor: MSc. Henry Alberto Diosa

2 CRÉDITOS Colouris, George; Dollimore, Jean and Kindberg, Tim. Sistemas Distribuidos. Conceptos y Diseño. Addison Wesley. Commer, Douglas E. Internetworking with TCP/IP. Vol I. Prentice Hall Tanenbaum, Andrew S. Sistemas Operativos Modernos.Prentice Hall Newman, Alexander et al. Using JAVA. Que Corporation Hamilton, Dave y Mickey, Williams. Programming Windows NT 4. SAMS Publishing Baker, Seán. CORBA Distributed Objects. Addison-Wesley.1997 Cockaine, William R.; Zyda,Michael. Mobile Agents.Manning Publications Co St. Laurent, Simon; Johnston, Joe;Dumbill, Edd. Programming Web Services with XML-RPC.O Reilly & Associates, Inc Vinoski, Steve. Where is Middleware?. IEEE Internet Computing. Marzo-Abril págs

3 SOBRE LOS MODELOS ARQUITECTÓNICOS Ver revisión sucinta a arquitecturas de software

4 Capas de servicios hardware y software en un Sistema Distribuido Servicios y aplicaciones Middleware Sistema operativo( Windows XP, Sun OS, Solaris, Mac OS, Linux, UNIX) Plataforma Hardware de red y computador

5 MIDDLEWARE

6 Qué es y dónde está el Middleware? PROCESOS DE USUARIO APLICACIÓN DESARROLLO DE APLICACIONES INTERFACE DE USUARIO MIDDLEWARE DATOS GESTIÓN DE SISTEMAS SISTEMA DE DISTRIBUCIÓN GESTIÓN DE DATOS

7 Cuáles tecnologías han soportado el Middleware? Remote Procedure Call Pipes Sockets CORBA/DCOM RMI de Java XML-RPC (Progenitor de los servicios Web) Objetos y Agentes de Software Móviles

8 REMOTE PROCEDURE CALL(I) MÁQUINA CLIENTE STUB DEL CLIENTE STUB DEL SERVIDOR MÁQUINA SERVIDORA PARAM. EMPACADOS LLAMADA PARAM. DESEMPACADOS LLAMADA CLIENTE SERVIDOR REGRESO RESULTADOS DESEMPACADOS RESULTADOS DESEMPACADOS REGRESO NÚCLEO NÚCLEO

9 REMOTE PROCEDURE CALL(II) MÁQUINA CLIENTE STUB DEL CLIENTE STUB DEL SERVIDOR MÁQUINA SERVIDORA MENSAJE.. n=sum(4,7) SUM 4 7 SUM 4 7 sum(i,j) Int i,j; { Return (i+j); } NÚCLEO NÚCLEO CÁLCULO REMOTO DE SUM (4,7)

10 PIPES:CANALES (I) * Forma de comunicación de procesos. * Un proceso envía datos por un extremo del tubo y otro proceso lee los datos en el otro extremo. Proceso 1 Proceso 2 Escribe Lee

11 ANONYMOUS PIPES(I) * Pipes sin nombre * En una sola direccion * No trabajan sobre la red, el cliente y el servidor deben habitar la misma máquina. * Procesos relacionados: Padre - Hijo

12 ANONYMOUS PIPES(II) STD OUT STD IN Padre H1 H3 STD OUT H4 STDIN H2 Hijo

13 ANONYMOUS PIPES(III) PADRE HIJO SALVAR STDIN Y STDOUT CREAR HANDLES CREATEPIPE() ASIGNAR STDIN,STDOUT A HANDLE CREATEPROCESS( Hijo ) RESTAURAR STDIN Y STDOUT WRITEFILE( Hacia el hijo ) READFILE( Del hijo ) PROCESO CREADO READFILE( Del padre ) WRITEFILE( Hacia el padre )

14 NAMED PIPES(I) Utilizan un nombre. Unidireccional o bidireccional. Trabajan en red. Pipes para comunicación entre el servidor y uno o mas clientes.

15 NAMED PIPES(II) SERVIDOR CREAR CONTROLADOR CREATE NAMED PIPE CONNECT NAMED PIPE CLIENTE CREAR CONTROLADOR CREATE FILE CREATE THREAD READ FILE WRITE FILE WRITE FILE READ FILE DISCONNECT NAMED PIPE

16 SOCKETS(I)

17 SOCKETS(II) PROC. EMISOR ESPACIO DEL USUARIO PROC. RECEPTOR PROTOCOLOS DE RED CONTROLADORES DE INTERFACES DE RED HARDWARE

18 SOCKETS EN EL MODELO OSI SOCKET

19 INTERACCIÓN SOCKETs CLIENTE/SERVIDOR socket() socket() Open bind() Open bind() Bound Bound socket() Open connect() listen() accept() bind() recv() Connected recvfrom() closesocket() Cliente send() Listenning Bound connect() send() recv() Connected recvfrom() sendto() closesocket() Servidor

20 LOS NÚMEROS DE PUERTO

21 IMPLEMENTACIÓN DE SOCKETs EN JAVA

22 EL MODELO ORIENTADO A OBJETOS ENCAPSULACIÓN PRINCIPIO OPEN/CLOSE HERENCIA REUSABILIDAD POLIMORFISMO ABSTRACCIÓN

23 MODELO DE REFERENCIA OMA

24 CORBA CLIENTE IMPLEMENTACIÓN CON OBJETOS INVOCACIÓN DINÁMICA INTERFACES STUB IDL INTERFACE ORB DSI PLANTILLA IDL OA NÚCLEO ORB SERVICIOS CORBA FACILIDADES CORBA

25 COMO IMPLEMENTAR CORBA? PROCEDIMIENTO BÁSICO

26 CORBA:ESPECIFICACIÓN IDL DEFINICIÓN INTERFACE IDL //Archivo Ofic_Teatro.idl typedef float Precio; struct Lugar { char fila; unsigned long silla; }; interface Ofic_Teatro { readonly attribute string nombre; readonly attribute unsigned long num_sillas; Precio obtener_precio(in Lugar Lugar_escoge); boolean reserva_una_silla(in Lugar Lugar_escoge, in string Tarj_cradito); COMPILACIÓN ITERFACE IDL idl modificador Ofic_Teatro.idl PRODUCE: Ofic_Teatro.h para ser incluido en la implementación de la clase y en todos los clientes. Ofic_TeatroC.cpp: Archivo fuente a ser compilado e incluido en los clientes de Ofic_Teatro. Incluye el código requerido para hacer equerimientos remotos sobre objetos Ofic_Teatro (Stub) Ofic_TeatroS.cpp: Archivo fuente a ser compilado e inlcuido en la implementación de Ofic_Teatro como servidor que acepta requerimientos remotos (Skeleton)

27 EL CODIGO C++ PRODUCIDO //ARCHIVO Ofic_Teatro.h #include <CORBA.h> typedef CORBA::Float Precio; struct Lugar { CORBA::Char fila; CORBA::uLong silla; }; class Ofic_Teatro:public virtual CORBA::Object { public: virtual char* nombre() throw (CORBA::SystemException} virtual CORBA::Ulong num_sillas() throw (CORBA::SystemException) virtual Precio obtener_precio (const Lugar& Lugar_escoge) throw (CORBA::SystemException); virtual CORBA::Boolean reserva_una_silla (const Lugar& Lugar_escoge, const char* Tarj_credito) throw (CORBA::SystemException); };

28 IMPLEMENTACIÓN El programador debe implementar la interface de la clase en código C++, en este caso. Se puede denominar a la implementación Ofic_Teatro_i.h y Ofic_Teatro_i.cpp. La forma de encadenar este código a la interface puede ser: //Archivo Ofic_Teatro_i.h #include Ofic_Teatro.h class Ofic_Teatro_i:public virtual Ofic_TeatroBOAImpl { //declaración de atributos y métodos }; Luego como es costumbre se implementan los métodos u operaciones en otro archivo de Ofic_Teatro_i.cpp que debe incluir Ofic_Teatro_i.h

29 OBJETO SERVIDOR //c++ en archivo Srv_main.cpp #include Ofic_Teatro_i.h #include <iostream.h> int main() { //se crean los objetos servidores Ofic_Teatro_i mi_oficina(//parámetros de constructor) //forma de hacer disponible el objeto CORBA servidor CORBA::Orbix.imp_is_ready( Ofic_TeatroSrv ); cout << Servidor listo << endl;

30 REGISTRO DEL SERVIDOR El servidor debe ser registrado de tal manera que éste se ejecute automáticamente cuando un cliente usa un objeto Ofic_Teatro. El sistema mantiene un Implementation Repository(daemon) que hace un mapping del nombre del servidor al nombre del archivo ejecutable que implementa el mismo.para esto se usa el comando putit sobre la máquina local, así: $ putit Ofic_TeatroSrv < camino completo.exe del servidor> c:\> putit Ofic_TeatroSrv < camino completo.exe del servidor>

31 ESCRIBIR UN CLIENTE #include Ofic_Teatro.h #include <iostream.h> int main() { Ofic_Teatro_var reserva; //Ofic_Teatro_var es generada por compiladoridl reserva = Ofic_Teatro::_bind( :Ofic_TeatroSrv ); CORBA::String_var sunombre = reserva->nombre(); cout << Ël nombre es << sunombre << endl; cout << Número sillas << reserva ->num_sillas() <<endl; Lugar p= { D, 45}; cout << El precio de la silla D45 es << reserva->obtener_precio(p); if (reserva->reserva_una_silla(p, )) cout << La silla ha sido reservada con éxito << endl; else cout << La silla no pudo ser reservada << endl; }

32 REMOTE METHOD INVOCATION RMI permite que un objeto que se ejecuta bajo el control de una JVM pueda invocar métodos de un objeto que se encuentre en ejecución bajo el control de una JVM instalada en un host diferente. La máquina que contiene el objeto cuyos métodos se pueden invocar se llama servidor. La máquina que invoca métodos sobre el objeto remoto se llama cliente.

33 ARQUITECTURA RMI

34

35 SEGURIDAD RMI no implementa ninguna política de seguridad en la capa de transporte. Las comunicaciones se realizan en "texto plano", por lo que, conceptos de seguridad no se tienen en cuenta. El servidor RMI no autentifica las peticiones de acceso sobre sus objetos, de forma que un posible cliente ilícito podría tener acceso a los objetos.

36 PAQUETES DE JAVA RMI Cliente: java.rmi Define clases, interfaces y excepciones usadas por el cliente. Servidor: java.rmi.server Define clases, interfaces y excepciones usadas por el servidor. Localización de Objetos: java.rmi.registry Define clases, interfaces y excepciones usadas para nombrar y localizar objetos remotos. Recogida de basura: java.rmi.dgc Define clases, interfaces para recogida de basura distribuida.

37 PROCESO DE DESARROLLO 1. Definir la interface remota 2. Programar la clase implementación 3. Compilar la clase implementación 4. Ejecutar el compilador de stubs (rmic) con la clase compilada. 5. Arrancar el registro RMI en el servidor (rmiregistry) 6. Ejecutar la aplicación servidor. 7. Ejecutar la aplicación cliente.

38 XML-RPC Creado por Dave Winer de Userland Software, Bob Atkinson, Mohsen Al- Ghosein de Microsoft y Don Box de Developmentor. Permite efectuar llamados a funciones a través de redes soportándose en una arquitectura RPC que combina XML y el protocolo HTTP.

39 VENTAJAS DE XML-RPC Integración de múltiples ambientes computacionales que no requieran compartir estructuras de datos complejas. Ofrece a los integradores la oportunidad de usar un vocabulario y enfoque estándar para intercambiar información.

40 DESVENTAJAS DE XML-RPC Hereda la ineficiencia del protocolo HTTP Genera vulnerabilidad en los firewalls por reutilizar HTTP. No sirve para proyectos donde se desea escalar a un tiempo de transacción mínimo para millones de transacciones a la vez.

41 OBJETOS Y AGENTES DE SOFTWARE MÓVILES EL ENFOQUE PREDOMINANTE HASTA HOY CLIENTE......!!! SERVIDOR

42 OBJETOS Y AGENTES DE SOFTWARE MÓVILES EL ENFOQUE DE PROGRAMACIÓN REMOTA CLIENTE SERVIDOR

43 CONCEPTOS OSMs Y ASMs (I): LUGARES Y AGENTES APLICACIÓN COMPRAS VENTA TIQUETES VENTA FLORES GESTOR DIRECTORIO COMUNICADOR PERSONAL SERVIDOR DE APLICACIONES

44 CONCEPTOS OSMs Y ASMs (II): CÓDIGO Y ESTADO VIAJAN VENTA TIQUETES COMUNICADOR PERSONAL SERVIDOR DE APLICACIONES

45 CONCEPTOS OSMs Y ASMs (III): LOS AGENTES PUEDEN DIALOGAR?......? VENTA TIQUETES COMUNICADOR PERSONAL SERVIDOR DE APLICACIONES

46 CONCEPTOS OSMs Y ASMs (IV): LOS AGENTES PUEDEN CONECTARSE?......? VENTA TIQUETES COMUNICADOR PERSONAL SERVIDOR DE APLICACIONES

47 CONCEPTOS OSMs Y ASMs (V): AUTORIDADES VENTA FLORES VENTA TIQUETES X COMUNICADOR PERSONAL SERVIDOR DE APLICACIONES

48 CONCEPTOS OSMs Y ASMs (VI): PERMISOS... X? VENTA TIQUETES COMUNICADOR PERSONAL SERVIDOR DE APLICACIONES

49 Qué componentes soportan la tecnología de OSMs y ASMs? Lenguaje de programación para programar agentes y lugares. Un motor o interpretador para este lenguaje. Protocolos de comunicación que permitan a los motores residir en diferentes computadores para enviar e intercambiar agentes.

50 NORMATIVIDAD MASIF(Mobile Agent System Interoperability Facility) Especification Adoptada por OMG (Object Management Group) en Febrero de 1998

51 HERRAMIENTAS DE DESARROLLO Voyager Grasshopper Caffeine Aglets Odyssey

52 VENTAJAS Reducción de costos de comunicación Permite asincronía Genera mercado de Servicios

53 CLASIFICACIÓN DE MIDDLEWARE SEGÚN STEVE VINOVSKI RPC vs. Mensajería Asíncrona. Dependiente del lenguaje vs. Independiente del lenguaje. Propietario vs. Basado en estándares. Empotrado vs. De ámbito empresarial

54 MODELOS DE DISTRIBUCIÓN BIEN POSICIONADOS HOY OMG: CORBA, CCM, OMA y MDA Sun: Java, JavaBeans, EJB, JWSDP Microsoft: COM, OLE/ActiveX, COM+,.NET CLR Otras tecnologías Advantage Plex Hitachi Appgallery Groove Transceiver

55 Conceptos a considerar en arquitecturas de sistemas distribuidos

56 Modelo C/S Client invocation invocation Server result Server result Client Key: Process: Computer:

57 Servicios proporcionados por múltiples servidores Service Client Server Server Client Server

58 Servidor Proxy Client Proxy server Web server Client Web server

59 Procesos Peer-to-Peer (P2P) Application Coordination code Application Coordination code Application Coordination code

60 Código Móvil:Applets a) Cliente requiere resultados y descarga el código del applet Cliente Applet Web Server b) Cliente interactúa con el applet Cliente Applet Web Server

61 Cliente delgado/cliente robusto Estación de trabajo Presentación Presentación Presentación Presentación Presentación Función Función Función Gestion Datos Red Presentación Función Función Función Gestion Datos Gestion Datos Gestion Datos Gestion Datos Gestion Datos Presentación distribuida thin Presentación remota Función distribuida Gestión remota de datos Bases de datos distribuidas thick

62 Dispositivos móviles gateway Music service Alarm service Internet Discovery service Hotel wireless network Camera TV/PC Laptop PDA Guests devices

63 Requisitos de diseño de SD 1. Altas prestaciones (t de respuesta, throughput, balanceo de cargas) 2. QoS 3. Replicación y uso de caché 4. Fiabilidad (Tolerancia a fallos, seguridad)

64 MODELOS FUNDAMENTALES PARA RAZONAR SOBRE SISTEMAS DISTRIBUIDOS 1. Modelo de Interacción: Aborda las prestaciones y dificultad de poner límites temporales en un sistema distribuido. 2. Modelo de fallos: Intenta dar una especificación precisa de los posibles fallos en procesos y canales de comunicación. 3. Modelo de seguridad: Discute sobre las posibles amenazas para los procesos y canales de comunicación.

65 FACTORES SIGNIFICATIVOS DEL MODELO DE INTERACCIÓN 1. Prestaciones de los canales de comunicaciones: Latencia, ancho de banda, jitter o fluctuación del retardo 2. Relojes de computadores y eventos de temporización: Tasa de deriva de reloj y sincronización de relojes

66 VARIANTES DEL MODELO DE INTERACCIÓN 1. Sistemas distribuidos síncronos: 1. Tiempo de ejecución de cada etapa de un proceso tiene ciertos límites inferior y superior. 2. Cada mensaje transmitido sobre un canal se recibe en un tiempo limitado conocido. 3. Cada proceso tiene un reloj local cuya tasa de deriva sobre el tiempo real tiene un límite conocido. 2. Sistemas distribuidos asíncronos. No hay limitaciones sobre: 1. La velocidad de procesamiento. 2. Los retardos de transmisión de mensajes. 3. Las tasas de deriva de reloj son arbitrarias.

67 EL ORDENAMIENTO DE EVENTOS X send 1 m 1 receive 4 receive Y 2 receive send 3 m 2 receive Physical time Z receive receive send A m 3 m 1 m 2 receive receive receive t 1 t 2 t 3

68 MODELO DE FALLO Fallos por omisión: Por omisión de procesos, por omisión de comunicaciones. Fallos arbitrarios Fallos de temporización Enmascaramiento de fallos Fiabilidad y comunicación uno a uno

69 MODELO DE SEGURIDAD 1. Protección de objetos 2. Aseguramiento de procesos e interacciones 3. Modelar amenazas de seguridad: A procesos, a canales de comunicación. 4. Técnicas para vencer las amenazas: Autenticación, criptografía, canales seguros. 5. Desarrollar modelos de seguridad.

Sistemas Distribuidos. (Arquitecturas)

Sistemas Distribuidos. (Arquitecturas) (Arquitecturas) Dr. Víctor J. Sosa Sosa vjsosa@cinvestav.mx II-1 Arquitecturas Los SD son los sistemas de software más complejos Nortel Networks crea switches los cuales pueden contener entre 25-30 millones

Más detalles

Modelos de los sistemas distribuidos. Jorge Iván Meza Martínez jimezam@gmail.com

Modelos de los sistemas distribuidos. Jorge Iván Meza Martínez jimezam@gmail.com Modelos de los sistemas distribuidos Jorge Iván Meza Martínez jimezam@gmail.com Especialización en Gestión de Redes de Datos Universidad Nacional de Colombia Sede Manizales 1/36 Contenidos Modelo arquitectónico

Más detalles

Tecnología de objetos distribuidos y arquitectura de componentes. Índice. Bibliografía. Introducción. Tema V

Tecnología de objetos distribuidos y arquitectura de componentes. Índice. Bibliografía. Introducción. Tema V Bibliografía Tema V Tecnología de objetos distribuidos y arquitectura de componentes. Szyperski, C. 1998. Component Software. Addison-Wesley. Ruiz Cortés, 1998. A. CORBA: Una visión general. http://www.lsi.us.es/~aruiz

Más detalles

Modelos de sistema - 2

Modelos de sistema - 2 Modelos de sistema - 2 Sistemas Distribuidos ITInformática César Llamas, febrero 2003 Algunos esquemas de esta presentación están tomados de: Instructor s Guide for Coulouris, Dollimore and Kindberg Distributed

Más detalles

MIDDLEWARE: Arquitectura para Aplicaciones Distribuidas Dr. Víctor J. Sosa Sosa vjsosa@tamps.cinvestav.mx

MIDDLEWARE: Arquitectura para Aplicaciones Distribuidas Dr. Víctor J. Sosa Sosa vjsosa@tamps.cinvestav.mx MIDDLEWARE: Arquitectura para Aplicaciones Distribuidas Dr. Víctor J. Sosa Sosa vjsosa@tamps.cinvestav.mx Contenido Middleware: Introducción Definición Genealogía Aplicaciones actuales: Servicios Web Computación

Más detalles

UNIVERSIDAD DEL VALLE FACULTAD DE INGENIERIA ESCUELA DE INGENIERÍA DE SISTEMAS Y COMPUTACIÓN MAESTRÍA EN INGENIERÍA DE SISTEMAS Y COMPUTACIÓN

UNIVERSIDAD DEL VALLE FACULTAD DE INGENIERIA ESCUELA DE INGENIERÍA DE SISTEMAS Y COMPUTACIÓN MAESTRÍA EN INGENIERÍA DE SISTEMAS Y COMPUTACIÓN UNIVERSIDAD DEL VALLE FACULTAD DE INGENIERIA ESCUELA DE INGENIERÍA DE SISTEMAS Y COMPUTACIÓN MAESTRÍA EN INGENIERÍA DE SISTEMAS Y COMPUTACIÓN CURSO: FUNDAMENTOS DE SISTEMAS DISTRIBUIDOS CONTENIDO DEL CURSO

Más detalles

Especificación de la secuencia de mensajes que se han de intercambiar. Especificación del formato de los datos en los mensajes.

Especificación de la secuencia de mensajes que se han de intercambiar. Especificación del formato de los datos en los mensajes. SISTEMAS DISTRIBUIDOS DE REDES 2.- MODELOS ORIENTADOS A OBJETOS DISTRIBUIDOS 2.1. Tecnologías de sistemas distribuidos Para la implementación de sistemas distribuidos se requiere de tener bien identificados

Más detalles

Sistemas Distribuidos. Sistemas Distribuidos. Definiciones. Definición

Sistemas Distribuidos. Sistemas Distribuidos. Definiciones. Definición Sistemas Distribuidos Sistemas Distribuidos Por: Mariela Curiel Basado en los textos: Sistemas Distribuidos Conceptos y Diseño G. Coulouris, J. Dollimore, TimKinberg Definiciones Ejemplos Desafíos en el

Más detalles

Arquitectura cliente/servidor

Arquitectura cliente/servidor Departamento de Lenguajes y Sistemas Informáticos Arquitectura cliente/servidor Programación en Internet Curso 2007-2008 Índice Introducción Tipos de servidores Ventajas Desventajas Arquitectura de una

Más detalles

Modelo de Objetos Distribuidos

Modelo de Objetos Distribuidos Remote Method Invocation Modelo de Objetos Distribuidos Un objeto remoto es un objeto cuyos métodos pueden ser invocados desde otra máquina virtual de java, potencialmente en un host diferente. Modelo

Más detalles

Arquitectura cliente/servidor

Arquitectura cliente/servidor Departamento de Lenguajes y Sistemas Informáticos Arquitectura cliente/servidor Programación en Internet Curso 2004-2005 Índice Introducción Tipos de servidores Ventajas Separación de funciones Modelos

Más detalles

Llamada a métodos remotos (RMI). Curso 04/05. Tema 9. Departament d Informàtica. Universitat de València. 1. Introducción 2

Llamada a métodos remotos (RMI). Curso 04/05. Tema 9. Departament d Informàtica. Universitat de València. 1. Introducción 2 Tema 9 Llamada a métodos remotos (RMI). Departament d Informàtica. Índice 1. Introducción 2 1.1. Cómo funciona RMI?.......................................... 2 2. Usando RMI 4 2.1. Fase de desarrollo:

Más detalles

1. Sistemas Distribuidos

1. Sistemas Distribuidos 1. Sistemas Distribuidos M. Farias-Elinos Faster!!! The Tim Allen View of Computing Bigger Problems I want 7 days of weather not 2 I want 1024x1024x16-bit color Most modern applications such as weather

Más detalles

SISTEMAS DISTRIBUIDOS

SISTEMAS DISTRIBUIDOS ASIGNATURA DE GRADO: SISTEMAS DISTRIBUIDOS Curso 2015/2016 (Código:71013029) 1.PRESENTACIÓN DE LA ASIGNATURA En la actualidad, los denominados sistemas distribuidos están cada vez más presentes en nuestra

Más detalles

Unidad I Fundamentos de Sistemas Distribuidos. M.C. Juan Carlos Olivares Rojas

Unidad I Fundamentos de Sistemas Distribuidos. M.C. Juan Carlos Olivares Rojas Unidad I Fundamentos de Sistemas Distribuidos M.C. Juan Carlos Olivares Rojas Temario 1.1. Características de un sistema distribuido 1.2. Objetivos de los sistemas distribuidos 1.3. Ventajas y desventajas

Más detalles

SISTEMAS DISTRIBUIDOS DE REDES 3.- ESTANDAR CORBA. 3.1. Características

SISTEMAS DISTRIBUIDOS DE REDES 3.- ESTANDAR CORBA. 3.1. Características SISTEMAS DISTRIBUIDOS DE REDES 3.- ESTANDAR CORBA 3.1. Características La tendencia hacia el futuro es el de lograr la integración total de componentes realizados por terceras partes, para lo cual es necesario

Más detalles

1. Visión general de RMI

1. Visión general de RMI 1. Visión general de RMI Java RMI permite al programador ejecutar métodos de objetos remotos utilizando la misma semántica que si fueran invocaciones locales (Véase Figura 1). Máquina Local (Cliente) Máquina

Más detalles

OMG - CORBA. Object Management Group. Common Object Request Broker (CORBA) http://www.omg.org. http://www.corba.org

OMG - CORBA. Object Management Group. Common Object Request Broker (CORBA) http://www.omg.org. http://www.corba.org OMG - CORBA Object Management Group http://www.omg.org Common Object Request Broker (CORBA) http://www.corba.org OMG - CORBA Objetivo OMG proveer un marco de arquitectura común n para aplicaciones orientadas

Más detalles

Capítulo 1. Componentes de CORBA.

Capítulo 1. Componentes de CORBA. Capítulo 1. Componentes de CORBA. La OMA (Object Management Architecture) define en alto nivel de abstracción las reglas necesarias para la distribución de la computación orientada a objetos (OO) en entornos

Más detalles

Programación Distribuida

Programación Distribuida PROGRAMA DE ESTUDIO Programa Educativo: Área de Formación : Licenciatura en Ciencias Computacionales Integral profesional Programa elaborado por: Programación Distribuida Horas teóricas: 1 Horas prácticas:

Más detalles

Objetos Distribuidos - Componentes. Middleware

Objetos Distribuidos - Componentes. Middleware Objetos Distribuidos - Componentes Middleware Middleware Component Oriented Development Arquitecturas 3 Tier Middleware es el software que: conecta y comunica los componentes de una aplicacion distribuida

Más detalles

ASIGNATURA: SISTEMAS OPERATIVOS II

ASIGNATURA: SISTEMAS OPERATIVOS II PLAN DE ESTUDIOS 2008 LICENCIADO EN INFORMÁTICA FACULTAD DE CONTADURÍA, ADMINISTRACIÓN E INFORMÁTICA ASIGNATURA: SISTEMAS OPERATIVOS II ÁREA DEL CONOCIMIENTO: SOFTWARE DE BASE CLAVE: I4SO2 ETAPA FORMATIVA:

Más detalles

Sistemas Distribuidos

Sistemas Distribuidos Objetivos del curso Sistemas Distribuidos Presentar una visión global del estado del arte y los aspectos más novedosos del diseño y construcción de sistemas distribuidos. Desarrollar ejemplos prácticos

Más detalles

RMI [Remote Method Invocation]

RMI [Remote Method Invocation] RMI [Remote Method Invocation] Cuando utilizamos sockets, hemos de preocuparnos de cómo se transmiten físicamente los datos entre los extremos de una conexión (a nivel de bytes, ya que usamos los streams

Más detalles

Tema 1: INTRODUCCIÓN A LOS SISTEMAS DISTRIBUIDOS Sistemas Distribuidos

Tema 1: INTRODUCCIÓN A LOS SISTEMAS DISTRIBUIDOS Sistemas Distribuidos Tema 1: INTRODUCCIÓN A LOS SISTEMAS DISTRIBUIDOS E. U. Informática en Segovia Departamento de Informática Universidad de Valladolid Introducción a la Computación Distribuida Sistema distribuido: conjunto

Más detalles

Tema 1. Arquitectura Cliente/Servidor

Tema 1. Arquitectura Cliente/Servidor Tema 1. Arquitectura Cliente/Servidor SCS Sistemas Cliente/Servidor 4 o informática http://ccia.ei.uvigo.es/docencia/scs 27 de septiembre de 2009 FJRP, FMBR [sistemas cliente-servidor] CCIA 1.1 Sistemas

Más detalles

Sistemas Distribuidos Modelos. Rodrigo Santamaría

Sistemas Distribuidos Modelos. Rodrigo Santamaría + Sistemas Distribuidos Modelos Rodrigo Santamaría + Modelos Componentes Plataforma Middleware Modelos físicos Modelos arquitectónicos Modelos fundamentales 2 + Modelos de sistema distribuido 3 n Todos

Más detalles

Remote Method Invocation (RMI) de Java

Remote Method Invocation (RMI) de Java Remote Method Invocation (RMI) de Java Concurrencia y Distribución Programación Avanzada Posgrado en Ciencia e Ingeniería de la Computación, UNAM 1. Introducción El mecanismo RMI (Remote Method Invocation)

Más detalles

DISEÑO DE UNA ARQUITECTURA CLIENTE/SERVIDOR MEDIANTE OBJETOS DISTRIBUIDOS EN JAVA

DISEÑO DE UNA ARQUITECTURA CLIENTE/SERVIDOR MEDIANTE OBJETOS DISTRIBUIDOS EN JAVA DISEÑO DE UNA ARQUITECTURA CLIENTE/SERVIDOR MEDIANTE OBJETOS DISTRIBUIDOS EN JAVA José Luis Pastrana Brincones (pastrana@lcc.uma.es) Dpto. Lenguajes y Ciencias de la Computación. Universidad de Málaga

Más detalles

Nombre del documento: Programa de Estudio de asignatura de Especialidad. Referencia a la Norma ISO 9001:2008 7.3 Página 1 de 6

Nombre del documento: Programa de Estudio de asignatura de Especialidad. Referencia a la Norma ISO 9001:2008 7.3 Página 1 de 6 Referencia a la Norma ISO 9001:2008 7.3 Página 1 de 6 1.- DATOS DE LA ASIGNATURA Nombre de la asignatura : Sistemas Distribuidos I Carrera: Ing. en Sistemas Computacionales Clave de la asignatura: RSD-1203

Más detalles

Aplicaciones Distribuidas. Informática III

Aplicaciones Distribuidas. Informática III Aplicaciones Distribuidas Informática III Temario Elementos arquitecturales Arquitecturas tradicionales Arquitecturas Cliente/Servidor Arquitecturas distribuidas Elementos Arquitecturales Componentes de

Más detalles

Juan de Dios Murillo Morera e-mail: jmurillo@una.ac.cr Santiago Caamaño Polini e-mail: scaamano@costarricense.cr INTRODUCCIÓN

Juan de Dios Murillo Morera e-mail: jmurillo@una.ac.cr Santiago Caamaño Polini e-mail: scaamano@costarricense.cr INTRODUCCIÓN UNICIENCIA 24 pp. 83-89 2010 IMPLEMENTACIÓN DE UN SERVIDOR FTP UTILIZANDO EL MODELO CLIENTE/SERVIDOR MEDIANTE EL USO DE SOCKETS EN LENGUAJE C UNIX CON EL FIN DE MEJORAR LOS TIEMPOS DE RESPUESTA EN LA RED

Más detalles

Tema 2: EL MODELO CLIENTE/SERVIDOR

Tema 2: EL MODELO CLIENTE/SERVIDOR Tema 2: EL MODELO CLIENTE/SERVIDOR E. U. Informática en Segovia Departamento de Informática Universidad de Valladolid Definición de sistemas cliente/servidor (1) Clientes y servidores: entidades lógicas

Más detalles

TEMA 5. Otras arquitecturas distribuidas II. Objetos distribuidos y CORBA

TEMA 5. Otras arquitecturas distribuidas II. Objetos distribuidos y CORBA TEMA 5. Otras arquitecturas distribuidas II. Objetos distribuidos y CORBA II. Objetos distribuidos y CORBA 1. Objetos Distribuidos 2. CORBA 1. Características 2. Modelo de trabajo 3. ORB 4. Arquitectura

Más detalles

Arquitectura de Software

Arquitectura de Software Arquitectura de Software (Estilos Arquitectónicos) Universidad de los Andes Demián Gutierrez Mayo 2011 1 Diseño Arquitectónico Diseño Arquitectónico Arquitectura del Software Estilos Arquitectónicos Frameworks

Más detalles

Interacción entre Aplicaciones: objetos distribuidos e invocación remota

Interacción entre Aplicaciones: objetos distribuidos e invocación remota Interacción entre Aplicaciones: objetos distribuidos e invocación remota En la anterior práctica se ha visto cómo extender la funcionalidad de un servidor web incorporando servlets que atienden peticiones

Más detalles

Programa analítico 2013 644-Sistemas Operativos Distribuidos

Programa analítico 2013 644-Sistemas Operativos Distribuidos Programa analítico 2013 644-Sistemas Operativos Distribuidos Capitulo 1: INTRODUCCIÓN A LOS SISTEMAS DISTRIBUIDOS. Introducción Breve reseña histórica. Características de los sistemas distribuidos y sistemas

Más detalles

Interfaces y Manejadores de Dispositivos

Interfaces y Manejadores de Dispositivos Informática Electrónica Unidad 6 Interfaces y Manejadores de Dispositivos Modalidad y Materiales Dos clases expositivas a cargo del docente responsable (jlsimon@fceia.unr.edu.ar) Una práctica cargo de

Más detalles

Tema 1: y el lenguaje Java 1.Programación orientada a objetos 2.El lenguaje Java 3.Compilación, bytecode y JVMs 4.Entornos de desarrollo Java 5.Java vs otros lenguajes OO Programación orientada a objetos

Más detalles

Herramientas Concurrentes en JAVA

Herramientas Concurrentes en JAVA Herramientas Concurrentes en JAVA David Jesús Horat Flotats ÍNDICE 1. Introducción n a Java 2. Herramientas Concurrentes en Java 3. Lectores Escritores (2º) 4. Filósofos comensales 5. Chat usando RMI 6.

Más detalles

INTRODUCCIÓN A JAVA. Índice

INTRODUCCIÓN A JAVA. Índice INTRODUCCIÓN A JAVA Índice Qué es Java? La plataforma Java 2 La Máquina Virtual de Java Características principales Qué ventajas tengo como desarrollador? Bibliografía 2 1 Qué es Java? La tecnología Java

Más detalles

Comunicación entre procesos

Comunicación entre procesos Comunicación entre procesos Patrones de comunicación Comunicación cliente-servidor En la que los mensajes de petición y respuesta proporcionan la base para la invocación remota de métodos o de procedimientos.

Más detalles

Módulo 2 Comunicación

Módulo 2 Comunicación Sistemas Distribuidos Módulo 2 Comunicación Facultad de Ingeniería Departamento de Informática Universidad Nacional de la Patagonia San Juan Bosco Comunicación en Sistemas Distribuidos Modelos de Comunicaciones

Más detalles

Bases de Datos Distribuidas: Arquitectura Cliente/Servidor

Bases de Datos Distribuidas: Arquitectura Cliente/Servidor Bases de Datos Distribuidas: Arquitectura Cliente/Servidor Instituto Tecnológico Superior de los Ríos Ing. en Sistemas Computacionales 30 de enero de 2012 Bases de Datos Distribuidas:Arquitectura Cliente/Servidor

Más detalles

CAPITULO 3 ARQUITECTURA DE COMPONENTES GIS EN INTERNET

CAPITULO 3 ARQUITECTURA DE COMPONENTES GIS EN INTERNET CAPITULO 3 ARQUITECTURA DE COMPONENTES GIS EN INTERNET 3.1- ARQUITECTURA DE COMPONENTES GIS La presente tesis trata del diseño y desarrollo de una aplicación basado en el Web para servir datos geográficos

Más detalles

Paradigmas/Modelos de SD (3)

Paradigmas/Modelos de SD (3) Paradigmas/Modelos de SD (3) Sistemas Distribuidos I.T.I. Sistemas (2005-06) César Llamas Bello Universidad de Valladolid 1 Abstracciones, Paradigmas Abstraciones: ocultan detalles Paradigmas (Modelos):

Más detalles

Procesos Distribuidos. CI 2205 III - 2013 Lunes y miércoles, 5:00 pm a 9:00 pm Aula 205 Profesor: Diego Villalba

Procesos Distribuidos. CI 2205 III - 2013 Lunes y miércoles, 5:00 pm a 9:00 pm Aula 205 Profesor: Diego Villalba Procesos Distribuidos CI 2205 III - 2013 Lunes y miércoles, 5:00 pm a 9:00 pm Aula 205 Profesor: Diego Villalba Recursos distribuidos Commodity Utility Cloud Cloud computing Crecimiento de Internet Date

Más detalles

3.- Procesos. Concepto de Proceso. Despacho (calendarización) de Procesos. Operaciones en Procesos. Procesos en cooperación

3.- Procesos. Concepto de Proceso. Despacho (calendarización) de Procesos. Operaciones en Procesos. Procesos en cooperación 3.- Procesos Despacho (calendarización) de Procesos Operaciones en Procesos Procesos en cooperación Compunicación Interprocesos Communicación en sistemas Cliente-Servidor Sistema de Batch jobs Sistema

Más detalles

Glosario Acoplamiento. API. Archivos de recursos. ASCII. Balanceo de carga. Bases de datos federadas. BBDD. Clientes. Constructores.

Glosario Acoplamiento. API. Archivos de recursos. ASCII. Balanceo de carga. Bases de datos federadas. BBDD. Clientes. Constructores. GLOSARIO Glosario Acoplamiento. Posibilidad que tiene un servicio de funcionar de forma autónoma. Se dice que un servicio o aplicación es bajamente acoplado cuando puede funcionar de forma independiente

Más detalles

Contenidos. Sistemas operativos Tema 3: Estructura del sistema operativo. Componentes típicos de un SO. Gestión de procesos.

Contenidos. Sistemas operativos Tema 3: Estructura del sistema operativo. Componentes típicos de un SO. Gestión de procesos. Contenidos Sistemas operativos Tema 3: Estructura del sistema operativo Componentes típicos del SO Servicios del SO Llamadas al sistema Programas del sistema El núcleo o kernel Modelos de diseño del SO

Más detalles

servicios. El API es definido al nivel de código fuente y proporciona el nivel de

servicios. El API es definido al nivel de código fuente y proporciona el nivel de GLOSARIO API Application Program -ming- Interface Es la interfaz por la cual una aplicación accede al sistema operativo u a otros servicios. El API es definido al nivel de código fuente y proporciona el

Más detalles

2.1 Compuertas para Bases de Datos

2.1 Compuertas para Bases de Datos 1 Colección de Tesis Digitales Universidad de las Américas Puebla Romero Martínez, Modesto Uno de los aspectos mas importantes en un sistema multibase de datos es la forma en como llevar a cabo la comunicación

Más detalles

Notas. Tecnologías de Desarrollo de Sistemas Distribuidos basados en Objetos. Resumen 2. CORBA. 1. Introducción

Notas. Tecnologías de Desarrollo de Sistemas Distribuidos basados en Objetos. Resumen 2. CORBA. 1. Introducción Notas Tecnologías de Desarrollo de Sistemas Distribuidos basados en Objetos Resumen Debido al auge que se ha venido dando últimamente en el uso de las redes, se ha incrementado el crecimiento de los entornos

Más detalles

2. Dispositivos Móviles. 1. Introducción. 2.1 Tecnologías

2. Dispositivos Móviles. 1. Introducción. 2.1 Tecnologías LIMITACIONES DEL DESARROLLO DE APLICACIONES EN DISPOSITIVOS MÓVILES Alejandro Botero López Hugo Giraldo Arenas Alexandra Moyano Romero boteroa@javeriana.edu.co hugo.giraldo@javeriana.edu.co alexandra.moyano@javeriana.edu.co

Más detalles

5.1 Introducción a Servicios Web

5.1 Introducción a Servicios Web 5.1 Introducción a Servicios Web Introducción Continuando con el ejemplo de intercambio de información de películas... => Actualmente ya no es necesario implementar la solución sugerida a mano Se han estandarizado

Más detalles

CORBA. Hillary Caituiro Monge Departamento de Ingeniería Electrica y de Computadoras hillarycm@hotmail.com. Resumen

CORBA. Hillary Caituiro Monge Departamento de Ingeniería Electrica y de Computadoras hillarycm@hotmail.com. Resumen CORBA Hillary Caituiro Monge Departamento de Ingeniería Electrica y de Computadoras hillarycm@hotmail.com Resumen CORBA (Common Object Request Broker Architecture) es una especificación propuesta por un

Más detalles

Invocación de Métodos Remotos: prácticas de laboratorio

Invocación de Métodos Remotos: prácticas de laboratorio Invocación de Métodos Remotos: prácticas de laboratorio Coromoto León Hernández, Gara Miranda Valladares Dpto. de Estadística, Investigación Operativa y Computación Universidad de La Laguna c/astrofísico

Más detalles

Maestría en Ingeniería de Software. Sistemas Distribuidos en Web I. MCC. Carlos Albeto Ochoa Rivera

Maestría en Ingeniería de Software. Sistemas Distribuidos en Web I. MCC. Carlos Albeto Ochoa Rivera Maestría en Ingeniería de Software Sistemas Distribuidos en Web I MCC. Carlos Albeto Ochoa Rivera Descripción general Actualmente existe la tendencia de desarrollo de software que trabaje en un ambiente

Más detalles

Interoperabilidad Cómputo Cliente/Servidor

Interoperabilidad Cómputo Cliente/Servidor Middleware r. José Raúl érez Cázares (raul.perez@itesm.mx) ITESM epartamento de Ciencias Computacionales Interoperabilidad Cómputo / S Macintosh ECStation OS/2 MacOS UIX Acceso Remoto Base de datos? WA

Más detalles

Universidad Autónoma de Manizales Departamento de Ciencias Computacionales

Universidad Autónoma de Manizales Departamento de Ciencias Computacionales Universidad Autónoma de Manizales Departamento de Ciencias Computacionales ASIGNATURA CÓDIGO 1004 Sistemas Distribuidos NÚMERO DE CRÉDITOS Trabajo Presencial PRERREQUISITOS Trabajo dirigido Redes LAN PERIODO

Más detalles

Seminario de Java. Contenido

Seminario de Java. Contenido Seminario de Java Programación Orientada a Objetos Curso 2006/2007 Contenido 1. Introducción 2. Primeros pasos con Java. El entorno Eclipse 3. La sintaxis del lenguaje Java 4. Clases y objetos 5. Cadenas

Más detalles

Unidad 1: Conceptos generales de Sistemas Operativos.

Unidad 1: Conceptos generales de Sistemas Operativos. Unidad 1: Conceptos generales de Sistemas Operativos. Tema 3: Estructura del sistema operativo. 3.1 Componentes del sistema. 3.2 Servicios del sistema operativo. 3.3 Llamadas al sistema. 3.4 Programas

Más detalles

Servicio Web. Estándares empleados. Ventajas de los servicios web. Inconvenientes de los servicios Web

Servicio Web. Estándares empleados. Ventajas de los servicios web. Inconvenientes de los servicios Web Servicio Web Un servicio web (en inglés, Web services) es una tecnología que utiliza un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones

Más detalles

Características generales del lenguaje Java. María a Consuelo Franky

Características generales del lenguaje Java. María a Consuelo Franky Características generales del lenguaje Java María a Consuelo Franky 1 Temario ❶ Historia del desarrollo de Java ❷ Ventajas sobre otros lenguajes O.O. ❸ applets vs. aplicaciones ❹ Vistazo global a las características

Más detalles

Middleware. Introducción: capas de middleware

Middleware. Introducción: capas de middleware Middleware ] Introducción ] Representación externa de datos y empaquetado ] Protocolos de petición respuesta ] Comunicación en grupo ] Comunicación entre objetos distribuidos ] Llamada a un procedimiento

Más detalles

TELEPROCESO Y SISTEMAS DISTRIBUIDOS

TELEPROCESO Y SISTEMAS DISTRIBUIDOS Universidad Nacional del Nordeste TELEPROCESO Y SISTEMAS DISTRIBUIDOS La Interfaz Socket Lic. Vanesa S. Roffé Año 2009 Introducción - Origen de la INTERFAZ SOCKET La Interfaz Socket es una API para redes

Más detalles

Sumario... 5 Prólogo... 7. Unidad didáctica 1. Introducción a la computación distribuida... 11. Objetivos de la Unidad... 12

Sumario... 5 Prólogo... 7. Unidad didáctica 1. Introducción a la computación distribuida... 11. Objetivos de la Unidad... 12 ÍNDICE SISTEMÁTICO PÁGINA Sumario... 5 Prólogo... 7 Unidad didáctica 1. Introducción a la computación distribuida... 11 Objetivos de la Unidad... 12 1. Conceptos básicos... 13 2. Computación monolítica,

Más detalles

1.264 Tema 16. Middleware heredado

1.264 Tema 16. Middleware heredado 1.264 Tema 16 Middleware heredado Qué es el middleware heredado? Cliente (interf. de usuario, aplic. local) Cliente (interf. de usuario, aplic. local) Cómo conectamos clientes y servidores? Middleware

Más detalles

SISTEMAS DE TRANSMISION DE DATOS: TEORIA Y PRACTICA TELEMÁTICAS

SISTEMAS DE TRANSMISION DE DATOS: TEORIA Y PRACTICA TELEMÁTICAS SISTEMAS DE TRANSMISION DE DATOS: TEORIA Y PRACTICA TELEMÁTICAS Jose Luis del Val 1,Juan Ignacio Vázquez 2 1 E.S.I.D.E. (Estudios Superiores de Ingeniería de Deusto) e-mail: val@eside.deusto.es 2 E.S.I.D.E.

Más detalles

JAVA EE 5. Arquitectura, conceptos y ejemplos.

JAVA EE 5. Arquitectura, conceptos y ejemplos. JAVA EE 5. Arquitectura, conceptos y ejemplos. INTRODUCCIÓN. MODELO DE LA APLICACIÓN JEE5. El modelo de aplicación Java EE define una arquitectura para implementar servicios como lo hacen las aplicaciones

Más detalles

Informática Electrónica Interfaces para los programas de aplicación (APIs)

Informática Electrónica Interfaces para los programas de aplicación (APIs) Informática Electrónica Interfaces para los programas de aplicación (APIs) DSI- EIE FCEIA 2015 Que es un API? Application Program Interface (interface para programas aplicativos) es el mecanismo mediante

Más detalles

Nómadas (Col) ISSN: 0121-7550 nomadas@ucentral.edu.co Universidad Central Colombia

Nómadas (Col) ISSN: 0121-7550 nomadas@ucentral.edu.co Universidad Central Colombia Nómadas (Col) ISSN: 0121-7550 nomadas@ucentral.edu.co Universidad Central Colombia Martínez Barrera, Crisman TECNOLOGÍA CORBA (Common Object Request Broker Architecture) Nómadas (Col), núm. 17, 2002, pp.

Más detalles

RPC. Llamadas a Procedimientos Remotos (RPC) Paradigmas. Conceptos. Modelo Conceptual

RPC. Llamadas a Procedimientos Remotos (RPC) Paradigmas. Conceptos. Modelo Conceptual Llamadas a Procedimientos Remotos (RPC) Basado en el libro Internetworking with TCP/IP. Vol III. D. E Comer y D. Stevens Algunas Ilustraciones se tomaron de Practical Unix Programming. K. Robbins y Robbins

Más detalles

RPC Llamadas a Procedimientos Remotos

RPC Llamadas a Procedimientos Remotos RPC Llamadas a Procedimientos Remotos TABLA DE CONTENIDO 1.INTRODUCCIÓN... 3 2.GENERALIDADES... 3 3.CARACTERÍSTICAS DE TRANSPARENCIA... 6 3.1.PASE DE PARÁMETROS... 7 3.2.ENLACE... 7 3.3.PROTOCOLO DE TRANSPORTE...

Más detalles

Java RMI. las RPC de Java. Parte I. Luis Fernando Llana Díaz. Departamento de Sistemas Informáticos y ProgramaciónUniversidad Complutense de Madrid

Java RMI. las RPC de Java. Parte I. Luis Fernando Llana Díaz. Departamento de Sistemas Informáticos y ProgramaciónUniversidad Complutense de Madrid las RPC de Java. Parte I Departamento de Sistemas Informáticos y Programación Universidad Complutense de Madrid de marzo de 006 RMI y RPC RPC: Remote Procedure Call. RMI y RPC RPC: Remote Procedure Call.

Más detalles

Sistemas Operativos Distribuidos (Parte 1)

Sistemas Operativos Distribuidos (Parte 1) Sistemas Operativos Distribuidos (Parte 1) M. en C. Mario Farias-Elinos 1 The Tim Allen View of Computing Faster!!! Bigger Problems I want 7 days of weather not 2 I want 1024x1024x16-bit color Most modern

Más detalles

4 ARQUITECTURA DE COMUNICACIONES

4 ARQUITECTURA DE COMUNICACIONES 4 ARQUITECTURA DE COMUNICACIONES Las redes de computadoras son típicamente heterogéneas. Por ejemplo, la red interna de una universidad puede estar hecha de múltiples plataformas. Puede haber un servidor

Más detalles

en otra máquina exactamente de la misma manera que si se encontrará en la misma máquina

en otra máquina exactamente de la misma manera que si se encontrará en la misma máquina Máquina A Máquina B Máquina C Lo ideal sería tener un sistema distribuido orientado a objetos que permita: 1)Invocar un método de un objeto que se localiza en otra máquina exactamente de la misma manera

Más detalles

APLICACIONES DISTRIBUIDAS

APLICACIONES DISTRIBUIDAS ASIGNATURA DE GRADO: APLICACIONES DISTRIBUIDAS Curso 2015/2016 (Código:71023022) 1.PRESENTACIÓN DE LA ASIGNATURA En la actualidad la diversificación de los recursos de computación asociados a los diferentes

Más detalles

5. MODELOS DE CLIENTE Y SERVIDOR ORIENTADOS A AGENTES MÓVILES

5. MODELOS DE CLIENTE Y SERVIDOR ORIENTADOS A AGENTES MÓVILES SISTEMAS DISTRIBUIDOS DE REDES 5. MODELOS DE CLIENTE Y SERVIDOR ORIENTADOS A AGENTES MÓVILES Programación remota: Introducción y generalidades INTRODUCCIÓN Debido a la dificultad de la arquitectura actual

Más detalles

Tipos de comunicación La comunicación puede ser:

Tipos de comunicación La comunicación puede ser: Unidad 3. Procesos concurrentes 3.3 Semáforos (informática) Un semáforo es una variable especial (o tipo abstracto de datos) que constituye el método clásico para restringir o permitir el acceso a recursos

Más detalles

Introducción al Software basado en Componentes. Motivación. Un poco de historia.

Introducción al Software basado en Componentes. Motivación. Un poco de historia. Introducción al Software basado en Componentes Juan José Moreno Navarro Curso de Doctorado LSIIS (junto con Lars-Ake Fredlund) Motivación Antecedentes: Sistemas distribuidos y el problema de la reutilización.

Más detalles

Revista Digital Universitaria. 10 de agosto 2004 Volumen 5 Número 7 ISSN: 1067-6079

Revista Digital Universitaria. 10 de agosto 2004 Volumen 5 Número 7 ISSN: 1067-6079 Revista Digital Universitaria 10 de agosto 2004 Volumen 5 Número 7 ISSN: 1067-6079 JAVA o L.I. Anabell Comas Becaria de la Coordinación de Publicaciones Digitales anabell@alethia.dgsca.unam.mx o http://www.revista.unam.mx/vol.7/num12/art104/art104.htm

Más detalles

TECNOLOGÍAS DE DESARROLLO: JAVA

TECNOLOGÍAS DE DESARROLLO: JAVA Página 1 de 13 TECNOLOGÍAS DE DESARROLLO: JAVA Java es un lenguaje de programación de Sun Microsystems originalmente llamado "Oak", que fue concebido bajo la dirección de James Gosling y Bill Joy, quienes

Más detalles

JAVA RMI (REMOTE METHOD INVOCATION)

JAVA RMI (REMOTE METHOD INVOCATION) JAVA RMI (REMOTE METHOD INVOCATION) RMI RMI (Remote Method Invocation) Mecanismo RPC de Mecanismo mediante el cual los procesos cliente y servidor en una aplicación distribuida se comunican Una aplicación

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez Paradigmas de programación 2 Paradigmas de programación Paradigma de programación estructurada Enfatiza la separación datos de un programa

Más detalles

Qué es Java? Introducción a Java. Lenguajes Orientados a Objetos. Qué es Java? Historia de Java. Objetivos de Java

Qué es Java? Introducción a Java. Lenguajes Orientados a Objetos. Qué es Java? Historia de Java. Objetivos de Java Qué es? Introducción a es Un lenguaje de programación Un entorno de desarrollo Un entorno de ejecución de aplicaciones Un entorno de despliegue de aplicaciones Utilizado para desarrollar, tanto applets

Más detalles

TEMA 7: Paso de Mensajes con RMI

TEMA 7: Paso de Mensajes con RMI CONTENIDO: TEMA 7: Paso de Mensajes con RMI Conceptos de Programación Distribuida Remote Method Invocation (RMI) en Java El Nivel de Resguardos La Responsable de que Todo Funcione: la interfaz El precompilador

Más detalles

CONTENIDO. Serialización. Carga dinamica de stubs RMI AVANZADO. Callbacks. Carga dinámica de Stubs

CONTENIDO. Serialización. Carga dinamica de stubs RMI AVANZADO. Callbacks. Carga dinámica de Stubs CONTENIDO RMI AVANZADO Carga dinamica de stubs Callbacks Carga dinámica de Stubs Para tener acceso a un objeto remoto mediante RMI, el cliente debe recibir un stub serializado y deserializarlo. El stub

Más detalles

[CASI v.0109] Pág. 1

[CASI v.0109] Pág. 1 I. DATOS INFORMATIVOS Carrera Especialidad Curso Código Ciclo : Quinto Requisitos Duración Horas Semana : 08 horas Versión : v.0109 II. SUMILLA : COMPUTACIÓN E INFORMATICA : Ingeniería de Software : Lenguaje

Más detalles

Carrera: IFM - 0410 3-2-8. Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos.

Carrera: IFM - 0410 3-2-8. Participantes. Representantes de la academia de sistemas y computación de los Institutos Tecnológicos. 1.- DATOS DE LA ASIGNATURA Nombre de la asignatura: Carrera: Clave de la asignatura: Horas teoría-horas práctica-créditos Desarrollo de aplicaciones para ambientes distribuidos Licenciatura en Informática

Más detalles

1. Información General

1. Información General Programación de Sistemas Distribuidos E.T.S. Ingeniería Informática Dpto. Estadística, I.O. y Computación 1. Información General Curso: 2004/2005 Código de la asignatura: 151059113 Plan: 2003 Cuatrimestre:

Más detalles

Programación en Java. Temario. David Contreras Bárcena

Programación en Java. Temario. David Contreras Bárcena Programación en Java David Contreras Bárcena David Contreras Bárcena (ETSI) - Comillas 1 Temario 1. Introducción 1. Lenguaje java 2. Compilador SDK 1.4 3. Sintaxis 4. Tipos de datos 5. Estructuras de Control

Más detalles

Programación Java. M.C. Jorge Eduardo Ibarra Esquer Universidad Autónoma de Baja California jorgeeie@uabc.mx

Programación Java. M.C. Jorge Eduardo Ibarra Esquer Universidad Autónoma de Baja California jorgeeie@uabc.mx Programación Java M.C. Jorge Eduardo Ibarra Esquer Universidad Autónoma de Baja California jorgeeie@uabc.mx Febrero de 2006 Objetivos Conocer las características de la Tecnología Java Comprender las características

Más detalles

2.3.5 Capa de sesión. Protocolos

2.3.5 Capa de sesión. Protocolos 2.3.5 Capa de sesión Protocolos RPC El RPC (del inglés Remote Procedure Call, Llamada a Procedimiento Remoto) es un protocolo que permite a un programa de computadora ejecutar código en otra máquina remota

Más detalles

5. Modelos de Sistemas Distribuidos

5. Modelos de Sistemas Distribuidos Sistemas Distribuidos 5. Modelos de Sistemas Distribuidos Prof. María Feldgen Curso 2006 Índice Modelos Modelo Cliente-Servidor Framework CORBA Java RMI Microsoft DCOM Message-Oriented Middleware Dificultades

Más detalles

Service Oriented Architecture

Service Oriented Architecture Service Oriented Architecture Isaac Gutiérrez Gómez, Salvador Otón Tortosa Universidad de Alcalá, Departamento de Ciencias de la Computación, 28871 Alcalá de Henares, Spain igutierrez09@yahoo.es, salvador.oton@uah.es

Más detalles

Arquitectura de Redes y Servicios de Telecomunicación

Arquitectura de Redes y Servicios de Telecomunicación Práctica 3 Arquitectura de Redes y Servicios de Telecomunicación Programación cliente/servidor: Servicio de echo. Desarrollo de un cliente y un servidor del servicio de echo. Objetivos La programación

Más detalles

Introducción a P2P. Definición de P2P. Simon Pickin. Departamento de Ingeniería Telemática Universidad Carlos III de Madrid. Peer:

Introducción a P2P. Definición de P2P. Simon Pickin. Departamento de Ingeniería Telemática Universidad Carlos III de Madrid. Peer: Introducción a P2P Simon Pickin Departamento de Ingeniería Telemática Universidad Carlos III de Madrid Definición de P2P Peer: otro entidad del mismo nivel Peer-to-peer communication: comunicación de-par-a-par

Más detalles

INTRODUCCIÓN A LA TECNOLOGÍA.NET

INTRODUCCIÓN A LA TECNOLOGÍA.NET INTRODUCCIÓN A LA TECNOLOGÍA.NET CONTENIDO 1.1 Definición de.net 1.2 Evolución de.net 1.3 Compatibilidad de.net con Sistemas Operativos 1.4 Componentes de la plataforma.net MONICA CECILIA GALLEGOS VARELA

Más detalles