4.36.2.3 Concurrencia (9 horas) [Habilidades b,1]

Referencias Bibliográficas: [Avi Silberschatz, 2012,Stallings, 2005,Tanenbaum, 2006,Tanenbaum, 2001,Anderson and Dahlin, 2014] Temas
  1. Diagramas de estado.
  2. Estructuras (lista preparada, bloques de control de procesos, y así sucesivamente)
  3. Dispatching y cambio de contexto.
  4. El papel de las interrupciones.
  5. Gestionar el acceso a los objetos del sistema operativo de forma atómica.
  6. La implementación de primitivas de sincronización.
  7. Problemas de multiprocesador (spin-locks, reentrada)
Objetivos de Aprendizaje
  1. Describir la necesidad de concurrencia en el marco de un sistema operativo [Familiarity]
  2. Demostrar los potenciales problemas de tiempo de ejecución derivados de la operación simultánea de muchas tareas diferentes [Usage]
  3. Resumir el rango de mecanismos que pueden ser usados a nivel del sistema operativo para realizar sistemas concurrentes y describir los beneficios de cada uno [Familiarity]
  4. Explicar los diferentes estados por los que una tarea debe pasar y las estructuras de datos necesarias para el manejo de varias tareas [Familiarity]
  5. Resumir las técnicas para lograr sicronización en un sistema operativo(por ejemplo, describir como implementar semáforos usando primitivas del sistema operativo.) [Familiarity]
  6. Describir las razones para usar interrupciones, dispatching, y cambio de contexto para soportar concurrencia en un sistema operativo [Familiarity]
  7. Crear diagramas de estado y transición para los problemas de dominios simples [Usage]

Generado por Ernesto Cuadros-Vargas , Sociedad Peruana de Computación-Peru, basado en el modelo de la Computing Curricula de IEEE-CS/ACM