Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porFrancisco Dena Modificado hace 9 años
1
Sistemas Concurrentes I.T. Informática de Sistemas Curso 2002-2003
2
SistemasConcurrentes Objetivos de formación Adquirir un conocimiento básico sobre: naturaleza de los sistemas concurrentes arquitecturas paralelas programación concurrente sistemas distribuidos Adquirir experiencia en programación concurrente usando Ada o Java
3
SistemasConcurrentes Vale, ¿y qué es todo eso? ¿Concurrencia? ¿Sistema concurrente? ¿Arquitecturas paralelas? ¿Programación concurrente? ¿Sistema distribuido?
4
SistemasConcurrentes Concurrencia Existencia simultánea de varios flujos de ejecución
5
SistemasConcurrentes ¿Por qué Ada y Java? Son lenguajes que incorporan facilidades para la programación concurrente: tareas o hilos concurrentes mecanismos de sincronización entre procesos objetos protegidos (Ada) o sincronizados (Java) tiempo real y prioridades (Ada) mecanismos de comunicación entre objetos remotos (Anexo E, RMI)
6
SistemasConcurrentes Objetivos del profesor Enseñar todos estos conceptos básicos Aprender Java de sus alumnos
7
SistemasConcurrentes ¿Qué conocimientos previos necesito? Conocimientos generales sobre: estructura de computadores sistemas operativos lenguajes de programación Experiencia en programación con lenguajes orientados a objetos
8
SistemasConcurrentes Contenidos de la asignatura 1.Fundamentos de la concurrencia (3S) 2.Arquitecturas paralelas (1S) 3.Sincronización y comunicación con memoria compartida (2S) 4.Sincronización y comunicación mediante paso de mensajes (2S) 5.Sistemas distribuidos (4S) 6.Conceptos avanzados y proyectos (3S)
9
SistemasConcurrentes Temario detallado (1) 1.Fundamentos de la concurrencia 1.Características de los sistemas concurrentes 2.Especificación de la concurrencia. Lenguajes 3.Modelos de comunicación 4.Instrucciones atómicas. No determinismo 5.Propiedades de seguridad y progreso 6.Soporte de concurrencia en el s.o. o la arquitectura 7.Concurrencia en Ada/Java
10
SistemasConcurrentes Temario detallado (2) 2.Arquitecturas paralelas 1.Multiprocesadores de memoria compartida 2.Multiprocesadores de memoria distribuida
11
SistemasConcurrentes Temario detallado (3) 2.Sincronización y comunicación con memoria compartida 1.El problema de la sección crítica 2.Semáforos 3.Regiones críticas y monitores 4.Sincronización y comunicación con paso de mensajes 1.Comunicación asíncrona. Canales. 2.Comunicación síncrona. Espera selectiva. Guardas. 3.Invocación remota. El modelo de Ada.
12
SistemasConcurrentes Temario detallado (y 4) 5.Sistemas distribuidos 1.Características y problemas de estos sistemas 2.Algoritmos distribuidos clásicos 3.Transacciones distribuidas 4.Tiempo y causalidad 5.Tolerancia a fallos 6.Componentes distribuidos: sistemas de archivos, gestión de procesos, comunicaciones, etc.
13
SistemasConcurrentes Método de docencia 4 horas semanales en aula Clases teóricas Exposiciones de los estudiantes 2 horas semanales de laboratorio Ejercicios en Ada/Java Realización de los trabajos prácticos
14
SistemasConcurrentes Actividades prácticas Equipos de dos o tres personas Prácticas de programación concurrente Ada 95 y/o Java Laboratorio Micros 2 Linux o Win32 Proyectos de investigación/programación sobre tópicos avanzados se expondrán en clase
15
SistemasConcurrentes Bibliografía básica (teoría) Principles of Concurrent and Distributed Programming Moshe Ben-Ari. Prentice-Hall, 1990. Estructura y Diseño de Computadores David A. Patterson, John L. Hennesy. Reverté, 2000. Sistemas Operativos Distribuidos Andrew S. Tanenbaum. Prentice Hall, 1995.
16
SistemasConcurrentes Bibliografía básica (prácticas) Concurrency in Ada Alan Burns, Andy Wellings. Cambridge Univ., 1998. Java 1.2 al descubierto Jamie Jaworski. Prentice Hall, 1999. Descubre Java 1.2 Mike Morgan. Prentice Hall, 1999. Información de Java en la red java.sun.com
17
SistemasConcurrentes Evaluación La calificación final se obtiene a partir de: Trabajos de curso (40%) aplicación concurrente en Ada95 o Java trabajo de investigación/programación Examen global (50%) Participación activa (10%) Para aprobar hay que obtener más de un 40% de la nota máxima en cada actividad. Las calificaciones se guardan en todas las convocatorias del curso.
18
SistemasConcurrentes Material didáctico Libros en las bibliotecas de la ULPGC Recursos en la Red + página web Compilador de Ada GNAT 3.xx Entorno de desarrollo JDK 1.2 Transparencias y apuntes
19
SistemasConcurrentes No olvidar Entregar una ficha al profesor
20
Sistemas Concurrentes Gracias por su atención Oscar Déniz Suárez odeniz@dis.ulpgc.es
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.