Cada habilidad que el diagnóstico puede evaluar, agrupada como en el mapa. Abre cualquier tema para empezar una lección.
Fundamentos
Qué hace un sistema operativo: El SO como la capa que convierte hardware crudo y compartido en una abstracción limpia y protegida para los programas.
Llamadas al sistema y modo núcleo: La puerta controlada, una trampa hacia el modo núcleo, que un programa usa para pedirle al SO que haga algo en su nombre.
Procesos e hilos
La abstracción de proceso: La ilusión aislada de un programa en ejecución de tener su propia CPU y memoria, rastreada por el SO mediante un bloque de control de proceso.
Bloqueos y exclusión mutua: Un bloqueo que permite que solo un hilo a la vez ejecute una sección crítica.
Semáforos y variables de condición: Bloqueos con conteo y primitivas de espera-hasta-señal, herramientas más flexibles que un mutex simple.
Problemas clásicos de sincronización: Acertijos con nombre, productor-consumidor, lectores-escritores, la cena de los filósofos, que ponen a prueba un diseño de sincronización.
Interbloqueo: Un ciclo de hilos esperando cada uno un bloqueo que tiene otro, de modo que ninguno puede avanzar.
Planificación avanzada y del mundo real: Políticas de planificación, colas de prioridad, MLFQ, CFS, que se adaptan a cargas de trabajo reales en lugar de asumir tareas uniformes.
Virtualización de memoria
Espacios de direcciones: La vista privada de memoria de cada proceso, comenzando en cero, que el SO mapea a la RAM física real.
Paginación: Dividir la memoria en páginas de tamaño fijo para que el espacio de direcciones de un proceso no necesite estar en un solo bloque contiguo.
TLB y traducción de direcciones rápida: Una pequeña caché de hardware de traducciones de direcciones recientes, para que la paginación no cueste un acceso a memoria en cada acceso.
Tablas de páginas multinivel e invertidas: Tablas de páginas multinivel e invertidas, formas de evitar que la propia estructura de traducción consuma demasiada memoria.
Memoria virtual y reemplazo de páginas: Permitir que el uso total de memoria exceda la RAM física intercambiando páginas al disco, y decidir qué página desalojar.
Almacenamiento y E/S
Dispositivos de E/S e interrupciones: Cómo se comunica el SO con los dispositivos, mediante sondeo, interrupciones o DMA, sin que la CPU supervise cada transferencia.
Discos duros y SSD: Cómo los discos giratorios y el almacenamiento flash realmente guardan y recuperan datos, y por qué sus perfiles de rendimiento difieren.
Consistencia ante fallos y journaling: Mantener coherentes las estructuras en disco del sistema de archivos después de un fallo, mediante journaling o comprobación tipo fsck.
Redundancia y RAID: Distribuir o duplicar datos entre varios discos para que el fallo de una unidad no pierda datos.
Seguridad
Fundamentos de protección y seguridad: Los niveles de privilegio y verificaciones de acceso que evitan que un proceso lea o corrompa la memoria de otro.