2
0
mirror of https://github.com/checkpoint-restore/criu synced 2025-08-29 13:28:27 +00:00
Adrian Reber d77d8cc402 fix building with newer glibc
Newer glibc releases have removed SIGUNUSED from bits/signum.h which
breaks building criu on those systems:

https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=8082d91e1c449e0cb137468b731004a5e605c8c6

SIGSYS returns the same value as SIGUNUSED and testing has shown
that criu still successfully completes zdtm with this patch.

Signed-off-by: Adrian Reber <areber@redhat.com>
Reviewed-by: Dmitry Safonov <dsafonov@virtuozzo.com>
Signed-off-by: Andrei Vagin <avagin@virtuozzo.com>
2017-07-18 20:01:27 +03:00
2017-07-18 09:34:44 +03:00
2017-05-19 09:14:45 +03:00
2017-07-18 20:01:27 +03:00
2017-07-18 09:34:44 +03:00
2017-05-19 09:17:19 +03:00
2017-07-18 20:01:27 +03:00
2017-04-02 18:12:10 +03:00
2012-03-25 23:31:20 +04:00
2016-08-11 16:18:43 +03:00
2012-07-30 13:52:37 +04:00
2017-06-28 08:49:36 +03:00

CRIU (Checkpoint and Restore in Userspace)

An utility to checkpoint/restore tasks. Using this tool, you can freeze a running application (or part of it) and checkpoint it to a hard drive as a collection of files. You can then use the files to restore and run the application from the point it was frozen at. The distinctive feature of the CRIU project is that it is mainly implemented in user space.

Also, CRIU provides a library for Live migration, and exposes two low-level core features as standalone libraries. Thes are libcompel for parasite code injection and libsoccr for TCP connections checkpoint-restore.

The project home is at http://criu.org.

Pages worth starting with are:

A video tour on basic CRIU features

CRIU introduction

Live migration

True live migration using CRIU is possible, but doing all the steps by hands might be complicated. The phaul sub-project provides a Go library that incapsulates most of the complexity.

Parasite code ijection

In order to get state of the running process CRIU needs to make this process execute some code, that would fetch the required information. To make this happen without killing the application itself, CRIU uses the parasite code injection technique, which is also available as a standalone library called libcompel.

TCP sockets checkpoint-restore

One of the CRIu features is the ability to save and restore state of a TCP socket without breaking the connection. This functionality is considered to be useful by tiself, and we have it available as the libsoccr library.

How to contribute

Licence

The project is licensed under GPLv2 (though files sitting in the lib/ directory are LGPLv2.1).

Description
No description provided
Readme 81 MiB
Languages
C 86%
Python 6.1%
Java 2.6%
Shell 2.6%
Makefile 2%
Other 0.7%