Sistemas Operativos (21724)

Titulación/estudio: Grado en Ingeniería en Informática y Grado en Ingeniería Telemática 
Curso: segundo
Trimestre: segundo
Número de créditos ECTS: 4 créditos
Horas de dedicación del estudiante: 100 horas
Lenuga o lenguas de la docencia: catalán, castellano e inglés
Profesor: Rafael Ramirez, Xavier Perramón, Josep Prados y Oriol Martinez

 

1. Presentación de la asignatura

La asignatura de Sistemas Operativos es obligatoria y se ofrece durante el curso de Ingeniería Informática e Ingeniería Telemática, formando parte del segundo curso de estos grados. En la asignatura se estudia la organización, estructura y características de los sistemas operativos, gestión y administración de los procesos y de la memoria. La asignatura tiene un componente teórico y otro práctico. Dentro del componente teórico, l'énfasis se encuentra en la comprensión de los conceptos a nivel intuitivo más que en la utilización estricta del lenguaje matemático.

La asignatura está compuesta de tres actividades principales: clases de teoría, seminarios y laboratorios. En las clases de teoría, se introducen los conceptos formales y se muestran ejemplos de su aplicación. En los seminarios, los alumnos resuelven pequeños problemas. Cada problema corresponde a uno de los conceptos introducidos en clase de teoría.  En los laboratorios, se presentan problemas de más complexidad y de carácter más computacional porque los alumnos tengan la oportunidad de poner en práctica los conceptos aprendidos.

 

2. Prerrequisitos para el seguimiento del itinerario formativo

Los conocimientos precios para el seguimiento de la asignatura son ciertas nociones adquiridas durante el primer curso de los estudios. En particular, los conocimientos previos requeridos para la asignatura son:
·· Nociones básicas de programación: Sintaxis y semántica de lenguajes, desarrollo de programas, estructuras de datos, algoritmos de manipulación y ficheros.
·· Aritmética básica.
·· Capacidad básica para comprender y escribir expresiones matemáticas a nivel elemental.
Esta asignatura asume la asimilación de los conceptos aprendidos en Fundamentos de la Programación, así como en Estructuras de Datos y Algoritmos.



3. Competencias a alcanzar en la asignatura

El objetivo fundamental de la asignatura es que los alumnos adquieran los aspectos fundamentales relacionados con los sistemas operativos: componentes de sistemas operativos, procesos, sincronización de procesos, CPU scheduling, deadlocks, manejo de memoria, memoria virtual y sistemas de archivos.    

Competencias transversales

Competencias específicas


Instrumentales
1. Capacidad de razonar a nivel abstracto
2. Habilidades cognitivas
3. Sentido común

Interpersonales
4. Competencia de comunicación 

Sistémicas
5. Capacidad de identificar la mejor metodología para resolver un problema.
6. Capacidad de solucionar problemas combinando de manera nueva y no trivial elementos ya conocidos
7. Capacidad de generar ideas

Otras

1. Capacidad de entender a nivel intuitivo y formal los diferentes aspectos en sistemas operativos: componentes, procesos, manejo de memoria y sistema de archivos.

 

2. Capacidad de aplicar los conocimientos de procesos, manejo de memoria y sistema de archivos en contextos prácticos.

 

3. Capacidad de entender y modificar el funcionamiento interno de sistemas operativos actuales.

 


4. Objetivos de aprendizaje

El objetivo de esta asignatura es conseguir que los alumnos comprendan la utilidad del sistema operativo como un enlace entre las aplicaciones informáticas y el nivel físico (hardware). De la misma manera, se pretende conseguir que los alumnos gestionen los recursos de un ordenador de un ordenador mediante la utilización de los servicios que proporciona el sistema operativo. Más concretamente, se pretende alcanzar los siguientes objetivos:  

