
Errata en el enunciado de la tarea 6 sobre spinlocks 43
Luis Mateu B. 6 Jun 202406/06/24 a las 17:22 hrs.2024-06-06 17:22:06 Información
Errata
Hice este cambio en la metodología:
Decía:
Use una variable global para mantener el estado de la oferta de un vendedor: en espera, adjudicado o rechazado. Recuerde que solo puede haber un vendedor en espera y por lo tanto no necesita una cola.
Ahora dice:
Use una variable local VL para mantener el estado de la oferta de un vendedor: en espera, adjudicado o rechazado. Además use un puntero global que guarde la dirección de VL, para que el próximo vendedor o el comprador pueda cambiar el estado de VL. Recuerde que solo puede haber un vendedor en espera y por lo tanto no necesita una cola.
Es difícil resolver el problema con un estado global, porque cuando un thread A vende a un precio más barato que el thread B, A debe colocar esa variable global como en espera, pero al mismo tiempo tiene que colocarla en rechazado para avisarle a B que fracasó su venta. El problema no se presenta con una variable local, porque A y B tendrán estados independientes.
Hice este cambio en la metodología:
Decía:
Use una variable global para mantener el estado de la oferta de un vendedor: en espera, adjudicado o rechazado. Recuerde que solo puede haber un vendedor en espera y por lo tanto no necesita una cola.
Ahora dice:
Use una variable local VL para mantener el estado de la oferta de un vendedor: en espera, adjudicado o rechazado. Además use un puntero global que guarde la dirección de VL, para que el próximo vendedor o el comprador pueda cambiar el estado de VL. Recuerde que solo puede haber un vendedor en espera y por lo tanto no necesita una cola.
Es difícil resolver el problema con un estado global, porque cuando un thread A vende a un precio más barato que el thread B, A debe colocar esa variable global como en espera, pero al mismo tiempo tiene que colocarla en rechazado para avisarle a B que fracasó su venta. El problema no se presenta con una variable local, porque A y B tendrán estados independientes.
Auxiliar #10: Administración de Memoria 19
José Astorga Tobar 4 Jun 202404/06/24 a las 17:41 hrs.2024-06-04 17:41:04 auxiliares
Mañana no habrá clase auxiliar. Queda disponible el material y videos de semestres anteriores:
- PDF (418 kb)
- Videos del semestre pasado: para la primera mitad Video_P1_P2 y la segunda mitad Video_P3_P4_P5.

