ETSIT / UVa |
Acceso Intranet
Titulación: Ingeniero en Electrónica Departamento:Teoría de la Señal y Comunicaciones e Ingeniería Telemática Centro: E.T.S. de Ingenieros de Telecomunicación Campus "Miguel Delibes". Camino del Cementerio s/n. 47011 Valladolid Curso: 1º Carácter: Troncal Impartición: Segundo cuatrimestre Número de créditos: 9.0 Ofertada actualmente: Sí Observaciones:
Página web:
Página web (extra):
Profesores:
Correo electrónico de contacto:manuelrodriguezteluvaes Objetivos:Mostrar los fundamentos utilizados para el diseño y desarrollo de los distintos tipos de sistemas operativos (centralizados, en red, distribuidos) e introducir al alumno en la problemática de las redes de ordenadores y los sistemas en tiempo real. La explicación de estos fundamentos irá acompañada de ejemplos de su aplicación a diversos sistemas operativos ampliamente utilizados en la actualidad Descripción: Se estudiarán los fundamentos de sistemas operativos, con especial énfasis en los sistemas operativos para sistemas centralizados. Se introducirán los conceptos fundamentales de redes de ordenadores (necesarias para el desarrollo de sistemas distribuidos) y de sistemas operativos distribuidos. Contenidos:Tema 1. Introducción Definición de sistema operativo. Evolución de los sistemas informáticos y sus sistemas operativos. Arquitectura de sistemas en tiempo real. Características de los sistemas operativos en tiempo real.Componentes y servicios de un sistema operativo. Estructura de un sistema operativo. Tema 2. Planificación de procesos Definición de proceso. Estructuras de datos del sistema. Hilos de ejecución (threads). Planificación de procesos. Algoritmos de planificación. Planificación en sistemas de tiempo real. Evaluación de los algoritmos de planificación. Procesos y planificación de procesos en GNU/Linux. Tema 3. Concurrencia, sincronización y comunicación entre procesos Grafos de precedencia. Condiciones para que pueda haber concurrencia. Especificación de concurrencia en un lenguaje de programación. Definición del problema de la sección crítica. Herramientas de sincronización entre procesos: Semáforos, Regiones críticas y Monitores. Problemas clásicos de sincronización entre procesos. Comunicación entre procesos. Tema 4. Gestión de memoria Definición de gestión de memoria. Algoritmos de gestión de memoria física: particiones múltiples estáticas y dinámicas, paginación, segmentación y algoritmos combinados. Definición de memoria virtual. Algoritmos de gestión de memoria virtual: paginación bajo demanda. Algoritmos de reemplazo de página. Algoritmos de asignación de celda. Hiperpaginación: definición y mecanismos para evitarla. Gestión de memoria en GNU/Linux. Tema 5. Sistemas de ficheros Concepto de fichero y directorio. Clasificación de los directorios. Métodos de acceso a ficheros. Gestión del espacio libre. Métodos de asignación de espacio a ficheros. Mecanismos de protección. El sistema de ficheros en GNU/Linux. Tema 6. Introducción a las redes de ordenadores Conceptos básicos de redes de comunicación. Clasificación de las redes. Arquitecturas, servicios y protocolos. Modelo de referencia OSI. Modelo TCP/IP. Comparación entre modelos. Tema 7. Sistemas distribuidos. Sistemas distribuidos y sistemas operativos distribuidos. Objetivos de diseño: transparencia, apertura, escalabilidad. Conceptos de hardware: multiprocesadores, sistemas multiordenador homogéneos y heterogéneos. Conceptos de software: sistemas operativos distribuidos, sistemas operativos en red y middleware. Aspectos de comunicación: el modelo cliente-servidor, llamada a procedimiento remoto e invocación remota de objetos. Prácticas:Las prácticas consistirán en la programación en el lenguaje C sobre el sistema operativo Unix de algunos problemas relacionados con los conceptos explicados en la parte teórica de la asignatura. Evaluación:Consistirá en un examen de preguntas teóricas y problemas en las fechas fijadas por la Junta de Centro y en la evaluación de las prácticas realizadas en el laboratorio. La nota final será el promedio de las notas del examen teórico y de problemas con la nota promedio de las prácticas de laboratorio. El alumno deberá aprobar tanto el examen como las prácticas para superar la asignatura. Observaciones:Conocimientos previos recomendados: Conocimientos sólidos de programación en C. Estos conocimientos pueden adquirise mediante la asignatura de Fundamentos de Programación que forma parte de los Complementos de Formación para el acceso a la titulación de Ingeniero en Electrónica. Conocimientos básicos sobre arquitectura de ordenadores que habrán sido adquiridos en la asignatura de Sistemas Electrónicos para el Tratamiento de la Información I. La dirección web de la asignatura se actualiza al comienzo de la asignatura (segundo cuatrimestre).