Información general


  • Tipo de asignatura: Obligatoria
  • Coordinador: Adso Fernández Baena
  • Trimestre: 2
  • Créditos: 6
  • Profesorado:

Idiomas de impartición


  • English

La documentación de la asignatura será mayoritáriamente en Inglés. Pueden haber documentos en castellano y catalán, pero el idioma principal será el inglés.

Por lo tanto, el estudiante ha de poder leer correctamente en inglés

El idioma vehicular de la asignatura será el Inglés, por lo tanto, el estudiante ha de poder expresarse en esta lengua, para escribir, leer, hablar y entender lo que se le comunica

Descripción


A nivel general esta asignatura abarca los siguientes descriptores para la materia a la que pertenece (Arquitectura, Sistemas Operativos y Redes de Ordenadores):

1.- Introducción al soporte de la arquitectura al sistema operativo (memoria virtual, TLB)

2.- Programación del firmware de un microcomputador comercial para el desarrollo de un prototipo

3.- Concurrencia,, entrada/salida y buses (encuesta, interrupciones, DMA, tipos E/S)

4.- Estructuras internas en la jerarquía de memoria (discos, memoria principal, cachés, mecanismos de detección y correció de errores)

5.- Introducción a los procesadores segmentados lineales y multiprocesadores

6.- TCP/IP y sockets (protocolos, ARQ, control de flujo, UDP, TCP, API sockets)

7.- Introducción a los sistemas operativos (tipos de sistemas operativos y características, procesos, flujos, espacios de direcciones, modos de ejecución, comandos básicos)

8.- Interficies (librerías de usuario, servicios del sistema)

9.- Gestión de procesos (servicios del sistema, planificación, flujos, cambios de contexto, estructuras básicas de soporte)

10.- Gestión del espacio de direcciones (servicios del sistema, gestión de la memoria, memoria virtual, swap, thrashing, estructuras báscias de soporte)

11.- Gestión de la entrada/salida (servicios del sistema, buffering, spooling, independencia de los dispositivos, estructuras básicas de soporte)

12.- Sistema de ficheros (servicios del sistema, asignación de espacio en disco, tipos de sistemas de ficheros, estructuras básicas de soporte)

13.- Compartición de recursos y sincronización (memoria, ficheros, exclusión mutua, regiones críticas, abrazo mortal)

Para el seguimiento de la asignatura el estudiante trabaja con su ordenador personal (portátil) que deberá traer a todas y cada una de las clases

Esta asignatura dispone de recursos metodológicos y digitales para hacer posible su continuidad en modalidad no presencial en el caso de ser necesario por motivos relacionados con la COVID-19. De esta forma se asegurará la consecución de los mismos conocimientos y competencias que se especifican en este plan docente.

Resultados de aprendizaje


A nivel general esta asignatura contribuye a los siguientes resultados de aprendizaje especificados para la materia a la que pertenece (Arquitectura, SIstemas Operativos y Redes de Ordenadores):

1.- Demostrar conocimiento y comprensión del funcionamiento interno de un computador y del funcionamiento de las comunicaciones entre ordenadores

2.- Demostrar conocimiento y comprensión del funcionamiento interno de un computador y del funcionamiento de las comunicaciones entre ordenadores

3.- Evaluar, y seleccionar plataformas de producción hardware y software para la ejecución de aplicaciones y de servicios informáticos

4.- Evaluar sistemas hardware y software en función de un determinado criterio de calidad

5.- Determinar los factores que tienen incidencia negativa en la seguridad y fiabilidad de un sistema

6.- Diseñar soluciones que integren tecnologías hardware, software y comunicaciones (y capacidad para desarrollar soluciones específicas de software de sistemas) para sistemas distribuidos y dispositivos de computación ubicua

7.- Desarrollar proyectos en equipo

8.- Comprender y utilizar de forma eficaz manuales, especificaciones de productos y otras informaciones de carácter técnica, escrita en inglés

A un nivel más concreto, al finalizar la asignatura, el estudiante ha de ser capaz de:

  1. (RA1) Conocer las principales arquitecturas y servicios de los sistemas operativos
  2. (RA2) Utilizar las llamadas al sistema de diferentes sistemas operativos
  3. (RA3) Entender la necesidad de disponer de mecanismos de protección en entornos multiproceso y multiprocesador
  4. (RA4) Entender y definir los conceptos de hilos, procesos, y relacionarlos
  5. (RA5) Entender diferentes mecanismos de planificación de CPU
  6. (RA6) Aplicar mecanismos de comunicación y de sincronización entre procesos
  7. (RA7) Entender los diferentes componentes implicados en las operaciones de entrada y salida
  8. (RA8) Entender los diferentes mecanismos de gestión de ficheros
  9. (RA9) Conocer diferentes alternativas para programar scripts para resolver problemas recurrentes en el sistema
  10. (RA10) Entender los mecanismos de comunicación entre procesos en Internet con sockets
  11. (RA11) Conocer el lenguaje de programación C
  12. (RA12) Conocer el lenguaje de programación Python