Cátedras del martes 4 y jueves 6 de junio 127
Luis Mateu B. 3 Jun 202403/06/24 a las 18:50 hrs.2024-06-03 18:50:03 Cátedras
Los profesores no estamos en paro. Ruego respetar la posición de estudiantes que tampoco adhieren al paro. Por lo tanto voy a seguir publicando los videos de cátedras correspondientes a esta semana.
Temario: Virtualización, virtualización del hardware, tipos de virtualización, los desafíos de la virtualización completa y su implementación, espacios de direcciones virtuales virtuales.
Presentación: pdf
Tema: módulos de Linux.
(El miércoles 12 tendrán una clase auxiliar sobre módulos. El enunciado de la tarea sobre módulos, la última del semestre, se publicará el viernes 14.)
Sigan estas instrucciones para descargar el material. El material dura 83 minutos y corresponde a las clases de mañana martes y el jueves.
Este material viene con ejemplos de módulos en estos archivos adjuntos:
modules2020-2.tgz
Descompriman los archivos adjuntos con: tar zxf modules2020-2.tgz
(Hay archivos necesarios para la tarea de un semestre anterior. Obviamente no va a ser la misma tarea este semestre.)
Errores frecuentes al probar los módulos de ejemplo:
Martes 4
(sección 3: miércoles 5)Temario: Virtualización, virtualización del hardware, tipos de virtualización, los desafíos de la virtualización completa y su implementación, espacios de direcciones virtuales virtuales.
Presentación: pdf
Jueves 6 y Martes 11
(sección 3: viernes 7 y miércoles 12)Tema: módulos de Linux.
(El miércoles 12 tendrán una clase auxiliar sobre módulos. El enunciado de la tarea sobre módulos, la última del semestre, se publicará el viernes 14.)
Sigan estas instrucciones para descargar el material. El material dura 83 minutos y corresponde a las clases de mañana martes y el jueves.
Este material viene con ejemplos de módulos en estos archivos adjuntos:
modules2020-2.tgz
Descompriman los archivos adjuntos con: tar zxf modules2020-2.tgz
(Hay archivos necesarios para la tarea de un semestre anterior. Obviamente no va a ser la misma tarea este semestre.)
Errores frecuentes al probar los módulos de ejemplo:
- Necesitan instalar los encabezados del núcleo de Linux con este comando (en Debian): sudo apt-get install linux-headers-$(uname -r)
- La ruta al directorio de trabajo no puede contener un nombre que incluya espacios en blanco. Por ejemplo, no podrán compilar en el directorio: /home/fulano/sistemas operativos/
Auxiliar #9 Spinlocks 2 37
José Astorga Tobar 29 May 202429/05/24 a las 14:09 hrs.2024-05-29 14:09:29 auxiliares
La clase auxiliar es una continuación de spinlocks, son dos tareas de semestres anteriores (2022-1 y 2022-2).
Queda disponible un video de un semestre anterior con la resolución de la T6 2022-1 (incluye otro problema de control sobre spinlocks) y un video de este año con T6 2022-2
- Diapositivas
- Código Base
- Código Pauta
- Video T6 2022-1
- Video T6 2022-2
Saludos
Queda disponible un video de un semestre anterior con la resolución de la T6 2022-1 (incluye otro problema de control sobre spinlocks) y un video de este año con T6 2022-2
- Diapositivas
- Código Base
- Código Pauta
- Video T6 2022-1
- Video T6 2022-2
Saludos

Cátedras del martes 28 y jueves 30 de mayo 80
Luis Mateu B. 27 May 202427/05/24 a las 18:38 hrs.2024-05-27 18:38:27 Cátedras
Los profesores no estamos en paro. Ruego respetar la posición de estudiantes que tampoco adhieren al paro. Por lo tanto voy a seguir publicando los videos de cátedras correspondientes a esta semana.
Temario: Paginamiento en demanda, propiedades de la estrategia del reloj, thrashing, la estrategia del working set, implementación, ejemplo, optimizaciones para paginamiento en demanda.
Video de un semestre previo, pdf
Temario la cátedra presencial: localidad de accesos, implementación concreta de la estrategia del reloj.
Martes 28
Temario: Paginamiento en demanda, propiedades de la estrategia del reloj, thrashing, la estrategia del working set, implementación, ejemplo, optimizaciones para paginamiento en demanda.
Video de un semestre previo, pdf
Jueves 30
Temario la cátedra presencial: localidad de accesos, implementación concreta de la estrategia del reloj.
Temario de la cátedra en video: Optimizaciones para paginamiento en demanda, localidad de accesos, implementación concreta de la estrategia del reloj, tablas de páginas de múltiples niveles.
Video y pdf de un semestre previo.

Auxiliar #8: Spinlocks 43
Pablo Jaramillo V. 22 May 202422/05/24 a las 09:09 hrs.2024-05-22 09:09:22 auxiliares
Holaaa
Esperando que no estén muy mojados con las lluvias, les traigo lo nuevo en herramientas de sincronización (en realidad es viejo, pero nuevo para ustedes). Los Spinlocks! La herramienta más simple que podamos tener, y una que tiene una peculiaridad no menor.
Continuando con el esquema establecido la semana pasada. Esta semana yo les realizaré el auxiliar presencial para las secciones 2 y 3, y las clases de la sección 1 de José como siempre serán online.
En resumen:
La clase de José quedara grabada y son libres de ir a cualquiera de las dos clases. Espero verlos!
Material:
Grabación:
Enlace
Esperando que no estén muy mojados con las lluvias, les traigo lo nuevo en herramientas de sincronización (en realidad es viejo, pero nuevo para ustedes). Los Spinlocks! La herramienta más simple que podamos tener, y una que tiene una peculiaridad no menor.
Continuando con el esquema establecido la semana pasada. Esta semana yo les realizaré el auxiliar presencial para las secciones 2 y 3, y las clases de la sección 1 de José como siempre serán online.
En resumen:
- Sección 1 será online a cargo de José.
- Sección 2 y 3 será en la G111 a cargo de Pablo.
La clase de José quedara grabada y son libres de ir a cualquiera de las dos clases. Espero verlos!
Material:
Grabación:
Enlace