·· Revisar el panorama actual de los sistemas operativos
·· Comprender adecuadamente los componentes del sistema operativo
·· Analizar y utilizar los mecanismos de gestión de procesos del sistema operativo
·· Comprender los mecanismos de gestión de memoria
·· Revisar y aplicar los mecanismos de gestión de dispositivos de entrada / salida
·· Comprender los mecanismos de gestión de ficheros del sistema operativo ´
 

5. Contenidos

5.1. Bloques de contenido 

-  Bloque de contenido 1. Componentes de un sistema operativo
-  Bloque de contenido 2. Gestión de Procesos
-  Bloque de contenido 3. Gestión de Memoria
-  Bloque de contenido 4. Dispositivos de entrada / salida
-  Bloque de contenido 5. Sistema de ficheros 
 

5.2. Organización y concreción de los contenidos 

Bloque de contenido 1. Componentes de un sistema operativo 

Conceptos

Procedimientos

Actitudes

- llamadas al sistema
- procesos del sistema
- memoria, ficheros
- máquina virtual
- sesión de trabajo
- librerías del sistema
- herramientas del sistema
- núcleo (kernel)
- aplicaciones

- Introducción a los elementos que integran un ordenador
- Breve descripción de la evolución de los ordenadores y descripción de los tipos de sistemas operativos
- Descripción de los componentes de un sistema operativo
- Descripción de la interpretación de mandos y los tipos de mandos que existen
- Descripción de los tipos de librerías del sistema
- Descripción de los procesos generales de desarrollo y ejecución de aplicaciones 

- Interés en aprender conceptos nuevos y prefundir en conceptos aprendidos con anterioridad
- Interés en abstraer conceptos y relacionarlos con situaciones reales

 

 

  

Bloque de contenido 2. Gestión de procesos 

Conceptos

Procedimientos

Actitudes

- programa
- concurrencia
- proceso
- thread
- sincronización de procesos
- planificación de CPU
- deadlocks 

- Análisis de elementos necesarios para crear un programa concurrente
- Descripción del bloque de control de procesos (PCB)
- Análisis de los estados posibles de los procesos concurrentes
- Gestión de procesos; creación, destrucción, incronización, cambio de imagen, entrada / salida
- estrategias de planificación de CPU

- Disponibilidad por intentar entender conceptos que inicialmente parecen complejos.
- Interés en aprender conceptos nuevos y prefundir en conceptos aprendidos con anterioridad
- Interés en abstraer conceptos y relacionarlos con situaciones reales

   

Bloque de contenido 3. Gestión de memoria 

Conceptos

Procedimientos

Actitudes

- espacio de memoria
- dirección de memoria
- asignación de memoria
- partición de memoria
- segmento de memoria
- paginación
- memoria virtual
- cache

- Análisis del espacio de memoria de procesos
- Tipo de gestión de memoria
-  Profundizar en particiones de memoria fijas y variables
- Profundizar en segmentación y paginación de memoria

- Disponibilidad por intentar entender conceptos que inicialmente parecen complejos.
- Interés en aprender conceptos nuevos y prefundir en conceptos aprendidos con anterioridad
- Interés en abstraer conceptos y relacionarlos con situaciones reales

  

Bloque de contenido 4. Dispositivos de entrada y salida 

Conceptos

Procedimientos

Actitudes

- dispositivo de entrada
- dispositivo de salida
- buffer
- controlador
- tubo

- Análisis de características de dispositivos de entrada y salida
- Descripción del concepto "buffer" y su relación con los dispositivos de entrada / salida
- Descripción del concepto "spooling" y su relevancia en los dispositivos de entrada / salida
- Características de dispositivos físicos, lógicos y virtuales, y profundizar en sus operaciones de acceso y control
- Análisis de comunicación entre procesos mediante tubos

- Interés en aprender conceptos nuevos y prefundir en conceptos aprendidos con anterioridad
- Interés en abstraer conceptos y relacionarlos con situaciones reales

 

 

  

