CR tools

From OpenVZ Virtuozzo Containers Wiki
Revision as of 21:04, 14 October 2011 by Cyrillos (talk | contribs)
Jump to: navigation, search

What CRtools is

CRtools is an utility to checkpoint/restore process tree. Unlike checkpoint/restore implemented completely in kernel space, it tries to achieve the same target mostly in user space.

Agenda

  1. Basic design (checkpoint == proc + SEIZE, restore == syscalls + execve)
  2. What's required from kernel

Basic design

Checkpoint

The checkpoint procedure relies heavily on /proc file system (it's a general place where crtools takes all the information it needs).

This includes:

  • Files descriptors information (via /proc/$pid/fd and /proc/$pid/fdinfo)
  • Pipes parameters
  • Memory maps (via /proc/$pid/maps)

Though not all parameters can be observed this way, say the current brk() value of a process is not exported at all.