Lightweight process virtualization is a virtualization technology which exists for many years, in Linux and in other OSs, and which matured significantly in the recent year. Linux-based containers are based on this technology. In this lecture, I will discuss the Linux kernel infrastructure for Linux-based containers as well as several interesting userspace projects which use this technology.
Following is a list of the main topics which will be discussed:
Namespaces and Cgroups - the building blocks of containers.
A Short survery of Linux container projects (open source and proprietary).
  -  The LXC project:
  -  LXC containers
  -  LXC management
Docker - the Open Source containers engine project.
CRIU (Chekpoint/Restore in userspace) 
and more.