Bloque de contenido 5. Sistema de ficheros 

Conceptos

Procedimientos

Actitudes

- fichero
- directorio
- directorio raíz
- directorio de trabajo
- directorio inicial
- nombre de fichero
- enlace
- protección

- Descripción de los tipos de ficheros existentes y sus propiedades
- Análisis de las operaciones posibles aplicables a ficheros
- Análisis de características de los diversos tipos de espacios de nombres de ficheros
- Características y operaciones aplicables a sistemas de ficheros
- Análisis de mecanismos disponibles para protección de ficheros

- Interés en aprender conceptos nuevos y prefundir en conceptos aprendidos con anterioridad
- Interés en abstraer conceptos y relacionarlos con situaciones reales

 

 

 

6. Evaluación

6.1. Criterios generales de evaluación 

En la evaluación continuada se tiene en cuenta cada una de las tres actividades que constituyen la asignatura: clases de teoría, laboratorios y seminarios. En la evaluación continuada, se tiene que aprobar cada una de las tres actividades por separado y la nota final se obtiene haciendo la media ponderada de la siguiente forma:

T: la evaluación de la teoría a través de un examen final
L: la evaluación de los laboratorios con las prácticas de programación y un examen final de prácticas.
S: la evaluación de los seminarios

Nota Final = 0,6 * T + 0,3 * L + 0,1 * S 

El examen de teoría se realizará sobre los contenidos desarrollos a clase de teoría y a los seminarios. Es un examen escrito e individual que avalúa todas las competencias desarrolladas durante la asignatura. Esta evaluación es obligatoria y tiene que ser cualificada con, como mínimo, un 50% para poder aprobar la asignatura.

En los laboratorios se realizan una serie de prácticas que ponen a prueba la capacidad de los alumnos de aplicar la teoría en forma de programas en un ordenador. Las prácticas se realizan en parejas, de manera que los alumnos tienen que cooperar y saber comunicarse para resolver los problemas. Esta evolución también es obligatoria y tiene que ser cualificada como mínimo con un 50% en la parte de prácticas y 50% en la parte del examen final para aprobar la asignatura.

Antes de cada seminario, se presentarán problemas a los alumnos para que ellos los resuelvan en equipos de tres antes de la sesión, como una preparación previa al seminario. Estos problemas corresponden a conceptos o conocimientos tratados a clase de teoría. Los alumnos tienen que entregar las soluciones al inicio del seminario y, además, se pedirá a los alumnos que presenten sus soluciones a la pizarra. En la evolución, se tendrá en cuenta la preparación del seminario, la presencia en él y también el aprovechamiento. La evaluación del trabajo de los seminarios es obligatoria y, como se ha comentado, la nota S que se obtenga tiene que ser cualificada como mínimo con un 50% para aprobar la asignatura. 

En el caso de no aprobar la asignatura en la evolución continuada expuesta en los puntos anteriores, el alumno o alumna tiene derecho a una convocatoria en el mes de setiembre. La nota de esta convocatoria se obtendrá en un examen de los contenidos de las clases de teoría y en la nota L. En caso de haber suspendido L en la evaluación continuada, se podrá entregar la práctica entera de toda la asignatura y se evaluará de nuevo. Una vez aprobadas T y L por separado, la nota de setiembre se obtendrá así: 

Nota de Setiembre = 0,6*T+0,4*L  


6.2. Concreción por competencias 

Competencias a alcanzar en la asignatura

Indicador de alcance

Procedimiento de evaluación

Distribución temporal


Competencias generales
1. Capacidad de razonar a nivel abstracto
2. Habilidades cognitivas
3. Sentido común
4. Competencia de comunicación
5. Capacidad de identificar la mejor metodología para resolver un problema.
6. Capacidad de solucionar problemas combinando de manera nueva y no trivial elementos ya conocidos
7. Capacidad de generar ideas

 

