Ir al contenido

Mapa del examen

Revisé los 6 exámenes de for_partial/. La estructura es muy estable: 1 pregunta de conceptos + 1 de demostrar un algoritmo de mutex + 1–2 de semáforos/monitores con código C + (desde 2025) 1 de memoria.

Tipo de pregunta202120222024-I2024-II2025-22026-1Practica en
Contar «Hello!» con fork / exec / threads✔✔fork
Alternativas conceptuales (threads, fork+mutex, Mesa, false sharing, UB)✔threads, atómicas
Demostrar mutex / deadlock / starvation de un algoritmo✔ Peterson✔ Bakery✔ Flaky✔ Lamport lex.✔ Hymanalgoritmos, bakery
Semáforos: analizar deadlock y corregir✔ recurso de 3✔ montaña rusa✔ stock, aretes✔ ramen✔ semWait/semSignal✔ prod-cons, Morrissemáforos
Implementar semáforos con TAS / binarios✔✔implementación
Monitor en C con pthreads✔ cine✔ baño unisexproblemas
Completar código pthreads + race de argumentos✔threads
Memoria: paginación / multinivel✔✔paginación
Conceptos: atómicas, spinlocks, memory layout, requisitos de mutex, deadlock✔✔✔formulario
Conceptos: microkernel vs monolítico✔formulario

Los profesores subieron tres presentaciones que no aparecen en los resúmenes de lab 1 ni lab2:

  • 06 · Memory (Stallings cap. 7): particiones, buddy, placement, fragmentación, MMU, segmentación → particiones, segmentación.
  • 06 · About registers (Herlihy & Shavit): SRSW/MRSW/MRMW y safe/regular/atomic → registros.
  • 09 · Monitors and Reader-Writer: Hoare vs Mesa y las 3 soluciones de lectores–escritores → monitores, lectores–escritores.

La paginación no está en esas diapositivas («more about pages in next session»), pero cayó en el E1 2022 y en el 2025-2, así que también está cubierta.

  1. Fundamentos (Stallings cap. 1–2): hardware (interrupciones, jerarquía de memoria, DMA) y sistema operativo (evolución, modos, microkernel).
  2. Procesos (cap. 3–4): estados y PCB, syscalls y señales, fork/exec, threads y Amdahl y el recorrido por Selfie.
  3. Exclusión mutua (cap. 5): requisitos → algoritmos de 2 procesos (verificados con BFS y starvation con SCC) → demostraciones formales → N procesos → Bakery.
  4. Hardware y POSIX: instrucciones atómicas (TAS, CAS, fences en x86), mutex POSIX, futex y semáforos POSIX y registros de Herlihy.
  5. Semáforos y deadlock (cap. 5–6): básicos, productor–consumidor, clásicos y deadlock y banquero.
  6. Monitores y mensajes: monitores, lectores–escritores, problemas en C y paso de mensajes.
  7. Memoria (cap. 7–8): particiones y buddy, segmentación y paginación y TLB.
  8. Práctica: los exámenes previos, los ejercicios oficiales y las flashcards y el simulacro.
  1. Describe qué representa cada variable (flag = interés, turn = quién cede, label = número de turno…).
  2. Exclusión mutua: supón que P0 y P1 están ambos en la SC y llega a una contradicción, o da una traza numerada que termine con ambos dentro.
  3. Deadlock-free: si ambos quieren entrar, ¿alguno siempre progresa? Contraejemplo = traza donde ambos giran para siempre.
  4. Starvation-free: ¿hay un límite de veces que el otro puede adelantarte? Contraejemplo = ciclo que se repite indefinidamente.

Fuente ·for_partial/E1_OS_2021_2022_Solver.pdf · for_partial/E1_OS_2024_I__Respuestas_.pdf · for_partial/E1_OS_2024_II__Solucionario_.pdf · for_partial/E1_OS_20252.pdf · for_partial/Evaluaciones_OS_20261 (1).pdf · for_partial/pending_themes/