In this lecture we review existing operating system abstractions and review their effectiveness in a changing world where workloads are deployed in the cloud, run in high-level languages, and rely on fast communication. We take a deep dive into single address-space OS and discuss their advantages, disadvantages and challenges in implementing them.