Competencias específicas
1. Capacidad para definir al sistema operativo con un ordenador, identificar las funciones que lo integran y identificar el tipo de sistemas operativos que se manejan en la actualidad.
2. Capacidad para identificar los componentes de un sistema operativo y realizar operaciones con el los servicios que proporcionan los componentes de un sistema operativo
3. Capacidad para identificar los mecanismos de gestión de procesos en un ordenador así como aplicarlos en situaciones reales de ejecución
4. Capacidad para identificar e utilizar adecuadamente los mecanismos proporcionados. Por el sistema operativo para gestionar la memoria de un ordenador
5. Capacidad para gestionar adecuadamente los dispositivos de entrada y salida ante situaciones reales de utilización de un ordenador
6. Capacidad para identificar y realizar operaciones con el sistema de ficheros del sistema operativo


1. Capacidad de solucionar problemas abstractos
2. Capacidad de proponer soluciones a problemas
3. Capacidad de proponer soluciones a problemas
4. Soluciones coherentes y bien escritas en las prácticas  y seminarios
5. Soluciones coherentes en las prácticas y seminario
6.  Soluciones coherentes en las prácticas y seminario
7. Soluciones ingeniosas a problemas presentados

 

1. Responder correctamente a las preguntes que se le planteen y participación en los seminarios
2. Responder adecuadamente a las cuestiones planteadas y la concreta ejecución de las prácticas de laboratorio
3. Correcta explicación de la gestión de procesos de un sistema operativo y adecuado manejo práctico de los mecanismos que éste dispone para esto
4. Gestionar adecuadamente la memoria de un ordenador y explicar los mecanismos del sistema operativo que facilitan su gestión
5. Describir correctamente las operaciones de entrada y salida de un ordenador y realizar adecuadamente operaciones de entrada / salida en un ordenador
6. Que el alumno describa correctamente las características del sistema de ficheros del sistema operativo y que los utilice correctamente


1. Evaluación de prácticas, seminarios y del examen final
2. Evaluación de prácticas, seminarios y del examen final
3. Evaluación de prácticas, seminarios y del examen final
4. Evaluación de prácticas y seminarios
5. Evaluación de prácticas y seminarios
6. Evaluación de prácticas, seminarios y del examen final
7. Evaluación de prácticas, seminarios y del examen final 

 

1. Evaluación de prácticas y el examen final
2. Evaluación de prácticas y el examen final
3. Evaluación de preguntas concretas en examen final e informe de prácticas entregado por el alumno o la alumna
4. Evaluación del examen teórico final y ejecución de prácticas
5. Evaluación del examen teórico final y ejecución de prácticas
6. examen final de la asignatura e informe de prácticas correspondiente


1. Todo el trimestre
2. Todo el trimestre
3. Todo el trimestre
4. Todo el trimestre
5. Todo el trimestre
6. Todo el trimestre
7. Todo el trimestre

 

 

 



1. Todo el trimestre
2. Todo el trimestre
3. Todo el trimestre
4. Todo el trimestre
5. Todo el trimestre
6. Todo  el trimestre

  

7. Bibliografía y recursos didácticos

7.1. Fuentes de información para el aprendizaje. Bibliografía básica (soporte papel y electrónico) 

Abraham Silberschatz, Peter B. Galvin. Sistemas operativos; traducción Roberto L. Escalona. Prentice Hall - Addison-Wesley Longman, 1999. ISBN 968-444-310-2
 

7.2. Fuentes de información para el aprendizaje. Bibliografía complementaria (soporte papel y electrónico) 

