Créditos
6
Tipos
Obligatoria
Requisitos
Esta asignatura no tiene requisitos
, pero tiene capacidades previas
Departamento
AC
Mail
jverdu@ac.upc.edu
Profesorado
Responsable
- Javier Verdu Mula (jverdu@ac.upc.edu)
Otros
- Xavier Martorell Bofill (xavim@ac.upc.edu)
Horas semanales
Teoría
2
Problemas
0
Laboratorio
2
Aprendizaje dirigido
0
Aprendizaje autónomo
6
Competencias
Transversales
Básicas
Específicas
Genéricas
Objetivos
-
Conocer las características y limitaciones, en especial respecto al error de precisión, de los diferentes formatos de representación de datos en un ordenador
Competencias relacionadas: CB1, CE03,
Subcompetences- Realización de operaciones básicas
- Desde la representación de datos básicos hasta formatos avanzados
-
Conocer la arquitectura de un procesador basado en el modelo Von Neumann, así como también sus componentes principales
Competencias relacionadas: CG2, CG3, CT3, CB4, CE05, CE11,
Subcompetences- Entender el coste y consumo de energía en la ejecución de una instrucción
- Jerarquí de memoria y sus propiedades, en especial la localidad
- Paralelismo con SIMD
-
Conocer el espacio de lógico de memoria, desde cómo se utiliza hasta cómo se gestionan algunos contenidos
Competencias relacionadas: CB4, CE19,
Subcompetences- Utilización y gestión de libreries en la memoria
-
Conocer los aspectos básicos de un Sistema Operativo y entender el impacto que tiene sobre el rendimiento y consumo de energía de un sistema
Competencias relacionadas: CG4, CG9, CB5, CE06, CE11,
Subcompetences- Sistema de ficheros y E/S
- Gestión de memória y procesos
-
Conocer el proceso para crear y depurar un programa, així com les seves necessitats
Competencias relacionadas: CG9, CB5, CE03, -
Capacidades para discutir y contrastar la resolución de problemas y ejercicios prácticos
Competencias relacionadas: CE28, CG5, CG8, CT2, CT6, CB4, CE06, CE07, -
Entender la relación de la asignatura con el campo de la IA
Competencias relacionadas: CG9, CB1,
Contenidos
-
Introducción de la asignatura
Se hace una breve introducción a la asignatura, sobre qué temas tratará y su relación con el campo de la IA -
Representación de Datos
Este tema presentará tipos de representación de datos de diferentes niveles de complejidad, sus limitaciones y la implementación de operaciones básicas -
Arquitectura del Procesador
Introducción de la arquitectura de procesador, basada en el modelo de Von Neumann, y sus componentes -
Jerarquía de Memoria
Presentación de las propiedades de la jerarquía de memoria, especialmente los conceptos de localidad y reutilización, y el posible impacto que puede tener en el rendimiento y consumo de energía -
Introducción del paralelismo basado en SIMD
Introducción del concepto y aspectos básicos del paralelismo mediante SIMD -
Implicaciones de ejecutar una instrucción
Descripción de las implicaciones a nivel de coste, posibles cuellos de botella y consumo de energía, desde el punto de vista de la arquitectura, ante la ejecución de una instrucción -
Espacio Lógico de Memoria
Presentación de los puntos clave para entender el propósito, construcción, utilitzación y gestión del espacio lógico de memoria -
Introducción de las librerías
Presentación del concepto y propósito tras las librerías así como su gestión desde el punto de vista del espacio de memoria lógico -
Generación de Ejecutables
Introducción de los procesos de compilación e interpretación, incluyendo el proceso de depuración. Comparación de necesidades y limitaciones de los ejecutables generados -
Impacto de los Sistemas Operativos en el rendimiento y consumo de energía
Qué son los Sistemas Operativos y sus aspectos clave que impactan en el rendimiento y consumo de energía del sistema -
Componentes básicos de los Sistemas Operativos
Presentación de los subsistemas de E/S y Sistema de Ficheros del Sistema Operativo, a nivel de utilización desde el punto de vista de programador de aplicaciones. Además, también se presentan aspectos de la gestión de memoria
Actividades
Actividad Acto evaluativo
Introducción de la Asignatura
En esta actividad se explicarán los objetivos, contenidos y funcionamiento de la asignatura. Además, en el laboratorio, se introducirán aspectos necesarios para poder realizar las sesiones prácticas.Objetivos: 7
Contenidos:
Teoría
0.5h
Problemas
0h
Laboratorio
6h
Aprendizaje dirigido
0h
Aprendizaje autónomo
3h
Representación de Datos y Operaciones Básicas
Este tema presenta la representación de los datos, desde los conceptos más básicos, pasando por tipos de números y acabando con la representación avanzada de datos. Además, también explicaremos otros aspectos como la precisión de los datos y operaciones básicas.Objetivos: 1
Contenidos:
Teoría
5.5h
Problemas
0h
Laboratorio
4h
Aprendizaje dirigido
0h
Aprendizaje autónomo
10h
Arquitectura del Procesador
Introduciremos la arquitectura de sismtemas uniprocesador, partiendo de la arquitectura de Von Neumann y los diferentes componentes más importantes. Además, también estudiaremos qué implicaciones tiene ejecutar una instrucción, entre otras razones para entender posibles cuello de botella, y el coste que representa, en especial respecto a la energía que consume, y su relación con la arquitectura.Objetivos: 2
Contenidos:
Teoría
8h
Problemas
0h
Laboratorio
8h
Aprendizaje dirigido
0h
Aprendizaje autónomo
16h
Ejecución de Programas y su entorno
Este tema tiene dos partes. La primera trata sobre como se genera un programa (tanto si se trata de un programa compilado como si se trata de uno interpretado. La segunda parte presenta el Sistema Operativo y una serie de conceptos y característiques que nos permitirán entender su importancia en la ejecución de programas y el impacto en el rendimiento y en la energía.Objetivos: 4 5
Contenidos:
Teoría
6h
Problemas
0h
Laboratorio
4h
Aprendizaje dirigido
0h
Aprendizaje autónomo
14h
Espacio lógico de memoria
Presentaremos el espacio de direcciones lógicas de memoria y sus detalles más importantes, así como entender qué son las librerías y sus aspectos clave.Objetivos: 3
Contenidos:
Teoría
6h
Problemas
0h
Laboratorio
6h
Aprendizaje dirigido
0h
Aprendizaje autónomo
12h
Teoría
0h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
0h
Metodología docente
La asignatura se basa en clases presenciales de teoría y laboratorio. Las clases de teoría siguen el programa definido en esta guía docente, habitualmente son a base de material proporcionado en transparencias.En estas clases de teoría, se promociona el diálogo entre el profesor y los estudiantes proporcionando actividades a realizar conjuntamente basadas en aspectos particulares del tema que se está tratando.
Las clases de laboratorio siguen los mismos temas y pueden ser de dos tipos: 1) prácticas en ordenador guiadas por un enunciado; 2) ejercicios/problemas a resolver en la pizarra o en una exposición ante los otros estudiantes.
Método de evaluación
Hay dos pruebas evaluativas de la parte de teoría:- PT: El examen parcial de teoría (20%)
- FT: El examen final de teoría (35%)
- FL: El examen final de laboratorio (35%)
- SL: La nota de seguimiento del laboratorio (10%) se basa en cuestionarios individuales realizados en ciertas sesiones de laboratorio.
Evaluación Ordinaria: La Nota Final (NF) de la asignatura se obtiene a partir de
NF = 35%FL + 10%SL + MAX(55%FT; (20%PT+35%FT))
Reevaluación: se hará en Junio. Sólo aquellos/as que hayan suspendido la asignatura (es decir, hayan hecho el examen parcial y/o final de teoria) podrán presentarse al examen de reevaluación (examen sólo de teoría). En caso de aprobar el examen, la nota máxima del examen de recuperación y, por tanto la nota máxima final de la asignatura será un 7.
Bibliografía
Básico
-
Computer systems : a programmer's perspective
- Bryant, Randal E; O'Hallaron, David,
Pearson,
2016.
ISBN: 9781292101767
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991004062589706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
Web links
- Documentació de l'assignatura https://docencia.ac.upc.edu/FIB/GIA/FC/