UNIVERSIDAD DE GUADALAJARA                        C...
                                   TALLER DE PROGRAMACIÓN CONCURRENTENOMBRE DE LA ASIGNATURA                              ...
 OBJETIVO GENERALEl alumno será capaz de programar sistemas concurrentes y distribuidos.OBJETIVOS ESPECÍFICOSEn cada módul...
                             CONTENIDO TEMÁTICOMódulo 1: Introducción a la programación de hilosObjetivo particular: El al...
 2.3 Aplicación del semáforo el problema de control de 1er Orden    2.3.1 Semáforo de tipo posix    2.3.2 Modelo de contro...
 4.1 Los replicantes    4.1.1 Introducción a los replicantes    4.1.2 Similitudes con el objeto ORB de Corba    4.1.3 Solu...
                        ESTRUCTURA CONCEPTUAL                          Programación de hilos    Programación concurrente  ...
 BIBLIOGRAFÍA BÁSICATanenbaum, A.S. (2008). Sistemas distribuidos : principios y paradigmas. México.Pearson Educación.Ceba...
     • Presentaciones PowerPointMODALIDADES DE EVALUACIÓNCRITERIOS    •   Examen departamental                            ...
Próxima SlideShare
Cargando en…5
×

Cc414 taller programacion_concurrente_distribuida

717 visualizaciones

Publicado el

0 comentarios
1 recomendación
Estadísticas
Notas
  • Sé el primero en comentar

Sin descargas
Visualizaciones
Visualizaciones totales
717
En SlideShare
0
De insertados
0
Número de insertados
5
Acciones
Compartido
0
Descargas
13
Comentarios
0
Recomendaciones
1
Insertados 0
No insertados

No hay notas en la diapositiva.