William Stallings. Sistemas operativos : aspectos internos y principios de diseño traducción y revisión técnica: José María Peña Sánchez ... [et al.] 5ª ed. Madrid [etc.] : Prentice Hall, cop. 2005. ISBN 84-205-4462-0 
Duran Rodriguez, Lluís. Sistemas operativos : referencia bàsica. Marcombo, cop. 2000. ISBN 8426712568 
Tanenbaum, Andrew S., Modern operating systems. Prentice Hall, cop. 2001 2nd edition. , ISBN 0-13-031358-0 
Teodor Jové Lagunas, Josep Lluís Marzo i Lázaro, Dolors Royo Vallés. Introducció als sistemes operatius ; Collecció Manuals (EDIUOC) 19. ISBN 84-95131-10-2. Barcelona: EDIUOC, 1998 
Stevens, W. Richard, Advanced programming in the UNIX environment. Addison-Wesley, 1993. ISBN 0-201-56317-7 
Milenkovic, Milan. Sistemas operativos conceptos y diseño. McGraw-Hill cop. 1994. ISBN 84-481-1871-5
 

7.3. Recursos didácticos. Material docente de la asignatura 

Todo el material estará disponible desde la página Web o Moodle de la asignatura
Transparencias
Apuntes
Colección de ejercicios
Enunciados de las prácticas
Conjunto de problemas de los seminarios

 

8. Metodología

Clases de teoría
En estas clases se abordan los conceptos teóricos de los bloques de contenido de la asignatura. En la asignatura de Sistemas Operativos, hay dos grupos de teoría, T1 y T2. Las clases de teoría consisten en 9 sesiones (para cada grupo) de dos horas de duración en las cuales asisten, por separado y en su totalidad, los dos grupos de teoría T1 y T2. El profesor realizará las explicaciones de los contenidos teóricos de la asignatura. Para eso, se dispondrá de ordenador, proyector y pizarra como material de soporte. Se utilizaran transparencias que servirán como apuntes de clase para los alumnos. Los conceptos analizados en este tipo de sesiones serán utilizados en las dos actividades de aprendizaje restantes de la asignatura: sesiones de seminarios y sesiones de prácticas. 

Sesiones de prácticas
En estas sesiones se desarrollan los puntos prácticos del bloque de contenido de la asignatura. El primer grupo de teoría T1 se divide en dos grupos de prácticas definiendo los grupos P11 y P12. El segundo grupo de teoría T2 no se divide definiendo el grupo P21. 
Estas sesiones tienen lugar en el laboratorio y tienen una duración de dos horas. El profesor de prácticas entregará un enunciado en el cual se explica el desarrollo de la práctica y dará las directrices necesarias para que los alumnos realicen las comprobaciones y el desarrollo que se los solicite en los enunciados de la práctica. El alumno entregará una memoria de la práctica al final de la sesión, sobre la cual el profesor evaluará que se han desarrollado adecuadamente los conceptos prácticos que se han planteado en el enunciado de la práctica. Esta actividad se realiza por parejas y se presupone que continúa fuera del aula. Las sesiones de prácticas estarán orientadas a cubrir los puntos prácticos de los contenidos abordados en la clase de teoría. 

Sesiones de seminarios
Estas sesiones están dedicadas a describir puntos de particular relevancia de los bloques de contenido de la asignatura. Las sesiones de seminarios consisten en sesiones de dos horas de duración. En estas sesiones, el profesor dirigirá y planteará problemas específicos que ayudarán a reforzar los conocimientos adquiridos en las sesiones de teoría y en las prácticas de la asignatura. Los alumnos tienen que entregar las soluciones al inicio del seminario y, además, se les pedirá que presenten sus soluciones a la pizarra. Para esta actividad, el profesor dispondrá de ordenador, proyector y pizarra como material de soporte. Se podrán utilizar transparencias y, en general, cualquier topo de material que ayude a reforzar los conceptos adquiridos en las sesiones de teoría de la asignatura. Las actividades serán realizadas en grupos de 3-4 estudiantes. El primer grupo de teoría T1 se divide en tres grupos de seminarios definiendo los grupos de S111, S112 y S121. El segundo grupo de teoría T2 se divide en dos grupos de seminarios definiendo el grupo S211 y S212.