Explores parallelism in programming, emphasizing trade-offs between programmability and performance, and introduces shared memory parallel programming using OpenMP.
Explores multithreading in computer architecture, focusing on pipeline utilization and performance impact in various techniques, including blocked and fine-grained multithreading.
Provides an overview of MicroC/OS-II, a real-time kernel with multitasking capabilities and deterministic functions, covering topics such as task management, kernel, and intertask communication.
Explores scalable synchronization mechanisms for many-core operating systems, focusing on the challenges of handling data growth and regressions in OS.
Explores coordination and scheduling in operating systems, covering lost wakeup problems, scheduling algorithms, and coordination primitives like sleep and wakeup.
Introduces the fundamental concepts of scheduling in operating systems, covering limited direct execution, protection rings, context switching, and various scheduling policies.