Cc414 taller programacion_concurrente_distribuida

  1. 1.     UNIVERSIDAD DE GUADALAJARA  CENTRO UNIVERSITARIO DE LOS ALTOS  DIVISIÓN DE ESTUDIOS EN FORMACIONES SOCIALES    LICENCIATURA:   INGENIERÍA EN COMPUTACIÓN    UNIDAD DE APRENDIZAJE POR OBJETIVOS TALLER DE PROGRAMACIÓN CONCURRENTE Y DISTRIBUIDA LIC. ABRAHAM ANDRADE LÓPEZ DR. ROGELIO MARTÍNEZ CÁRDENASPresidente de la Academia de Sistemas Digitales y de Jefe del Departamento de Estudios Organizacionales Información  
  2. 2.    TALLER DE PROGRAMACIÓN CONCURRENTENOMBRE DE LA ASIGNATURA Y DISTRIBUIDACODIGO DE LA MATERIA CC414DEPARTAMENTO ESTUDIOS ORGANIZACIONALESÁREA DE FORMACIÓN OPTATIVA ABIERTACENTRO UNIVERSITARIO CENTRO UNIVERSITARIO DE LOS ALTOSCARGA HORARIA TEORÍA 0CARGA HORARIA PRÁCTICA 60CARGA HORARIA TOTAL 60CRÉDITOS 4TIPO DE CURSO PRÁCTICONIVEL DE FORMACIÓN PROFESIONAL LICENCIATURA LICENCIATURA EN INGENIERÍA ENPARTICIPANTES COMPUTACIÓNELABORÓ SISTEMAS DIGITALES Y DE INFORMACIÓNPRERREQUISITOS NINGUNOFECHA DE ACTUALIZACIÓN SEPTIEMBRE DE 2011
  3. 3.  OBJETIVO GENERALEl alumno será capaz de programar sistemas concurrentes y distribuidos.OBJETIVOS ESPECÍFICOSEn cada módulo del contenido temático principal.
  4. 4.   CONTENIDO TEMÁTICOMódulo 1: Introducción a la programación de hilosObjetivo particular: El alumno implementará programas numéricos y de pruebade rendimiento para sistemas multicore con rutinas c/c++ o cualquier otro lenguajeque soporte programación hilos1.1 Conceptos básicos de hilos 1.1.1 Compilador mingw 1.1.2 Librerías posix de hilos 1.1.3 Creación y terminación de hilos posix 1.1.4 Programación de serie fibonnaci con hilos posix1.2 Programación de hilos en Win32 1.2.1 La API Win32 para hilos 1.2.2 Creación y terminación de hilos en Win32 1.2.3 Sección crítica en Win32 1.2.4 Comparación de rendimiento1.3 Programación de hilos en Java 1.3.1 El ambiente NetBeans 1.3.2 El profiler de NetBeans 1.3.3 La Clase thread 1.3.4 La interfaz runnable 1.3.5 Ejecución de instrucciones1.4 Comparación de rendimientos 1.4.1 Planteamiento del banco de pruebas 1.4.2 Cronometraje de hilosMódulo 2: Programación concurrenteObjetivo particular: El alumno podrá implementar soluciones locales a problemasde concurrencia con el paradigma orientado a objetos2.1 Programación de Mutex en Java 2.1.1 La clase Object 2.1.2 Método synchronized 2.1.3 Método wai y notify 2.1.4 Algoritmo paralelo para el promedio de elementos en vectores compartidos2.2 Filtrado de señales y la clase Barrier 2.2.1 El patrón de singleton 2.2.2 La clase barrier 2.2.3 Elementos básicos de filtros digitales 2.2.4 Programación de filtros con Java
  5. 5.  2.3 Aplicación del semáforo el problema de control de 1er Orden 2.3.1 Semáforo de tipo posix 2.3.2 Modelo de control de llenado de cisterna 2.3.3 El productor-consumidor en control 2.3.4 Programación del control de cisterna con semáforo tipos posix en Java2.4 Patrones factory y adaptador 2.4.1 Interfaz, clase abstracta y adaptador 2.4.2 Subclase de factory 2.4.3 Despachador de filas y columnas 2.4.4 Multiplicación matricial con hilosMódulo 3: Programación distribuidaObjetivo particular: El alumno podrá implementar en Java una solucióndistribuida3.1 Introducción a los sistemas distribuidos 3.1.1 El socket TCP y UDP 3.1.2 La tubería sobre el socket 3.1.3 Hilos cliente 3.1.4 Hilos servidor 3.1.5 Punto de re-entrada 3.1.6 Multiplicación matricial distribuida3.2 Creación de un servicio web con RMI 3.2.1 La interfaz RMI Remote 3.2.2 El servidor RMI 3.2.3 El cliente RMI 3.2.4 El problema 3 en raya distribuido 3.2.5 La cuenta bancaria distribuida 3.2.6 Paint cooperativo distribuido3.3 Creación de un servicio web con JSP/Serverlets 3.3.1 El contenedor de servicio web 3.3.2 Soluciones JSP 3.3.3 Soluciones con serverlets 3.3.4 El minero distribuido 3.3.5 El vecindarioMódulo 4: Programación distribuida con agentesObjetivo particular: El alumno implementará un sistema distribuido en midlewareque resuelve el problema de acceso a recursos distribuidos compartidos.
  6. 6.  4.1 Los replicantes 4.1.1 Introducción a los replicantes 4.1.2 Similitudes con el objeto ORB de Corba 4.1.3 Solución Corba 4.1.4 Solución con agente replicante4.2 Proyecto de red con auto organización 4.2.1 El acuerdo bizantino 4.2.2 Nodos core nodos espejo 4.2.3 Cámara web compartida 4.2.4 Reconocimiento de primitivos gráficos distribuidos
  7. 7.   ESTRUCTURA CONCEPTUAL Programación de hilos Programación concurrente Programación distribuida Programación distribuida
  8. 8.  BIBLIOGRAFÍA BÁSICATanenbaum, A.S. (2008). Sistemas distribuidos : principios y paradigmas. México.Pearson Educación.Ceballos, F. J. (2006). Java 2, Curso de programación. México: Alfaomega, Ra-Ma.Deitel, H. M., & Deitel, P. J. (2004). Cómo programar en Java. México: PearsonEducación.BIBLIOGRAFÍA COMPLEMENTARIAGarcía Tomás, J., Ferrando, S., & Piattini, M. (2001). Redes para procesosdistribuidos. México: Alfaomega Ra-Ma.Orfali, R., & Harkey, D. (1998). Client/Server Programming with Java and CORBA.USA: Wiley.MODALIDADES DEL PROCESO ENSEÑANZA APRENDIZAJEPara la realización de este curso, se recomienda que el profesor asesore ysupervise personalmente el proceso de formación de cada alumno, tomando encuenta el orden y la profundidad con la que deben tratarse los temas delprograma de estudio.CONOCIMIENTOS, APTITUDES Y VALORES QUE EL ALUMNO DEBEADQUIRIR CON BASE AL DESARROLLO DE LA UNIDADConocimiento de la estructura de la computadora y compresión de sufuncionalidad. Así como los elementos que entorno a un equipo de cómputopueden manejarse.CAMPO DE APLICACIÓN PROFESIONALLos conceptos básicos ayudan a tener un panorama más amplio y a sabercuándo o en qué contexto podemos emplear cada uno de ellos dandooportunidad de desempeñarse en diversas áreas.MATERIAL DE APOYO ACADÉMICO • Notas sobre el curso • Videos sobre los principales conceptos • Programas educativos para computadoras • Uso de plataforma Moodle
  9. 9.   • Presentaciones PowerPointMODALIDADES DE EVALUACIÓNCRITERIOS • Examen departamental 20 % • Exámenes parciales 40 % • Producto de investigación, tareas y participación en moodle 20 % • Proyecto de final 20 %PERFIL DOCENTEEl docente de esta materia deberá ser un profesionista con formación en lasáreas de la computación, comunicaciones o informática; capaz de motivar a lainvestigación y creación de conocimiento, con habilidades para transmitir susconocimientos y enseñar de forma interactiva propiciando en los alumnos el auto-aprendizaje.

×