Filtrar

Cátedras del martes 7 y 9 de mayo 65

Luis Mateu B. 6 May6 de Mayo a las 19:40 hrs.2024-05-06 19:40:06
Cátedras

Martes 7


Temario: Implementación de un núcleo de Unix, espacio de direcciones virtuales, peers (contrapartes), relación entre Unix y nThreads, núcleo clásico y núcleo moderno, spin-locks

Presentación: pdf
Video de un semestre previo.

Jueves 9


Temario: Uso de spin-locks, implementación básica de spin-locks, el problema de la memoria caché con los spin-locks, protocolo MESI, implementación eficiente de spin-locks

Presentación: pdf
Video de un semestre previo

Auxiliar #6 Scheduling y Mensajes 118

Pablo Jaramillo V. 24 Abr24 de Abril a las 11:15 hrs.2024-04-24 11:15:24
auxiliares

Hola! Hoy a las 16:15 vamos a ir más bajo nivel acercándonos al sistema operativo, vamos a ver estrategias de scheduling, para que sirven, como reconocerlas, y también vamos a implementar una herramienta de sincronización utilizando las herramientas del sistema operativo.

Por secciones:
  • Sección 1 será online a cargo de José.
  • Sección 2 será en la G301 a cargo de Pablo.
  • Sección 3 será en la G111 a cargo de Vicente.

Como de costumbre el auxiliar de José quedará grabado. (y todos están invitados al que prefieran)

Material:

Grabación:

Cátedras del martes 23 y 25 de abril 111

Luis Mateu B. 22 Abr22 de Abril a las 11:27 hrs.2024-04-22 11:27:22
Cátedras

Martes 23

(sección 3: miércoles 24)

Temario: Implementación de secciones críticas, nSelf, implementación de FCFS para multicore

Presentación: pdf
Video de la clase presencial de este semestre

Jueves 25

(sección 3: viernes 26)

Temario: Implementación de timeouts, nSleepNanos, implementación del scheduling round robin, cómo despertar los cores, implementación de la rutina de atención del timer de tiempo virtual

Presentación: pdf
Video de la clase presencial de este semestre

Auxiliar #5: Patrón Productor/Consumidor y Timeouts 46

Pablo Jaramillo V. 17 Abr17 de Abril a las 10:16 hrs.2024-04-17 10:16:17
auxiliares

Buenos días! Hoy a las 16:15 vamos a aprender sobre nuevo un patrón de diseño para paralelizar trabajos de tamaño indeterminado y más opciones para sincronizar threads!

Por secciones:
  • Sección 1 será online a cargo de José.
  • Sección 2 será en la G301 a cargo de Pablo.
  • Sección 3 será en la G111 a cargo de Vicente.

Como de costumbre el auxiliar de José quedará grabado. (y todos están invitados al que prefieran)

Material:
Grabación:
Parte 1
Parte 2

Cátedras del martes 16 y jueves 18 de abril 60

Luis Mateu B. 15 Abr15 de Abril a las 18:38 hrs.2024-04-15 18:38:15
Cátedras

Martes 16

(sección 3: miércoles 17)

Temario: estrategias de scheduling, first come first served (FCFS), shortest job first (SJF), prioridades, round robin

Presentación: pdf
Video de un semestre previo

Jueves 18

(sección 3: viernes 19)

Temario: Implementación de threads, la pila, threads nivel de núcleo (pthreads) vs. threads nivel usuario (nThreads), compatibilidad de nThreads con pthreads, el cambio de contexto, implementación de un scheduler FCFS para single core, implementación de semáforos, implementación de secciones críticas, caso single core.

Presentación: pdf
Video de la clase presencial de un semestre previo

Cátedras del martes 9 y jueves 11 de abril 100

Luis Mateu B. 9 Abr9 de Abril a las 00:15 hrs.2024-04-09 00:15:09
Cátedras

Martes 9

Sección 1: no hay cátedra
Sección 2: no hay cátedra

Sección 3: La cátedra es el miércoles 10
Se recupera la cátedra no hecha el viernes 29 de marzo.
Temario: equivalencia entre semáforos y mutex/condiciones, mutex y condiciones implementados a partir de semáforos, 3 patrones de paralelización con threads, dividir en subintervalos, divide y conquista en paralelo y productor/consumidor, búsqueda de un factor con patrón productor/consumidor, paralelismo del tipo AND y del tipo OR

