IIC 2332 -- Sistemas Operativos
Programa de Curso

Profesor: Fritz Knabe, knabe@ing.puc.cl, x4952, DCC 8
Semestre: 1er de 1996
Horario: Lunes y Miércoles, 11:30 - 12:50, Sala A6
Ayudantía: Martes, 15:00 - 16:20, Sala B11

Objetivo

Entregar a los alumnos los conceptos básicos de sistemas operativos. Temas incluyen los conceptos de procesos e hilos (threads), concurrencia y deadlocks, administración de memoria y archivos, y redes de computadores.

Texto

Operating System Concepts, Fourth Edition, por Silberschatz y Galvin. Habrá copias en reserva. Otras lecturas de artículos seleccionados.

Proyecto

Ningún curso de sistemas operativos sería completo sin tareas de programación. La complejidad de los sistemas operativos implica que hay que construir parte de uno para comprender los problemas y sus soluciones.

En este curso vamos a usar Nachos, un sistema operativo de instrucción que corre bajo Unix. Nachos es suficientemente sencillo para entender durante un semestre, y tú vas a construir componentes que faltan del sistema básico. Voy a hacer también las tareas junto con ustedes.

Debiera encontrar un compañero de trabajo para el semestre e infórmame dos semanas antes del plazo de la primera tarea. Tienes permiso para trabajar solo, pero no lo recomiendo.

Para discutir las tareas y otros temas habrá un newsgroup, puc.cursos.iic2332.

Evaluación

Habrá cinco tareas de programación, una interrogación, y un examen. Las tareas son 60% de la nota final, la interrogación 15%, y el examen 25%. Puedo aumentar (pero no disminuir) tu nota final con criterios subjetivos (depende de, por ejemplo, participación en clase).

Ayuda

Como profesor, mi primera responsabilidad es la atención a mis alumnos. Si tienes preguntas o problemas, visítame. Voy a tener también un horario de oficina (por fijar). Correo electrónico es otra posibilidad.

Clase

Cuando estás en clase, tienes el derecho a preguntarme. Y yo tengo el derecho a preguntarte. Seguramente voy a preguntarte alguna vez. Habrá también de vez en cuando interrogaciones cortas (cinco minutos) sin notas. El objetivo de esas es que puedo evaluar el conocimiento de la clase.

Apuntes para las clases estarán disponible a través de WWW.

Tareas tardes

Tareas que son entregadas tarde son un asunto difícil, ya que la asignación de las notas consistentes es más difícil. Empero hay veces cuando no es posible terminar una tarea antes del plazo. En tales casos, hable conmigo antes del plazo. Soy relativamente liberal con prórrogas.

Idioma

Ya que estoy aprendiendo castellano todavía, es muy posible que tuvieras problemas con entenderme (y vice versa). Si ese es el caso, por favor, dígame. También, vas a ayudarme si hablas l-e-n-t-a-m-e-n-t-e. Es posible que necesite que repitas tu pregunta o respuesta; normalmente no necesito una clarificación sino una repetición más lenta.

Calendario tentativo

Introducción
Semana de 11 de marzo
OSC Ch. 1, 2.1, 3.1-3.4
Procesos
Semana de 18 de marzo
OSC Ch. 4.1-4.5
Sincronización
Semana de 25 de marzo
OSC Ch. 6.1-6.8
Deadlock
Semana de 01 de abril
OSC Ch. 7
Planificación de CPU
Semana de 08 de abril
OSC Ch. 5
Administración de memoria
Semana de 15 de abril
Semana de 22 de abril
OSC Ch. 2.2-2.7, Ch. 8
Memoria virtual
Media semana de 29 de abril
Semana de 06 de mayo
Interrogación: 06 de mayo
OSC Ch. 9
Sistemas de archivos
Semana de 13 de mayo
OSC Ch. 10, 11
Redes de computadores y protocolos
Media semana de 20 de mayo
Semana de 27 de mayo
OSC Ch. 15, 16.3, 16.4
Sistemas de archivos distribuidos
Semana de 03 de junio
OSC Ch. 17
Estructura y diseño de sistemas operativos
Semana de 10 de junio
OSC Ch. 3.5-3.8, Ch. 19, 20
Protección
Semana de 17 de junio
OSC Ch. 13
Resumen
Semana de 24 de junio
Examen
03 de julio, 8:30

Last edited May 8, 1996, by knabe@ing.puc.cl