Introduces Jupyter Notebook for composing interactive programs with live code and narrative text, covering installation, code cells, Markdown text, widgets, and kernel management.
Explores the foundations of modular verification using Separation Logic for realistic concurrent programs and discusses the challenges of shared mutable state in concurrency.
Explores the concept of locking for mutual exclusion in OS, covering race conditions, parallelism, atomic instructions, deadlock prevention, and best practices.