CRIU is a tool for checkpointing and restoring running Linux containers and processes. It began as an OpenVZ kernel module in 2005 and became its own open source project in 2011. CRIU works by dumping the memory, filesystem, and kernel state of running processes and restoring them elsewhere. It supports live migration through iterative dumping of memory without freezing processes. New features in CRIU and the Linux kernel continue to improve its capabilities for tasks like online migration and restoring processes with custom PIDs. CRIU is developed and maintained by a large open source community.