Cursos
Introducción a Ciencias de la Computación I y II
Algoritmos
Arquitectura de computadoras
Excelente nivel de programación en Java
Este es un curso es sobre sistemas operativos. A grandes rasgos, el sistema operativo provee una interfaz familiar, conveniente y eficiente entre los programas de usuario y el hardware de la computadora en el cuál se ejecutan. Entre otras cosas, el sistema operativo es responsable de permitir y controlar los recursos compartidos (discos, redes, procesadores, etc.) ya que provee una serie de servicios requeridos por varios programas, tales como el servicio de archivos, iniciar o terminar procesos, acceso a la impresora, etc., por supuesto, debe proteger a un programa de otro.
Iniciamos el curso con un breve recorrido histórico sobre la evolución de los sistemas operativos en los últimos 50 años, para después explorar los componentes más usuales de un sistema operativo, componentes que pueden encontrarse en la noviembrería de los sistemas operativos modernos. Al igual que en muchas otras áreas de las ciencias de la computación, haremos especial hincapié en el intercambio entre eficiencia y funcionalidad y adentraremos en los aspectos fundamentales de un sistema operativo: manejo de procesos, manejo de memoria, sistema de archivos y protección y seguridad.
El curso de sistemas operativos cubre una gran cantidad de material y, por tanto, las fechas de inicio y entrega de cada tarea y proyecto no son negociables. NO hay exámenes y la calificación se forma así:
Tareas 50%
Proyectos 50%
Inicio | Entrega | Descripción |
13-agosto | 27-agosto | Introducción y estructuras del sistema operativo (1 y 2) |
27-agosto | 10-septiembre | Procesos e hilos de control (3 y 4) |
3-septiembre | 17-septiembre | Proyecto: Creando una interfaz de shell exposición de proyectos: 25-septiembre |
10-septiembre | 24-septiembre | CPU scheduling y sincronización de procesos (5 y 6) |
17-septiembre | 15-octubre | Proyecto: Algoritmo del banquero exposición de proyectos: 23-octubre |
24-septiembre | 8-octubre | Abrazos mortales (7) |
8-octubre | 22-octubre | Memoria principal y virtual (8 y 9) |
15-octubre | 12-noviembre | Proyecto: Diseñando un sistema de archivos exposición de proyectos: 20-noviembre |
22-octubre | 5-noviembre | Interfaz e implementación del sistema de archivos (10 y 11) |
5-noviembre | 19-noviembre | Estructura de almacenamiento masivo y sistemas E/S (12 y 13) |
19-noviembre | 3-diciembre | Protección y seguridad (14 y 15) |
Las tareas son individuales y los proyectos pueden ser elaborados en parejas.
50% de los proyectos, seleccionados al azar el día de la presentación, serán presentados por ambos miembros del equipo y deberán responder a las preguntas dirigidas a un miembro particular del equipo. Si uno de los miembros no demuestra total dominio de su proyecto durante la presentación/defensa, restaremos dos puntos de su calificación en el proyecto.
La pregunta del día: Todas las clases se hará una pregunta dirigida a un estudiante particular. Las preguntas involucran los temas vistos en clase, artículos o temas de interés relacionados. El estudiante seleccionado tiene 24 horas para investigar y redactar una respuesta, misma que enviará a la lista del grupo para beneficio del grupo y recibir comentarios. Contestar las preguntas es requisito en el curso, si el estudiante no está en el salón y le toca una pregunta, tiene una falta. A las tres faltas tu calificación final se convierte en 5.
Proyecto opcional:A petición de un alumno, se asignará un proyecto opcional relacionado con sistemas distribuidos. La fecha de inicio de este proyecto opcional será el 26 de noviembre y la fecha de entrega el 10 de diciembre. La calificación obtenida en este proyecto sustituirá la calificación más baja del alumno.