Sistemas operativos

2011

Este es el sitio web de la unidad de apendizaje de sistemas operativos impartida por la Dra. Elisa Schaeffer en la FIME de la UANL en el semestre agosto-diciembre del 2011 para estudiantes de quinto semestre de ITS e IAS o a M4 (sala 4211) o a M6 (sala 4204) lu/mi/vi. Ambos grupos se imparten en inglés.

Es importante el haber cursado exitosamente las unidades referentes a programación, algoritmos y estructuras de datos. Se recomienda que los ITS hayan llevado programación orientada a objetos y arquitectura de computadoras el semestre anterior, mientras los IAS los llevan de forma simultánea.

Propósito

En el desarrollo de esta unidad de aprendizaje se contribuye al entendimiento de las técnicas que permiten la función eficiente e interactiva de sistemas computacionales.

Producto integrador

Se llevará a cabo el proyecto NachOS (Wikipedia), siguiendo el modelo de la Universidad de Berkeley Utilizamos la versión 3.4 o posterior en el lenguaje C++ o la 5.0j en Java.

Temario

Las competencias particulares son (1) diseñar e implementar operación multitarea en sistemas operativos; (2) diseñar e implementar sistemas de almacenaje de información en sistemas operativos; y (3) diseñar e implementar sistemas de comunicación y mecanismos de seguridad en sistemas operativos.

Las clases se enfocan en los fundamentos teóricos de cada tema y las fases del proyecto a los detalles prácticos del mismo.

En este grupo, las prácticas de programación se llevan a cabo en el sistema operativo Linux en C++ o Java, según la elección de cada equipo. No se permite cambiar de lenguaje durante el curso. Si el estudiante no cuenta con laptop a la cual instalar Linux, se recomienda traer una memoria USB de 4 GB a la primera clase para proporcionarle el ambiente de trabajo en ella también fuera de clase.

Unidades temáticas

  1. Multitarea: control de concurrencia
  2. Almacenaje: memoria y archivos
  3. Redes y seguridad: sistemas distribuidos

Programa semanal

No habrá prórrogas en ningún momento. La ausencia de algunos miembros del equipo no justifica posponer la presentación.

  1. Mecánica del curso; Introducción al tema
  2. Unidad 1: Procesos e hilos; sincronización
  3. Unidad 1: Semáforos y monitores; calendarización y deadlock
  4. Primera presentación teórica
  5. Primera presentación práctica
  6. Unidad 2: Manejo de memoria
  7. Unidad 2: Asignación y reemplazo de páginas
  8. Examen de medio curso
  9. Unidad 2: Sistemas de archivos
  10. Segunda presentación teórica
  11. Segunda presentación práctica
  12. Unidad 3: Redes y sistemas distribuídos
  13. Unidad 3: Seguridad
  14. Tercera presentación teórica
  15. Tercera presentación práctica
  16. Examen ordinario

Fases del proyecto

Blogs y calificaciones

Aquellos oyentes que no completan 70 están marcados con N/A (no aplica) en calificación final.

Participante Presentación Exámenes Extra por participar Total
1T 1P 2T 2P 3T 3P EM EO Clase Piazza
David S. 712 7+1NP+0 10+16+6 5+56+6 2+1+10+0+0 76
Raúl 712 7+1NP+0 10+16+6 0+0
5+5
4+4
6+4
0+0+00+0+0 1ª: 58
2ª: 70
Víctor 712+0 7+1NP 10+16+6 5+510+10 0+0+11+0+0 82
Eduardo 68+1 8+26+2 8+713+2 5+511+11 0+0+12+1+0 99
Jonathan 68 8+26+1 8+713+2 6+611+11 1+0+00+1+0 97
Obed 68+1 8+26+1 8+713+2 3+39+9 0+0+00+0+0 86
Ramón 79 7+24+3 10+57+2 6+613+13 0+0+20+0+0 96
Saúl 79+2 7+24+2 10+57+2 5+54+4 1+0+12+1+0 80
David B. 98+1 8+3NP/3+0 10+3NP+2 6+68+8 2+1+11+0+0 80
Diana 98+1 8+3NP/3+1 10+3NP+2 3+3
8+8
4+4
6+6
0+0+10+0+0 1ª: 63
2ª: 77
Everardo 9+38+6 8+3NP/3+6 10+3NP+2 7+68+8 3+0+33+1+0 100
Marco 98 8+3NP/3+0 10+3NP+2 3+3
7+4
4+4
8+1
0+0+00+0+0 1ª: 60
2ª: 66
Erick 6+16+1 8+24+0 10+612 8+85+5 0+0+00+1+0 83
Esteban 66 8+24+0 10+612 4+49+9 1+1+20+0+0 84
Carlos 66 8+24+1 10+612 1+1
6+6
4+4
5+5
2+0+00+0+0 1ª: 67
2ª: 79
Óscar 75/NP NPNP+0 NPNP 3+3NP 2+1+00+0+0 21/NP
Daniel 75/NP 4+2NP/2+0 10+36+2 3+2
5+5
8+8
(6+7)
0+0+02+1+0 1ª: 65
2ª: 70
Jorge 6+515+2 7+24+1 10+36+2 7+7NP 2+3+11+1+0 85
José 6+115 7+24+0 NPNP NPNP 0+0+00+0+0 N/A
Ricardo 615 7+24+0 10+36+2 2+25+5 0+0+00+0+0 N/A
Adán 814 5+26+0 10+615+5 3+26+6 1+0+00+0+0 89
Emmanuel 814 5+26+1 10+615+5 7+710+10 1+0+02+0+0 100+9
Maximiliano 814 5+26+0 10+615+5 5+NP7+7 0+0+00+1+0 91
Cecilia 9+214+3 9+28+2 10+315+3 8+86+6 0+0+01+0+0 100+9
Juan Carlos 9+114+5 9+28+1 10+315+3 7+76+6 2+1+01+0+1 100+11
Roberto 914 9+28+1 10+315+3 7+79+9 1+0+00+0+0 100+7
Alejandro 811 5+25+0 8+15+6 4+49+9 0+0+00+0+0 77
Gemma 811 5+25+0 8+15+6 3+39+9 0+0+00+0+0 75
Isaías 811+2 5+35+1 8+15+6 7+711+11 1+2+03+1+1 99
Abraham 8NP/4 4+33+0 10+614+4 4+36+6 0+0+00+0+0 75
Carmen 8NP/4 4+33+1 10+614+4 6+67+7 0+0+00+0+0 83
Gabriela 8NP/4 4+33+0 10+614+4 6+67+7 1+3+20+0+0 88
Jesús 5NP/NP NPNP+0 NPNP 4+4NP 0+1+00+0+0 N/A
Leonardo 5NP/NP NPNP+0 NPNP NPNP 0+0+00+0+0 N/A
Máximo 10 15 10 15 10 15 10 15 3+3+3 3+3+3 100

Bibliografía básica

El alumno necesita contar con un libro de texto sobre sistemas operativos; se recomiendan los textos clásicos de Tanenbaum y Stallings, de preferencia en inglés, pero también se puede con las traducciones si su nivel de inglés da pena.


Las diapositivas se basan en las notas de Martin C. Rinard.

Equipos inscritos

Busca la clase en Piazza.com como "Operating Systems"


Actualizado el 19 de diciembre del 2011.
URL: http://elisa.dyndns-web.com/~elisa/teaching/comp/os/2011