PROGRAMACIÓN CONCURRENTE
Año académico
2003-04
2004-05
2005-06
2006-07
2007-08
2008-09
2009-10
2010-11
2011-12
2012-13
2013-14
2014-15
2015-16
2016-17
2017-18
2018-19
2019-20
2020-21
2021-22
2022-23
Código
9242
Descripción
Crdts. Teor.
3
PROCESOS.SINCRONIZACION,COMPETENCIA Y COOPERACION.EXCLUSION MUTUA.MEMORIA COMPARTIDA.MEMORIA DISTRIBUIDA.CSP
Crdts. Pract.
3
A efectos de intercambios en programas de movilidad, la carga de esta asignatura equivale a 7,5 ECTS.
Departamentos y Áreas
Departamentos
Área
Crdts. Teor.
Crdts. Pract.
Dpto. Respon.
Respon. Acta
LENGUAJES Y SISTEMAS INFORMÁTICOS
LENGUAJES Y SISTEMAS INFORMATICOS
3
3
Estudios en los que se imparte
Ingeniería en Informática - plan 2001
Pre-requisitos
Sin incompatibles
Incompatibilidades de matrícula por contenidos equivalentes
Sin Datos
Matriculados (2016-17)
Grupo
(*)
Número
1
1
TOTAL
1
(*) 1: GRUPO 1 - CAS
Ofertada como libre elección (2016-17)
Sin departamento
Consulta Gráfica de Horario
Pincha aquí
Horario (2016-17)
Sin horario
Grupos de matricula (2016-17)
Grupo
(*)
Cuatrimestre
Turno
Idioma
Distribución (letra nif)
1
2do.
M
CAS
desde - hasta -
(*) 1: GRUPO 1 - CAS
Objetivos de las asignatura / competencias (2016-17)
Presentación
El principal objetivo es introducir al alumno en el paradigma de la programación concurrente y en el uso de las herramientas y técnicas utilizadas en general por los lenguajes concurrentes.
La asignatura está centrada en la descripción de los principios y metodologías de la programación concurrente, en los problemas derivados de la ejecución paralela de procesos y en las técnicas y herramientas existentes para resolver estos problemas.
Las prácticas se realizarán tanto con Pascal Concurrente como con Java. Pascal Concurrente es un lenguaje de programación muy adecuado para la docencia de esta asignatura pero de poca utilidad práctica. Por ello usaremos también Java en algunos de los ejercicios prácticos, que además de ser adecuado para la docencia os será más útil en la práctica profesional.
Por lo demás, será una materia amena, donde espero que aprendáis conceptos y técnicas útiles.
La evaluación se hará según dos modalidades a elegir:
Asistencia regular controlada.
Asistencia libre.
Este año habrá un turno de prácticas y uno de teória.
Contenidos teóricos y prácticos (2016-17)
Temario
Contenido general
Los principales temas a tratar son los siguientes (ver
temario detallado
más abajo):
¿Qué es la programación Concurrente?
Introducción: conceptos de concurrencia
Multiprogramación
Multitarea
Ejecución concurrente
Problemas de programación concurrente
Objetos compartidos y exclusión Mutua
Regiones críticas
Deadlock (interbloqueo)
Procesos e hilos
Programación concurrente orientada a objetos (hilos en Java)
Semáforos
Monitores y sincronización
Paso de mensajes
Temario detallado
MÓDULO 1: Conceptos fundamentales
PARTE 1: Conceptos fundamentales
Introducción
Hitos en la programación concurrente
Concepto de programación concurrente
Beneficios de la programación concurrente
Concurrencia y arquitecturas hardware
Especificación de ejecución concurrente
Características de los sistemas concurrentes
Problemas inherentes a la programación concurrente
Corrección de programas concurrentes
Preguntas y ejercicios
PARTE 2: Procesos y Pascal-FC
Procesos
Procesos en Pascal-FC
PARTE 3: Hilos y Java
Hilos
Hilos en Java
PARTE 4: Primeras aproximaciones a la solución de los problemas de la programación concurrente
Introducción
Tipos de sincronización y su solución
Espera-Ocupada para la exclusión mutua (soluciones software)
Espera-Ocupada para la exclusión mutua (soluciones hardware)
Resumen
Preguntas y ejercicios
MÓDULO II: Primitivas de sincronización basadas en memoria compartida
PARTE 5. Semáforos
Introducción
Definición de semáforo
Resolución de problemas usando semáforos
Inconvenientes del mecanismo de los semáforos
PARTE 6. Regiones críticas condicionales
Introducción
Definición de región crítica condicional
Resolución de problemas usando regiones críticas condicionales
Inconvenientes del mecanismo de regiones críticas condicionales
PARTE 7. Monitores
Introducción
Definición de monitor
Condición de sincronización en monitores
Resolución de problemas usando monitores
MÓDULO III: Paso de mensajes
A modo de introducción al tema, se recomeinda ver la
sección 8 de los apuntes
colgados en la sección de materiales.
PARTE 8. Mecanismo de paso de mensaje
Introducción
Identificación en el proceso de comunicación
Sincronización
Canal de comunicación y mensajes
Condiciones de error en los sistemas de paso de mensajes
Espera selectiva
PARTE 9. Paso de mensaje asíncrono
PARTE 10. Paso de mensaje síncrono con canales
PARTE 11. Invocación remota y llamada a procedimiento remoto (RPC)
Más información
Profesor/a responsable
Calera Rubio , Jorge
Metodología docente (2016-17)
No especificado
Tipo de actividades: teóricas y prácticas
No especificado
Profesores (2016-17)
Grupo
Profesor/a
TEORIA DE 9242
1
Calera Rubio, Jorge
PRÁCTICAS CON ORDENADOR DE 9242
1
Calera Rubio, Jorge
Enlaces relacionados
http://ants.inf.um.es/staff/jlaguna/jmp/index.php
http://es.wikipedia.org/wiki/Paso_de_mensajes
http://es.wikipedia.org/wiki/Remote_Procedure_Call
http://www.boost.org/doc/libs/?view=category_Concurrent
http://www.chuidiang.com/
Bibliografía
Ordenar por título del libro
Ordenar por profesor que lo recomienda
Principios y algoritmos de concurrencia
Autor(es):
Galli Granada, Ricardo
Edición:
Palma de Mallorca : Barnes and Noble, 2015.
ISBN:
9788460687610
Recomendado por:
CALERA RUBIO, JORGE
(*1)
[
Acceso al catálogo de la biblioteca universitaria
]
Programación Concurrente
Autor(es):
Palma, José Tomás
Edición:
Madrid : Paraninfo - Thomson Learning, 2003.
ISBN:
84-9732-184-7
Recomendado por:
CALERA RUBIO, JORGE
(*1)
[
Acceso al catálogo de la biblioteca universitaria
]
UNIX : programación avanzada
Autor(es):
Márquez García, Francisco Manuel
Edición:
Madrid : Ra-Ma, 2004.
ISBN:
978-84-7897-603-5
Recomendado por:
CALERA RUBIO, JORGE
(*1)
[
Acceso al catálogo de la biblioteca universitaria
] [
Acceso a las ediciones anteriores
]
(*1) Este profesor ha recomendado el recurso bibliográfico a todos los alumnos de la asignatura.
Fechas de exámenes oficiales (2016-17)
Convocatoria
Grupo
(*)
fecha
Hora inicio
Hora fin
Aula(s) asignada(s)
Observ:
Periodo ordinario para asignaturas de primer semestre
-1
16/01/2017
Contactar con el profesor
Pruebas extraordinarias para asignaturas de grado y máster
-1
07/07/2017
Contactad con el profesor
(*) 1: GRUPO 1 - CAS
Instrumentos y criterios de evaluación (2016-17)
No especificado