Este curso, único en el mundo, pretende introducir al alumno en el mundo del OsDev, es decir, la programación de sistemas operativos. Mediante un proyecto continuado en el que se irá construyendo poco a poco un núcleo completo.
Programa:
- martes, 12 de marzo
- 16:00-18:00 h. 1. Introducción, que es un sistema operativo, cronología del proyecto.
- jueves, 14 de marzo
- 16:00-18:00 h. 2. El cargador de arranque: ¡Hola Mundo!
- martes, 19 de marzo
- 16:00-18:00 h. 3. Manejo de interrupciones, PIC 8259 y temporizador PIT
- jueves, 21 de marzo
- 16:00-18:00 h. 1. Gestor de memoria física.
- martes, 26 de marzo
- 16:00-18:00 h. 2. Introducción a la memoria virtual.
- jueves, 28 de marzo
- 16:00-18:00 h. 3. Paginación y heap.
- martes, 2 de abril
- 16:00-18:00 h. 4. Gestión de la periferia I: Dispositivos simples: Teclado y ratón
- jueves, 4 de abril
- 16:00-18:00 h. 5. Gestión de la periferia II: Controlador abstracto de dispositivos.
- martes, 9 de abril
- 16:00-18:00 h. 6. Gestión de la periferia III: Dispositivos intermedios: Almacenamiento AHCI
- jueves, 11 de abril
- 16:00-18:00 h. 7. Sistema de ficheros EXT2 y sistema de ficheros virtual.
- martes, 16 de abril
- 16:00-18:00 h. 8. Procesos I: Estructuras de control de proceso.
- jueves, 18 de abril
- 16:00-18:00 h. 9. Procesos II: Carga de ELF estáticos.
- martes, 23 de abril
- 16:00-18:00 h. 10. Procesos III: Cambio de contexto.
- jueves, 25 de abril
- 16:00-18:00 h. 11. Procesos IV: Llamadas a sistema.
- martes, 30 de abril
- 16:00-18:00 h. 12. Gestión de la periferia IV: Dispositivos avanzados: Tarjeta de red, APIC, MSI y MSI-X
- jueves, 9 de mayo
- 16:00-18:00 h. 13. Exposición de proyectos colectiva. conclusiones y trabajo futuro.