UNIVERSIDAD AUTÓNOMA DE YUCATÁN FACULTAD DE MATEMÁTICAS MISIÓN Formar profesionales altamente capacitados, desarrollar investigación y realizar actividades de extensión, en Matemáticas y Computación, así como en sus diversas aplicaciones. SISTEMAS OPERATIVOS LICENCIATURA EN CIENCIAS DE LA COMPUTACIÓN QUINTO SEMESTRE LICENCIATURA EN INGENIERÍA DE SOFTWARE CUARTO SEMESTRE Agosto 2006 Enero 2007
LICENCIATURA EN CIENCIAS DE LA COMPUTACIÓN Objetivos: Formar profesionales calificados en el área de las ciencias de la computación para desarrollar tecnología computacional, realizar actividades de investigación, y utilizar de manera óptima sus diversas aplicaciones, con apego a la ética profesional y el servicio a la sociedad. Objetivos específicos: a) Desarrollar modelos teóricos y prácticos utilizando las ciencias matemáticas y computacionales para implementar aplicaciones novedosas y eficientes. b) Analizar, diseñar, desarrollar e implantar software de base y de aplicaciones, utilizando o creando metodologías y ambientes computacionales, con base en la estructura, operación y necesidades de información de las organizaciones y las industrias a las que pertenecen. LICENCIATURA EN INGENIERÍA DE SOFTWARE Que el egresado: 1. Explique y aplique un proceso de desarrollo de software sistémico acorde a la magnitud y complejidad de proyectos de aplicación, sean o no éstos nuevos desarrollos, tomando en cuenta la evolución y el cambio de los mismos. 2. Describa y aplique las herramientas necesarias para la especificación, diseño, verificación y validación de sistemas de software. 3. Se desempeñe en al menos un área de concentración, trabaje y se comunique de forma profesional en equipos interdisciplinarios. 4. Aplique el conocimiento y las habilidades para mejorar el proceso de desarrollo de software. 5. Contribuya al avance de la Ingeniería de Software con un acervo de conocimientos tanto teóricos como prácticos. DURACIÓN: 72 horas. FECHA: 08/Diciembre/2005. SISTEMAS OPERATIVOS AUTORES: Ing. Julio César Díaz Mendoza, M. en C. Francisco Moo Mena, M. en C. Jorge Gómez Montalvo. OBJETIVO GENERAL: Analizar los algoritmos empleados por los sistemas operativos para administrar el procesador, administrar y organizar la memoria, el sistema de archivos de una computadora; así como conocer las técnicas de administración de las operaciones de entrada/salida. Con estos conocimientos el alumno podrá comprender el funcionamiento de los sistemas operativos de actualidad. CRITERIOS DE EVALUACIÓN: 2 exámenes parciales 70% Presentación grupal 10% Proyecto 20% 2
PRESENTACIÓN GRUPAL. La exposición grupal consiste en un análisis de un sistema operativo multitarea (multiproceso) de actualidad, obteniendo información de publicaciones recientes, pudiendo ser, libros de texto, revistas o fuentes confiables en Internet. Este trabajo debe incluir un artículo con comentarios originales de los participantes (escrito en un procesador de textos) y debe entregarse dentro de un folder y en la fecha establecida. Los aspectos a calificar son: originalidad, claridad y organización de los temas, y dominio de los mismos. PROYECTO FINAL Opción 1: Implementar en un sistema operativo multitarea algún algoritmo de los siguientes temas: Sincronización de procesos Técnicas para prevenir, evitar o detectar interbloqueos. El programa debe mostrar en forma gráfica una simulación de la actividad de los procesos. Opción 2: Implementar un simulador gráfico que emplee algún algoritmo de planificación de procesos en conjunto con algún algoritmo para administración de memoria. Los aspectos a calificar son: originalidad, organización de la interfaz e implementación adecuada de los algoritmos seleccionados. EXAMEN ORDINARIO: Sólo tendrán derecho a examen ordinario los alumnos que hayan obtenido calificaciones aprobatorias en cada uno de los exámenes parciales (60% del puntaje total). La calificación mínima para exentar es 85. TEMAS PRINCIPALES Y DURACIÓN: TEMAS HORAS 1. INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS 10 2. ADMINISTRACIÓN DEL PROCESADOR 30 3. ADMINISTRACIÓN DE LA MEMORIA 20 4.ADMINISTRACIÓN DE LA ENTRADA/SALIDA 10 5. ADMINISTRACIÓN DE LA INFORMACIÓN 20 (SISTEMA DE ARCHIVOS) TOTAL 90 CONTENIDO 1. INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS 3
Explicar la terminología y conceptos básicos de los Sistemas Operativos. 1.1 Evolución histórica del desarrollo de los Sistemas Operativos. 1.2 Conceptos básicos y terminología de Sistemas Operativos. 1.3 Características de un sistema operativo. 1.4 Recursos con los que trabaja un sistema operativo. 1.5 Tipos de Sistemas Operativos. 1.6 Estructura del Sistema Operativo. 2. ADMINISTRACIÓN DEL PROCESADOR Explicar la terminología y las características de la administración del procesador de una computadora, así como las características de la programación y comunicación de procesos. 2.1 Concepto de proceso. 2.2 Estados y transiciones de estado. 2.3 El bloque de control de procesos. 2.4 Procesos cooperativos 2.5 Hilos. 2.6 Planificación de la CPU. 2.6.1 Tipos de planificadores. 2.6.2 Algoritmos de planificación. 2.9 Comunicación y sincronización de los procesos. 2.9.1 Condiciones de concurso. 2.9.2 Secciones críticas. Exclusión mutua. 2.9.3 Semáforos. 2.9.4 Transmisión de mensajes. 2.9.5 Monitores. 2.9.6 Regiones críticas. 2.10 Bloqueo mutuo (Estancamientos o interbloqueo). 3. ADMINISTRACIÓN DE LA MEMORIA Explicar la terminología y las características de las técnicas de la administración de la memoria en una computadora. 3.1 Organización de memoria de los primeros sistemas operativos. 3.2 Multiprogramación. 3.3 Memoria real. 3.3.1 Memoria particionada. 3.3.2 Paginación simple. 3.3.3 Segmentación. 3.4 Memoria virtual. 3.4.1 Paginación por demanda. 3.4.2 Algoritmos de sustitución de páginas. 3.4.3 Segmentación. 4. ADMINISTRACIÓN DE LA ENTRADA/SALIDA Explicar la terminología y las características de la programación de dispositivos de entrada/salida. 4.1 El problema de la entrada/salida. 4.2 Principios del hardware de entrada/salida. 4.3 Principios del software de entrada/salida. 4
4.4 Entrada/salida controlada por programa. 4.5 Entrada/salida controlada por interrupciones. 4.6 Dispositivos de entrada/salida. 4.7 Relojes y puertos. 5. ADMINISTRACIÓN DE LA INFORMACIÓN (SISTEMA DE ARCHIVOS) Explicar la terminología y las características de la administración de la información. 5.1 El sistema de archivos. 5.2 Diseño de un sistema de archivos. 5.3 Estructura de un sistema de archivos. 5.4 Seguridad. 5.5 Mecanismos de protección. BIBLIOGRAFÍA RECOMENDADA: 1. Tanenbaum, Andrew. SISTEMAS OPERATIVOS. DISEÑO E IMPLEMENTACIÓN. Prentice Hall Software Series. 2. Tanenbaum, Andrew. SISTEMAS OPERATIVOS MODERNOS. Prentice Hall Hispanoamericana, S. A. 1993. 3. Silbetchatz, Abraham. OPERATING SYSTEMS CONCEPTS. Wiley. Sexta Edición. 2003. 4. Deitel, H. M. SISTEMAS OPERATIVOS. 2a. Edición. Addison Wesley. 5. Madnick, Donovan. OPERATING SYSTEMS. Mc Graw-Hill. 6. Milenkovic, Milan. SISTEMAS OPERATIVOS. CONCEPTOS Y DISEÑO. Mc Graw- Hill. 7. Peterson, James and Silberschatz, Abraham. OPERATING SYSTEMS CONCEPTS. Addison Wesley Iberoamericana.1994. 8. Stallings, William. SISTEMAS OPERATIVOS. Prentice Hall, 1997. 9. Tanenbaum, Andrew. SISTEMAS OPERATIVOS DISTRIBUIDOS. Prentice Hall Hispanoamericana, S.A. 1996. Perfil Profesiográfico: Licenciado en Ciencias de la Computación o carrera afín, o Posgrado en Computación. Elaboración: Ing. Julio César Díaz Mendoza, M. en C. Francisco Moo Mena. Modificación: M. en C. Jorge Gómez Montalvo. Fecha de modificación: Diciembre de 2005. 5