Presentación: pdf

Video de un semestre previo

Jueves 11

(viernes 12 para la sección 3)

Comenzamos con la segunda unidad: administración de procesos

Temario: principio de virtualización, procesos livianos vs. procesos pesados, preemptiveness, scheduling de procesos, interrupciones y timer, estados de un proceso, descriptor de proceso, ráfagas de CPU.

Presentación: pdf

Video de un semestre previo

Preparación para el control del miércoles 10 de abril 158

Luis Mateu B. 4 Abr4 de Abril a las 19:06 hrs.2024-04-04 19:06:04
Información

El control es el miércoles 10 (la próxima semana) en el horario extendido de la clase auxiliar (16:00 a 18:00).  Es muy importante haber resuelto las 2 primeras tareas pasando exitosamente el test de prueba.  Si recibieron mucha ayuda en una tarea, consideren volver a resolver esa tarea sin ayuda esta vez, partiendo desde cero.

Para preparar el control resuelvan el control 1 del semestre pasado.

Recuerden que todos los controles previos están en esta página.  Ejemplos de soluciones de este tipo de problemas son los que se han visto en las clases auxiliares.

El control es con apuntes personalmente manuscritos en papel, pero pueden llevar apuntes impresos tomados en una tablet.  No se acepta otro tipo de material impreso ni fotocopias de apuntes.  La idea es que se aprende mucho al escribir en papel.

Entra hasta semáforos, es decir la clase del martes pasado.

Auxiliar #4 Semáforos 52

José Astorga Tobar 3 Abr3 de Abril a las 14:58 hrs.2024-04-03 14:58:03
auxiliares

La auxiliar #4 se desarrollará de manera presencial y online hoy a las 16:15, veremos la herramienta de sincronización Semáforos:

  • Sección 1 será online a cargo de José.
  • Sección 2 será en la G301 a cargo de Pablo.
  • Sección 3 será en la G111 a cargo de Vicente.

codigos.zip (5.8 kb)
Auxiliar_4_Semaforos.pdf (517 kb)
Video 03/04/2024

Saludos!

Cátedras del martes 2 y jueves 4 82

Luis Mateu B. 1 Abr1 de Abril a las 19:26 hrs.2024-04-01 19:26:01
Cátedras

Martes 2

(viernes 5 para la sección 3)

Temario: semáforos, cena de filósofos resuelta con semáforos para garantizar la exclusión mutua, productor/consumidor resuelto con semáforos, productor/consumidor resuelto con patrón request usando semáforos en vez de mutex/condiciones, lectores/escritores resuelto con patrón request/semáforos

Presentación: pdf
Video de un semestre previo.

Errata: en el video en la solución de productor/consumidor con patrón request y semáforos las funciones del buffer se llaman put y get, pero también se llaman así las funciones put y get para agregar y extraer en la cola.  Ese es el error.  El problema se resolvió en el nuevo pdf, haciendo que las funciones del buffer se llamen putBuf y getBuf.

Jueves 4

(miércoles 10 para la sección 3)

Temario: equivalencia entre semáforos y mutex/condiciones, mutex y condiciones implementados a partir de semáforos, 3 patrones de paralelización con threads, dividir en subintervalos, divide y conquista en paralelo y productor/consumidor, búsqueda de un factor con patrón productor/consumidor, paralelismo del tipo AND y del tipo OR

Presentación: pdf

Video de un semestre previo

Auxiliar #3: Patrón Request 135

Pablo Jaramillo V. 27 Mar27 de Marzo a las 13:05 hrs.2024-03-27 13:05:27
auxiliares

Hola!

Hoy a las 16:15 vamos a tener una de las clases más importantes del semestre donde vamos a aprender sobre un patrón de diseño esencial para programar en paralelo y mantener un orden coherente. Por secciones:

  • Sección 1 será online a cargo de José.
  • Sección 2 será en la G301 a cargo de Pablo.
  • Sección 3 será en la G111 a cargo de Vicente.

El auxiliar de José quedará grabado. Como siempre están todos invitados al auxiliar que puedan/prefieran ir, pero preferentemente el suyo ;)

Material(es)

Les reitero que vayan! Les va a servir mucho de aquí al fin del semestre!