After six months of development, CRIU 4.2 (Checkpoint and Restore In Userspace) toolkit has been published. This toolkit is designed to save and restore processes in user space. Users can save the state of one or a group of processes and then resume work from the saved position, even after a system reboot or on another server, without breaking established network connections. The project code is written in C and is distributed under the GPLv2 license. CRIU is commonly used in container management systems like OpenVZ, LXC/LXD, and Docker. Necessary changes for CRIU to work are included in the main structure of the Linux kernel.
CRIU technology is applied in various areas such as OS reboots without disrupting long-running process execution, live migration of isolated containers, speeding up the launch of slow processes, kernel updates without service restarts, periodic saving of computing tasks to resume work in case of emergencies, load balancing in cluster nodes, duplicating processes on a remote machine, creating snapshots of user applications for analysis on other systems, and cancelling further actions in a program.
In the new release of CRIU 4.2:
- In the amdgpu plugin, the ability to parallelize state restoration of processes using GPU has been implemented.
- The “–allow-uprobes” option has been added, allowing the working with processes using vma (Virtual Memory Area) when tracing processes through the uprobe mechanism.
- The libcriu library has added