[CRIU] CRIU 2.0
xemul at parallels.com
Mon Dec 14 02:09:06 PST 2015
Right now in criu we have at least two parts that are useful by themselves
and sometimes people ask for those as separate libraries. The parts are --
the implementation of infecting tasks with random blob (parasite) and TCP
So by the next release I propose to re-suffle the CRIU source tree and make
effectively three distinguished components under the same name -- the criu
tool itself, the infecting library and tool and the TCP CR library. For the
infecting library we've once tried to pull this into a separate project
called 'compel' (https://github.com/xemul/compel), with core library, helper
libs and CLI tool, but with no luck -- it was so basic to CRIU that patching
them independently was too complex. Hopefully maintaining compel in the criu
tree at least for the first time would make this finally happen.
And, while tossing the code around, it would also make sense to make some
order in the source tree at least putting CRIT into its own subdir, putting
zdtm tests into one place and moving the legacy tests aside.
With all these changes I think it would make sense to do tag criu 2.0 :)
As the initial suggestion on the code structure and names I have:
crtools/ for the existing criu code
pycriu/ for python bindings
lib/ for C library
go/ for go binding (if we ever have one)
The output of this would be criu binary, lib/libcriu.so and pycriu/ stuff.
The criu binary would depend on the compel and libsockcr .a libs below.
compel/ for the parasite engine
lib/ for the library
tool/ for the command line stuff
The output of this is the compel tool that would help to build ready for
injection blobs and libcompel.so (and libcompel.a) for run-time infection.
libsockcr/ for TCP checkpoint-restore
The output is libsockcr.so (and libsockcr.a)
crit/ for the crit tool
The output here is crit (and potential extensions it might have).
Better suggestions on the code structure, component names and other stuff
that's worth having in 2.0 are welcome!
More information about the CRIU