Cátedra del jueves 23 de mayo (sección 3: miércoles) 59
Luis Mateu B. 20 May 202420/05/24 a las 11:52 hrs.2024-05-20 11:52:20 Cátedras

Cátedras del martes 14 y 16 de mayo 62
Luis Mateu B. 12 May 202412/05/24 a las 19:31 hrs.2024-05-12 19:31:12 Cátedras
Martes 14
(sección 3: miércoles 15)Temario: Núcleo clásico vs. núcleo moderno, núcleo monolítico vs. micro núcleo, el scheduler de Linux, prioridad estática y dinámica, colas de activos y expirados, modelos de consistencia de memoria, consistent locking behavior
Video de un semestre previo, pdf
Jueves 12
(sección 3: viernes 17)Empezaremos con la tercera unidad: administración de memoria. Es un buen momento para asistir a las clases presenciales, porque la nueva unidad casi no requiere conocimiento sobre la materia previa.
Temario: administración de memoria, paginamiento, espacios de direcciones virtuales, tabla de páginas, traducción de direcciones virtuales a reales, translation lookaside buffer (TLB), extensión explícita de los datos, extensión implícita de la pila, implementación de fork.
Presentación: pdf (el pdf dice capítulo 5, pero es la unidad 3 en el nuevo programa)
Video de un semestre previo

Preparación para el control 2 98
Luis Mateu B. 8 May 202408/05/24 a las 19:41 hrs.2024-05-08 19:41:08 Información
El control 2 es el miércoles 15 de mayo (la próxima semana) en el horario extendido de la clase auxiliar (16:00 a 18:00). Entra hasta la cátedra del jueves 25 de abril.
Es muy importante haber resuelto hasta la tarea 4 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 2 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.
Es muy importante haber resuelto hasta la tarea 4 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 2 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.

Auxiliar #7 Mensajes con Timeout y Scheduler de Prioridades 114
Vicente I. González 8 May 202408/05/24 a las 11:12 hrs.2024-05-08 11:12:08 auxiliares
Buenas,
Scheduling y Mensajes era tan bueno, que le sacamos segunda parte. Asi que hoy a las 16:15 veremos lo que quedo pendiente de la semana pasada: ver mensajes con timeouts. También aprovecharemos el viaje y veremos la estategia de scheduling con prioridades en detalle. Es una buena auxiliar para enteder como funciona un scheduler por detrás.
A parte del contenido, debido a la baja asistencia a las auxiliares presenciales decidimos que a partir de ahora de juntaremos las clases de la sección 2 y 3. Esta semana partiré yo y la próxima le tocará a Pablo, las clases de la sección 1 de José siguen intactas.
En resumen:
La clase de José quedara grabada y son libres de ir a cualquiera de las dos clases.
Material:
Grabación:
Scheduling y Mensajes era tan bueno, que le sacamos segunda parte. Asi que hoy a las 16:15 veremos lo que quedo pendiente de la semana pasada: ver mensajes con timeouts. También aprovecharemos el viaje y veremos la estategia de scheduling con prioridades en detalle. Es una buena auxiliar para enteder como funciona un scheduler por detrás.
A parte del contenido, debido a la baja asistencia a las auxiliares presenciales decidimos que a partir de ahora de juntaremos las clases de la sección 2 y 3. Esta semana partiré yo y la próxima le tocará a Pablo, las clases de la sección 1 de José siguen intactas.
En resumen:
- Sección 1 será online a cargo de José.
- Sección 2 y 3 será en la G111 a cargo de Vicente.
La clase de José quedara grabada y son libres de ir a cualquiera de las dos clases.
Material:
Grabación: