UNIVERSIDAD CENTRAL DE VENEZUELA FACULTAD DE CIENCIAS ESCUELA COMPUTACIÓN UNIDAD DOCENTE ARQUITECTURA, REDES Y SISTEMAS SISTEMAS OPERATIVOS. SEMESTRE I-2014 PROGRAMA DE LA MATERIA CÓDIGO: SEMESTRE 6004 4to CRÉDITOS: REQUISITOS: MODALIDAD BÁSICA TIPO: CLASES (EN HORAS): 4 TEORIA/2 PRACTICA/2 LABORATORIO 6 Organización y Estructura del Computador II Algoritmos y Estructuras de Datos OBLIGATORIA FUNDAMENTACIÓN: El Sistema Operativo es el componente indispensable para la selección, gestión y evaluación de plataformas computacionales, constituyendo la capa de software más interna directamente relacionada con el computador que permite la programación del uso de los recursos computacionales. OBJETIVOS DEL CURSO: 1. Proveer un sólido entendimiento de la estructura y diseño de los sistemas operativos modernos. 2. Adquirir destrezas en el manejo, administración, configuración y desarrollo de los sistemas operativos. 3. Diseñar, construir, modificar y mantener aplicaciones inherentes a los sistemas operativos. 4. Conocer las políticas de seguridad y mecanismos de protección de los sistemas operativos. 5. Proveer un sólido entendimiento en los conceptos de sistemas operativos básicos y avanzados como procesos, hilos de procesos, sistemas distribuidos y multiprocesamiento. 6. Conocer las nuevas tendencias de diseño en los sistemas operativos: SMP, Clusters, tecnologías Middleware. CONTENIDO: TEMA 1: Organización de las computadoras y sus Sistemas Operativos en Sistemas Centralizados, Distribuidos y de Multiprocesadores. • Evolución de los Sistemas Operativos: Procesamiento Secuencial, Sistema en Lote sencillo, sistemas en lote multiprogramados, Sistemas de tiempo compartido, Sistemas Distribuidos. • Estructura y organización de los Sistemas Operativos Centralizados: Monolíticos, sistemas de capas, máquinas virtuales. • Estructura y organización de los Sistemas Operativos Multiprocesadores y Distribuidos: Modelo Cliente/Servidor, Microkernel. Sistemas Operativos – Semestre 2014-II 1 • Multiprocesamiento simétrico (SMP) o Sistemas Multiprocesadores: Arquitectura, consideraciones de diseño, organización. • Microkernel: Arquitectura, Organización, consideraciones de diseño. TEMA 2: Procesos, Hilos y otros descriptores de actividad en Sistemas Centralizados, Distribuidos y de Multiprocesadores. • Descripción y Control de Procesos: Estado del proceso, bloque de control de procesos. • Control de Procesos: Creación, intercambio, cambio de estado, terminación de procesos. • Hilos de control de Procesos (Threads) y procesos: estado de los hilos, hilos a nivel de usuario, hilos a nivel del núcleo. • Principios de la concurrencia. Exclusión mutua y sincronización: Soluciones de Software, soporte del hardware, semáforos, monitores, pase de mensajes, problemas clásicos de IPC. • Abrazo Mortal: Condiciones de Coffman, Grafos de asignación de recursos. Prevención del Abrazo Mortal atacando las condiciones de Coffman. • Evitar el Abrazo mortal: Trayectoria de recursos, estados seguro e inseguro, Algoritmo del banquero. • Detección y recuperación del abrazo mortal. Problema relacionado: Inanición. • Concurrencia, Sincronización y Exclusión mutua en Sistemas Multiprocesadores. TEMA 3: Administración del tiempo del procesador en Sistemas Centralizados, Distribuidos y de Multiprocesadores. • Tipos de planificación: Largo, medio y corto término. • Algoritmos de planificación: FIFO, Round Robin, Prioridad, SPN, SRT, HRRN, Colas de retroalimentación Multi nivel (Feedback queue).Análisis de rendimiento. • Planificación en multiprocesadores: clasificación, Granularidad: Grano grueso, grano medio, grano fino. • Planificación de procesos y planificación de hilos en SMP. TEMA 4: Administración del espacio de almacenamiento Principal en Sistemas Centralizados y multiprocesadores. • Requerimiento de la administración de la memoria: relocalización, protección, compartimiento, organización. • Técnicas de particionamiento de memoria: fijo, dinámico, paginación, segmentación. • Swapping: particiones variables, mapas de bits, listas enlazadas, sistemas compañeros (buddy systems), asignación de espacio de intercambio. • Memoria Virtual: Paginación, segmentación, segmentación paginada, soporte del hardware, hiperpaginación, • Algoritmos de reemplazo de páginas: FIFO, NRU, LRU, Segundo chance, LFU, MFU, Reloj. • Sistemas de paginación: Modelo del Conjunto de trabajo (Working Set), políticas de asignación global versus local, tamaño de la página. • Protección de memoria: Anillos de protección en MULTICS y en Intel. • Manejo de Memoria en sistemas Multiprocesadores. • Librerías: Carga y Enlace, carga absoluta, carga relocalizable, carga dinámica en tiempo de ejecución, el editor de enlace, enlace dinámico (DLLs y .so). TEMA 5: Entrada/Salida • Software de E/S: Manejadores de interrupciones, manejadores de dispositivos, software independiente del dispositivo, Software de E/S en el espacio del Usuario. Sistemas Operativos – Semestre 2014-II 2 • Manejo de Discos: Buffering de E/S (Único, doble, y circular). Políticas de planificación en discos (aleatoria, FIFO, LIFO, SSTF, SCAN, C-SCAN, N-pasos-SCAN, FSCAN), Manejo de errores en disco. • Terminales orientados a carácter: RS-232, Software de Entrada, Software de Salida. • Terminales de Redes: Arquitectura del Sistema X Windows. • Interfaces de usuario Gráfica: El teclado, ratón y pantalla. Software de Entrada. Software de Salida. • Relojes: Software de manejo del reloj del equipo. Temporizadores de software. TEMA 6: Administración del Sistema de Archivos en Sistemas Centralizados. • Operaciones: Crear, Abrir, cerrar, leer, escribir, borrar. • Nombramiento de Archivos. Organización de archivos: Secuencial, secuencial indexada, indexada, de acceso directo o hash. • Estructura de Directorios: un solo nivel, árbol, grafo acíclico, grafo cíclico. • Protección de archivos: Dominios de protección, Matriz de protección, listas de control de acceso (ACL), capacidades. TEMA 7: Casos de estudio de Sistemas Operativos y nuevas Tecnologías BIBLIOGRAFÍA • Doeppner, T. “Operating Systems in Depth”. 1era. Edición. 2010. • Downey, A. “The little Book of Semaphores”. 2da. Edición. 2008. • Silberschartz, A. et al. “Operating Systems Concepts”. 9na Edición. 2012. • Stallings, W. “Operating Systems: Internals and Design Principles”. 7ma Edición. 2011. • Tanenbaum A. “Modern Operating Systems”. 3era Edición. 2009. EVALUACIÓN: Evaluación Teoría Teoría Laboratorio Tipo 1er Examen Parcial a realizarse el Martes 15/01/2015 a las 7:00am. 2do Examen parcial a realizarse el Jueves 19/02/2015 a las 7:00am. Examen Final (3er Examen parcial) a realizarse en la fecha publicada por Control de Estudios en la semana del 23/03/15 al 27/03/15. Discusión de Papers Total Ocho laboratorios Proyecto/Prácticas 2 proyectos, tendrán un peso de 10% cada uno Porcentaje 20% 20% 20% 10% 70% El promedio de las notas tendrá un peso igual al 10% 20% Con base a los artículos 151 y 152 de la Ley de Universidades y al artículo 22 del Reglamento de Exámenes de la UCV, sólo tendrán derecho a presentar el Examen Final, y el Examen de Reparación aquellos estudiantes que hayan cumplido satisfactoriamente las actividades de Laboratorio y Práctica (Nota: NL ≥ 1 y NP ≥ 2).1 Sistemas Operativos – Semestre 2014-II 3 GRUPO DOCENTE CARGO NOMBRE E-MAIL SECCIÓN HORARIOS AULAS Profesor (C) Ana Morales [email protected] Coordinación Profesor Pedro Guzmán [email protected] C1 Mar. y Jue.7-9am 21-30 Profesor Miguel Astor [email protected] C2 Mar. y Jue.7-9am 01-30 Profesor Marcel Castro [email protected] Práctica C2 Viernes 7-9am 12 Preparador I Carlos Dominguéz [email protected] Práctica C1 Viernes 7-9am 08 Preparador I Diego Oliveros [email protected] Lab C1y C2 NA Sala Sur Lab Preparador I Josué Beccerra [email protected] Lab C1y C2 NA Sala Sur Lab CRITERIOS DE EVALUACIÓN: Nota 1: puntuación definitiva = NT + NP + NL >= 10 puntos (mayor o igual). Nota 2: no habrá exámenes de rezagados de práctica, teoría, o laboratorios, excepto en los casos de presentación de constancia médica u otro justificativo válido. En tal caso, el/la estudiante sólo podrá rezagar una sola evaluación (algún parcial teórico y NO puede rezagar quices o laboratorios). En caso de causa justificada y demostrada el examen rezagado se realizará el día del examen de reparación (fijada por Control de Estudios). En esta ocasión el/la estudiante responderá la o las preguntas asociadas al o los temas de la evaluación rezagada. De lo anterior se obtendrá la nota del parcial teórico rezagado. Adicionalmente, el/la estudiante voluntariamente podrá aprovechar la oportunidad para realizar su examen de reparación, para lo cual deberá responder todas las preguntas restantes. PUNTUALIDAD EN LOS LABORATORIOS Aquel estudiante que llegue 20 MINUTOS después del comienzo del laboratorio, NO PODRÁ realizarlo y perderá la nota de cualquier evaluación que se realice durante el mismo. SITIO WEB DE LA MATERIA El sitio Web de la materia se encuentra http://www.ciens.ucv.ve/portalasig/sistemas_operativos/2-2014 El sitio FTP de la materia se encuentra en la dirección: ftp://ftp.ciens.ucv.ve/sistemas_operativos Sistemas Operativos – Semestre 2014-II en la dirección: 4