Sistemas Concurrentes - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Sistemas Concurrentes

Description:

Title: Objetivos Author: Jos Miguel Santos Espino Last modified by * Created Date: 2/23/2000 10:53:37 PM Document presentation format: Presentaci n en pantalla – PowerPoint PPT presentation

Number of Views:39
Avg rating:3.0/5.0
Slides: 21
Provided by: Jos1176
Category:

less

Transcript and Presenter's Notes

Title: Sistemas Concurrentes


1
Sistemas Concurrentes
  • I.T. Informática de Sistemas
  • Curso 2002-2003

2
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
Vale, y qué es todo eso?
  • Concurrencia?
  • Sistema concurrente?
  • Arquitecturas paralelas?
  • Programación concurrente?
  • Sistema distribuido?

4
Concurrencia
  • Existencia simultánea de varios flujos de
    ejecución

5
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
Objetivos del profesor
  • Enseñar todos estos conceptos básicos
  • Aprender Java de sus alumnos ?

7
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
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
Temario detallado (1)
  1. Fundamentos de la concurrencia
  2. Características de los sistemas concurrentes
  3. Especificación de la concurrencia. Lenguajes
  4. Modelos de comunicación
  5. Instrucciones atómicas. No determinismo
  6. Propiedades de seguridad y progreso
  7. Soporte de concurrencia en el s.o. o la
    arquitectura
  8. Concurrencia en Ada/Java

10
Temario detallado (2)
  • Arquitecturas paralelas
  • Multiprocesadores de memoria compartida
  • Multiprocesadores de memoria distribuida

11
Temario detallado (3)
  • Sincronización y comunicación con memoria
    compartida
  • El problema de la sección crítica
  • Semáforos
  • Regiones críticas y monitores
  • Sincronización y comunicación con paso de
    mensajes
  • Comunicación asíncrona. Canales.
  • Comunicación síncrona. Espera selectiva. Guardas.
  • Invocación remota. El modelo de Ada.

12
Temario detallado (y 4)
  • Sistemas distribuidos
  • Características y problemas de estos sistemas
  • Algoritmos distribuidos clásicos
  • Transacciones distribuidas
  • Tiempo y causalidad
  • Tolerancia a fallos
  • Componentes distribuidos sistemas de archivos,
    gestión de procesos, comunicaciones, etc.

13
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
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
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
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
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
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
No olvidar
  • Entregar una ficha al profesor

20
Sistemas Concurrentes
  • Gracias por su atención
  • Oscar Déniz Suárez
  • odeniz_at_dis.ulpgc.es
Write a Comment
User Comments (0)
About PowerShow.com