Defines semaphores as synchronization primitives with wait and signal operations. Details how semaphores block threads based on value state and explains fundamental properties including thread blocking, waking mechanisms, and their role in managing concurrent access.
Covers non-determinism in concurrent programs and shared variable access issues. Analyzes concurrent writes, updates, and the importance of mutual exclusion to prevent race conditions and ensure atomic operations in multithreaded environments.
Introduces synchronization concepts in concurrent systems, distinguishing between serialization and mutual exclusion. Covers execution models in parallel and multithreaded systems, explaining how synchronization constraints enforce event ordering without universal clocks.
Containerization—Namespaces and Cgroups in Linux
This lecture covers lightweight virtualization using Linux containers, focusing on how namespaces and cgroups isolate resources and limit usage. It explores Docker, LXC, orchestration frameworks like Kubernetes, and demonstrates system calls and mechanisms enabling container-based cloud-native development