Metodologia de trabajo


Las horas de aprendizaje dirigido comprenden:

  1. Clases teórico / prácticas en grupo grande en las que el profesorado introduce los contenidos de la asignatura y se realizan actividades docentes que persiguen que el estudiante sea un protagonista activo en la adquisición de los sus conocimientos.
  2. Las actividades se realizan en equipos de dos personas. Estas actividades prácticas se realizarán tanto en las clases con grupos reducidos como en las clases con grupos grandes (todos los alumnos).
  3. Presentaciones de forma individual y/o en grupos de temas concretos relativos al temario de la asignatura
  4. Redacción de informes de forma individual y/o en grupos de temas concretos relativos al temario de la asignatura
  5. Realización de proyectos (en equipos de trabajo) para trabajar habilidades y competencias transversales
  6. Resolución de problemas en un tiempo determinado en formato de retos para evaluar la capacidad del estudiante ante situaciones cotidianas de mercado

El objetivo final es que el alumno adquiera los conocimientos de la asignatura mediante actividades las cuales pueden ser pequeñas como proyectos más completos donde intervengan los conocimientos que se van adquiriendo a lo largo del curso. Dentro de las horas de aprendizaje autónomo se consideran las horas para preparar las clases teóricas, las horas para estudiar y consolidar los conocimientos adquiridos, las horas para preparar el trabajo de las prácticas y, por último, las horas que el estudiante puede dedicarse a aumentar y complementar sus conocimientos sobre la materia.

Este curso, debido a la situación generada por la COVID, algunas de las sesiones de grupo grande se harán en formato híbrido: presencial y en línea (vía streaming). Esto permitirá que los estudiantes puedan ir rotativamente en las clases presenciales, respetando el máximo de estudiantes por aula que imponen las medidas de distanciamiento. Cuando no les toque sesión presencial podrán seguir la clase en línea desde casa.

En cuanto a las sesiones de prácticas en espacios más reducidos (como laboratorios, estudios o plató), en su caso se trabajará simultáneamente en varios espacios para garantizar que se cumplen las condiciones establecidas por los protocolos de seguridad.

Contenidos


  1. Tema 1: Introducción a los Sistemas Operativos
  2. Tema 2: Scripting (Python)
  3. Tema 3: Comunicación entre Procesos i Sockets(C)
  4. Tema 4: Sistemas Operativos

Actividades de aprendizaje


Se pone a disposición de los estudiantes todo un conjunto de actividades de carácter eminentemente práctico que son la base de las actividades de aprendizaje de la asignatura. Estas actividades los estudiantes las deberán resolver, a veces de manera no presencial, siguiendo las indicaciones de los docentes y/o también serán trabajadas en clase, tanto como ejemplos en las sesiones de teoría, como en sesiones de laboratorio (grupos grandes o pequeños). Aunque algunas de estas actividades podrían tener un carácter optativo (los docentes no verificarán de manera individualizada la realización por parte de los estudiantes) serán imprescindibles para lograr los conocimientos teórico-prácticos de la asignatura

Con el objetivo de recoger evidencia del logro de los resultados de aprendizaje esperados se realizarán las siguientes actividades de carácter evaluativo, relacionadas con las competencias comunes, transversales y específicas. La competencia transversal asociada a la asignatura de conocimiento de tercera lengua se trabaja a partir de los fondos documentales que los estudiantes han de consultar y de la propia asignatura que tiene como lengua vehicular el inglés 

  1. Prácticas de Scripting: pruebas individuales/grupales de aplicación práctica de los conceptos teóricos y procedimientos prácticos del Tema 2 de la asignatura (evidencia de los resultados de aprendizaje RA2, RA9, RA12)
  2. Prácticas de Comunicación entre Procesos: pruebas individuales/grupales de aplicación práctica de los conceptos teóricos y procedimientos prácticos del Tema 3 de la asignatura (evidencia de los resultados de aprendizaje RA2, RA4, RA6, RA10, RA11)
  3. Prácticas de Administración de Sistemas Operativos: pruebas individuales/grupales de aplicación práctica de los conceptos teóricos y procedimientos prácticos de los Temas 1 y 4 de la asignatura (evidencia de los resultados de aprendizaje RA1, RA2, RA3, RA5, RA7, RA8) 
  4. Presentaciones: pruebas individuales/grupales de aplicación práctica de los conceptos teóricos y procedimientos prácticos de los Temas 1 y 4 de la asignatura (evidencia de los resultados de aprendizaje RA1, RA3, RA5, RA7, RA8)
  5. Trabajo en Grupo: Evaluación individual y en grupo de los conocimientos obtenidos en la realización de las diferentes actividades durante el trimestre: pruebas individuales/grupales de aplicación práctica de los conceptos teóricos y procedimientos prácticos de los Temas 1 y 4 de la asignatura (evidencia de los resultados de aprendizaje RA5, RA8)
  6. Prueba escrita: pruebas individuales/grupales de aplicación práctica de los conceptos teóricos y procedimientos prácticos de los Temas 1, 2, 3 y 4 de la asignatura (evidencia de los resultados de aprendizaje RA1, RA2, RA3, RA4, RA5, RA6, RA7, RA8, RA9, RA10, RA11, RA12)

En relación a las competencias básicas asignadas a la asignatura, éstas quedan cubiertas especialmente en cuanto a los aspectos que se explicitan:

  • CB2: resolución de problemas dentro de su área de estudio.
  • CB5: desarrollo de habilidades de aprendizaje necesarias para estudios posteriores (acceso autónomo a documentación, hábitos de trabajo efectivos)

En relación a las competencias transversales asociadas a la asignatura, éstas quedan cubiertas especialmente en cuanto a los aspectos que se explicitan:

  • CT1: el conocimiento de la lengua inglesa se trabaja a partir de las fuentes documentales que los estudiantes deben consultar, dado que mayoritariamente todas ellas se encuentran en inglés. Todo el material escrito de la asignatura (notas, enunciados de problemas, enunciados de prácticas, ...) se distribuyen exclusiva y únicamente en inglés. El idioma vehicular de la asignatura es el inglés.
  • CT2: el trabajo como miembros de un equipo interdisciplinar se trabaja mayoritariamente en las actividades prácticas donde la gestión y de la responsabilidad compartida es especialmente relevante

En relación a las competencias específicas asociadas a la asignatura, éstas quedan cubiertas especialmente para que los a los aspectos que se explicitan:

  • EFB4: se trabaja en las pruebas prácticas asociadas al tema IPC y al tema de scripting, con una importante componente práctica
  • EFB5: se trabaja en las pruebas prácticas asociadas al tema IPC y al tema de scripting, con una importante componente práctica, pero especialmente en las de comunicación entre procesos, focalizadas en los elementos de comunicación entre procesos en el mismo o diferentes sistemas

En relación a las competencias comunes asociadas a la asignatura, éstas quedan cubiertas especialmente para que los a los aspectos que se explicitan:

  • CIN1: se trabaja principalmente en las pruebas prácticas que conllevan el desarrollo de soluciones informáticas
  • CIN4: se trabaja en las actividades del tema de SISTEMAS OPERATIVOS, donde se analizan aspectos funcionales y de especificaciones, y en las actividades de evaluación continuada
  • CIN5: se trabaja en las actividades del tema de SISTEMAS OPERATIVOS, donde se analizan aspectos funcionales y de especificaciones, y en las actividades de evaluación continuada
  • CIN9: se trabaja de forma transversal en las pruebas escritas de la asignatura, que trabajan los aspectos más teóricos, pero también en las actividades prácticas, pues en cada una de ellas se hace énfasis en aspectos de la estructura y arquitectura de los sistemas
  • CIN10: se trabaja de forma transversal en las pruebas escritas de la asignatura, que trabajan los aspectos más teóricos, pero también en las actividades prácticas, pues en cada una de ellas se hace énfasis en aspectos de la estructura y arquitectura de los sistemas
  • CIN14: se trabaja en las pruebas prácticas asociadas al tema IPC focalizadas en los elementos de comunicación entre procesos en el mismo o diferentes sistemas

Para superar (aprobar) las actividades evaluativas, los estudiantes deberán demostrar:

  • Que han adquirido los conocimientos teóricos relativos a los contenidos de la asignatura y que su comprensión les permite llevarlos a la práctica [MECES-2 punto a, punto c]
  • Que pueden desarrollar soluciones a problemas que, si bien pueden ser similares a otros vistos anteriormente, presentan aspectos que son nuevos [MECES-2 punto f]

Normas de realización de las actividades

Para todas las actividades es obligada la asistencia para que puedan ser evaluadas.
Las actividades son obligatorias. Las actividades no realizadas o aquellas a las que no se haya asistido son evaluadas con un 0

Sistema de evaluación


1.- Examen 15%

2.- Actividades vinculadas al tema de scripting 35%

3.- Actividades vinculadas al tema de IPC 35%

4.- Actividades vinculadas al tema de SISTEMAS OPERATIVOS 10%

5.- Evaluación continuada 5%

Todas las notas son obligatorias. Se pueden recuperar los exámenes teóricos

Para las pruebas escritas la media de las pruebas debe tener una calificación mínima de 4,0. Si la nota es inferior a 4.0 entonces la calificación final será la de las pruebas escritas.

Bibliografía


Básica

Presentacions i apunts de l’assignatura al Moodle

https://docs.python.org

www.netacad.com


Complementaria

Operating System Concepts (9th Edition)

Avi Silberschatz, Peter Baer Galvin, Greg Gagne

John  Wiley and Sons, Inc

ISBN: 978-1-118-0633-0

Operating Systems: Three Easy Pieces

Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau

(http://pages.cs.wisc.edu/~remzi/OSTEP/#book-chapters)

The C Programming Language (Second Edition)

Brian W. Kernighan and Dennis M. Ritchie

Prentice-Hall

ISBN-13: 978-0131103627