SISTEMAS OPERATIVOS II
Doble Titulación de Grado en Estadística y en Ingeniería Informática
Curso 2022/2023
1. Datos de la asignatura
(Fecha última modificación: 27-05-22 10:55)- Código
- 101119
- Plan
- ECTS
- 6
- Carácter
- Curso
- 3
- Periodicidad
- Segundo Semestre
- Idioma
- ESPAÑOL
- Área
- ARQUITECTURA Y TECNOLOGÍA DE COMPUTADORES
- Departamento
- Informática y Automática
- Plataforma Virtual
Datos del profesorado
- Profesor/Profesora
- Sara Rodríguez González
- Grupo/s
- A (Teoría) y PA1
- Centro
- Fac. Ciencias
- Departamento
- Informática y Automática
- Área
- Ciencia de la Computación e Inteligencia Artific.
- Despacho
- Despacho D1514 – Edificio Ciencias
- Horario de tutorías
- En su página web
- URL Web
- http://diaweb.usal.es/personas/srg
- srg@usal.es
- Teléfono
- 923 29 45 00 (Ext. 6096)
- Profesor/Profesora
- Guillermo González Talaván
- Grupo/s
- B (Teoría) y PB2
- Centro
- Fac. Ciencias
- Departamento
- Informática y Automática
- Área
- Arquitectura y Tecnología de Computadores
- Despacho
- D-1101
- Horario de tutorías
- En su página web
- URL Web
- http://avellano.usal.es/~gyermo
- gyermo@usal.es; so+so@tejo.usal.es- sólo para alumnos-
- Teléfono
- 923294500 Ext. 6099
- Profesor/Profesora
- Susana Alvarez Rosado
- Grupo/s
- PA2 y PB1
- Centro
- Fac. Ciencias
- Departamento
- Informática y Automática
- Área
- Lenguajes y Sistemas Informáticos
- Despacho
- D1515
- Horario de tutorías
- En su página web
- URL Web
- http://diaweb.usal.es/diaweb/personas/sar
- sar@usal.es
- Teléfono
- 923294500 ext.1309
- Profesor/Profesora
- Gabriel Villarrubia González
- Grupo/s
- PA3 y PB3
- Centro
- Fac. Ciencias
- Departamento
- Informática y Automática
- Área
- Ciencia de la Computación e Inteligencia Artific.
- Despacho
- Despacho F2400
- Horario de tutorías
- A demanda, por correo electrónico.
- URL Web
- http://diaweb.usal.es/diaweb/personal/presentacion.jsp?persona=343&tipo=P
- gvg@usal.es
- Teléfono
- 923293464 ext. 5476
2. Sentido de la materia en el plan de estudios
Bloque formativo al que pertenece la materia.
Bloque formativo al que pertenece la materia
La asignatura pertenece a la materia de SISTEMAS OPERATIVOS (24 créditos ECTS), integrada por las siguientes asignaturas obligatorias: Sistemas Operativos I (2º, C3), Sistemas Operativos II (2º, C4), Administración de Sistemas (3º, C6) y Sistemas Distribuidos (4º, C8).
Papel de la asignatura dentro del Bloque formativo y del Plan de Estudios
Una vez analizados las técnicas de funcionamiento y componentes básicos utilizados en la construcción de un sistema operativo moderno en la asignatura Sistemas Operativos I, esta asignatura permitirá asentar dichos conocimientos obtenidos ampliándolos. A lo largo de esta asignatura se estudiarán mecanismos de comunicación y sincronización en los sistemas operativos y su aplicación a la práctica, fundamentalmente basándose en la programación del sistema en los entornos UNIX y WIN32.
Perfil profesional
Al ser una asignatura de carácter obligatorio, resulta fundamental en cualquier perfil vinculado al Grado en Ingeniería Informática.
Papel de la asignatura.
Una vez analizados las técnicas de funcionamiento y componentes básicos utilizados en la construcción de un sistema operativo moderno en la asignatura Sistemas Operativos I, esta asignatura permitirá asentar dichos conocimientos obtenidos ampliándolos. A lo largo de esta asignatura se estudiarán mecanismos de comunicación y sincronización en los sistemas operativos y su aplicación a la práctica, fundamentalmente basándose en la programación del sistema en los entornos UNIXy WIN32.
Perfil profesional.
Al ser una asignatura de carácter obligatorio, resulta fundamental en cualquier perfil vinculado al Grado en Ingeniería Informática.
3. Recomendaciones previas
Para Sistemas Operativos II, es aconsejable haber superado Sistemas Operativos I.
4. Objetivo de la asignatura
- Plantear y solucionar problemas informáticos que involucren la creación y comunicación de varios procesos o hilos en un sistema operativo
- Conocer la estructura y funciones de un sistema operativo moderno y su evolución histórica
- Enfrentarse y plantear soluciones a un nivel medio con mecanismos del sistema operativo para problemas de concurrencia propuestos
- Trabajar adecuadamente en equipo en la realización de prácticas, organizarse, repartirse el trabajo y cumplir los plazos establecidos
- Adquirir habilidades individuales de comunicación y defensa del trabajo realizado
5. Contenidos
Teoría.
TEMA I. Concurrencia: exclusión mutua
- Principios generales de la concurrencia
- Soluciones por software para la exclusión mutua
- Soluciones por hardware para la exclusión mutua
- Soluciones ofrecidas por el sistema operativo
- Semáforos
- Monitores
TEMA II Concurrencia: sincronización y comunicación
- Reparto y consumo de la CPU
- Las señales como mecanismo de comunicación
- Paso de mensajes
- Tipos de sincronización
- Sincronización por paso de mensajes
- Sincronización mediante semáforos
- Exclusión mutua como sincronización
- Comunicación pormemoria compartida. Necesidad de sincronización
- Prioridades e inanición
- Problemas clásicos: productor-consumidor, barbería, lectores y escritores
TEMA III Concurrencia: interbloqueo (una instancia por recurso)
- Caracterización de interbloqueos: condiciones necesarias , grafo de asignación de recursos
- Recuperación de interbloqueos
- Prevención de interbloqueos
- Detección de interbloqueos
- Evitación de interbloqueos: algoritmo del banquero
TEMA IV: Concurrencia: interbloqueo (variasinstancias porrecurso)
- Recursos e instancias
- Detección de interbloqueos
- Evitación de interbloqueos: algoritmo del banquero
- Problemas clásicos: el atasco de tráfico, los filósofos
TEMA V: Entrada/salida
- Gestión de la entrada/salida. Drivers. Seguridad
- Transparencia. Ficheros de dispositivo
- Aspecto del diseño del software de entrada/salida
- Entrada/salida programada
- Entrada/salida dirigida por interrupciones
- Acceso directo amemoria, memoriamapeada
- El disco magnético: estructura física, parámetros de rendimiento, algoritmos de planificación, gestión, RAID
- El buffer caché
- El área de intercambio
TEMA VI: Sistema de ficheros
- Organización de ficheros: direccionamiento, entrada de directorio
- Gestión del área de datos y espacio libre: contigua, enlazada, indizada
- Sistema de ficheros virtual
- Ejemplos de sistemas de ficheros
- Posibilidades opcionales: montaje de unidades, cuotas de disco, seguridad, journalling, herramientas auxiliares
Práctica.
PRIMERA PARTE: Programación avanzada con llamadas al sistema de UNIX
- Creación y manejo de procesose hilos
- Señales como mecanismo de comunicación
- Mecanismos IPC
- Semáforos
- Tuberías
- Pasodemensajes
- Memoria compartida
- Terminales
SEGUNDA PARTE:Programación con llamadas al sistema de WIN32
- Manejo de ficheros en WIN32
- Creación y manejo de procesose hilos
- Semáforos
- Mutexes
- Eventos
- Secciones críticas
- Operaciones atómicas sobre variables de tipo LONG
- Entrada/salida solapada
- Memoria compartida y ficheros proyectados en memoria
- Mensajes en WIN32
- Manejo de DLLs
6. Competencias a adquirir
Básicas / Generales.
Básicas
• CB4: Conocimientos básicos sobre el uso y programación de los ordenadores, sistemas operativos, bases de datos y programas informáticos con aplicación en ingeniería
• CB5: Conocimiento de la estructura, organización, funcionamiento e interconexión de los sistemas informáticos, los fundamentos de su programación, y su aplicación para la resolución de problemas propios de la ingeniería.
Comunes
• CC5: Conocimiento, administración y mantenimiento de sistemas, servicios y aplicaciones informáticas.
• CC6: Conocimiento, administración y mantenimiento de sistemas, servicios y aplicaciones informáticas.
• CC10: Conocimiento de las características, funcionalidades y estructura de los Sistemas Operativos y diseñar e implementar aplicaciones basadas en sus servicios.
• CC11: Conocimiento y aplicación de las características, funcionalidades y estructura de los Sistemas Distribuidos, las Redes de Computadores e Internet y diseñar e implementar aplicaciones basadas en ellas.
• CC14: Conocimiento y aplicación de los principios fundamentales y técnicas básicas de la programación paralela, concurrente, distribuida y de tiempo real.
Específicas.
TI6: Capacidad de concebir sistemas, aplicaciones y servicios basados en tecnologías de red, incluyendo Internet, web, comercio electrónico, multimedia, servicios interactivos y computación móvil.
Transversales.
• CT1: Conocimientos generales básicos
• CT2: Conocimientos básicos de la profesión
• CT3: Capacidad de análisis y síntesis
• CT4: Capacidad de organizar y planificar
• CT5: Comunicación oral y escrita en la lengua propia
• CT7: Habilidades básicas en el manejo del ordenador
• CT8: Habilidades de gestión de la información
• CT9: Resolución de problemas
• CT10: Toma de decisiones
• CT12: Trabajo en equipo
• CT14: Responsabilidad y compromiso ético
• CT15: Liderazgo
• CT16: Capacidad de aplicar los conocimientos en la práctica
• CT18: Capacidad de aprender
• CT19: Capacidad de adaptarse a nuevas situaciones
• CT21: Habilidad para trabajar de forma autónoma y cumplir plazos
7. Metodologías
Las actividades formativas que se proponen para esta materia son las siguientes:
Actividades presenciales:
• Lección magistral: exposición de teoría y resolución de problemas
• Realización de prácticas guiadas en laboratorio
• Sesiones de tutorías, seguimiento y evaluación, individuales o en grupo
• Exposición de trabajos y pruebas de evaluación
Actividades no presenciales:
• Estudio autónomo por parte del estudiante
• Revisión bibliográfica y búsqueda de información
• Realización de trabajos, prácticas libres, informes de prácticas…
Para esta materia las actividades formativas presenciales, que implican una interacción profesor-estudiante, suponen el 40% de los créditos ECTS. En las asignaturas la distribución temporal asignada a cada actividad se corresponde con el modelo de tipo C (modelos presentados en el apartado 5.1 de la memoria del Grado).
El contenido teórico de las materias presentado en las clases magistrales junto con su aplicación en las clases de problemas y las prácticas guiadas, facilitará la asimilación de las competencias anteriormente descritas. En las sesiones y seminarios tutelados se resolverán las dudas y el trabajo personal permitirá afianzar dichas competencias.
8. Previsión de Técnicas (Estrategias) Docentes
9. Recursos
Libros de consulta para el alumno.
- Silberschatz, A. et al. (2006).Fundamentos de Sistemas Operativos 7ª edición. Mc Graw-Hill
- Stallings, W. (2005). Sistemas Operativos. 5ª edición. Prentice-Hall
- Carretero Pérez, J. (2001). Sistemas Operativos. Una Visión Aplicada. Mc Graw-Hill
- Márquez García, F. (1996). UNIX. Programación Avanzada. 2ª edición. Rama
- Richter, J. (1994). Windows NT Avanzado. Mc Graw-Hill
Otras referencias bibliográficas, electrónicas o cualquier otro tipo de recurso.
• Material elaborado por los profesores a disposición de los alumnos
• http://avellano.usal.es/~ssooii
10. Evaluación
Consideraciones generales.
A lo largo del periodo docente, se realizarán un conjunto de actividades evaluables que tendrán como objetivo la constatación de que el estudiante va adquiriendo las competencias previstas. A este conjunto le llamamos actividades de evaluación continua.
Adicionalmente, se realizará un examen final con cuestiones teórico-prácticas que permita evaluar en conjunto los conocimientos, las destrezas y las habilidades adquiridas.
La evaluación global de la asignatura se realizará en base tanto a las actividades de evaluación continua como al examen final.
Criterios de evaluación.
Para la evaluación de la asignatura se aplicará la siguiente ponderación en la valoración de las actividades de evaluación:
• Actividades de evaluación continua: 40%
• Realización de exámenes de teoría o problemas: 60%
La nota final de las asignaturas se obtendrá de forma ponderada a través de las notas finales conseguidas en los apartados anteriores. No se exigirá nota mínima en ninguna de las partes individualmente. Para superar la asignatura bastará con obtener el 50% de la nota máxima, sea cual sea la composición de ese 50%.
Instrumentos de evaluación.
Evaluación continua:
Presentación y defensa de dos prácticas: supondrá el 40% de la nota final,(20% cada práctica).Cada práctica presentada por un grupo de dos alumnos recibirá una nota en función de la calidad del trabajo presentado. Una defensa individual con cada miembro del grupo modulará (0% al 100%) la nota obtenida por cada miembro individualmente, tomando como base la nota obtenida en la práctica.
Prueba escrita final:
Consistirá en una batería de preguntas de respuesta corta y de tipo test de respuesta única, distribuidas de un modo proporcional al tiempo dedicado a cada tema. Todas las preguntas tendrán el mismo peso en la calificación final de la prueba. Las preguntas de tipo test descontarán en caso de ser falladas de modo inversamente proporcional al número de opciones menos una.
Recomendaciones para la evaluación.
Asistencia a clase, participación en las actividades y trabajo personal.
Uso de las tutorías para afianzar los conocimientos adquiridos en clase y solventar las dudas que surjan durante el trabajo personal.
Recomendaciones para la recuperación.
Se realizará un examen de recuperación (2ª convocatoria), para aquellos casos en los que, tras el primer examen final (1ª convocatoria), no se ha logrado la superación de la asignatura.
Los criterios de evaluaciónen la 2ª convocatoria son los mismos que en la primera (40%evaluación continua +60% examen final), por lo que el examen de recuperación solo permite recuperar en el 60% correspondiente al examen final. Las actividades de evaluación continua no son recuperables. Al inicio de cada curso, se ofrecerá al alumno la posibilidad de conservar la nota de la evaluación continua del curso anterior (si la hizo o fue conservada de años anteriores).
Para ello durante los dos primeros meses de la asignatura el profesor de teoría ofrecerá dicha posibilidad a los alumnos repetidores, firmando
Aquellos interesados su conformidad. No se podrá conservar parte de la nota en evaluación continua, solamente la nota completa.