Zmrazení procesu à la hibernace

jose

Re:Zmrazení procesu à la hibernace
« Odpověď #15 kdy: 12. 02. 2016, 07:13:50 »
neskusal som, ale mozno toto: http://criu.org/Main_Page


Ivan

Re:Zmrazení procesu à la hibernace
« Odpověď #16 kdy: 12. 02. 2016, 12:13:09 »
Kdysi neco takoveho udelal Martin Mares. Dokazalo to "uspat" proces s bezicim emacs-em a po rebootu ho opet obnovit.

Nemáš odkaz?
Bohuzel. Je to vic nez 15 let. A tehdy jsem byl jeste noob.

Ladislav Subr

Re:Zmrazení procesu à la hibernace
« Odpověď #17 kdy: 12. 02. 2016, 17:31:26 »
Hotove binarky musi byt dynamicky slinkovane. Pak se pustenim procesu skrze utilitu cr_run dale dynamicky prilinkuje libcr.so, ktera zajistuje, ze proces ma schopnst byt uspan/restartovan (nejaka systemova volani, jejichz podporu na druhe strane pridava prislusny jaderny modul). Tehoz lze docilit nastavenim promene prostredi LD_PRELOAD. K jiz bezicimu procesu to neprilinkujete. Resources - sitova spojeni by urcite byla problemem; zato standardni filedeskriptory jsou ulozene, tj. po probuzeni proces pise do souboru a na mista, kde skoncil ve chvili checkpointu. Byl-li soubor mezitim zmenen, pak jej bud zkrati, nebo naopak doplni nulami. K tomu muze dojit napriklad tehdy, kdyz udelate zalozni checkpoint, ale proces nechate bezet, tj. on dale pripisuje do souboru. Pak dojde k padu (at uz systemu, nebo procesu) a po oziveni ze zalozniho checpointu se proces vrati na prislusne misto (zpravidla to tedy znamena, ze se soubor zkrati). Chci-li proces uspat a pak ozivit, checkpointuji ho se signalem 9 (aby na nej nemohl nijak reagovat a proste skoncil). Poslat signal po checkpoitu nabizi prislusna utilita cr_checkpoint. Jeste poznamenam, ze ne vzdy lze checkpoint pouzit po upgradu jadra - je nutne, aby jadro, na kterem probehl checkpoint, bylo dostatecne podobne tomu, na kterem se jej pokusite ozivit. Podstatne je, aby se nemenily jaderne datove struktury procesu. Na CentOSu to byl s distribucnim jadrem problem cas od casu. Ted je klastr cely 'schovany', takze na vypocetnich uzlech neupgraduji jadro a tento problem neresim. Netroufam si odhadnout pravdepodobnost problemu s Debianimi jadry.

JanS

Re:Zmrazení procesu à la hibernace
« Odpověď #18 kdy: 18. 02. 2016, 10:28:07 »
Zdravim,
tak jsem nainstaloval QEMU/KVM s Virt-managerem. Nejak ale nejsem schopny ten virtualni stroj uspat tak, aby uspany prezil restart hosta. Ja ve Virt-manageru na to jeste nejake jine cudlitko, nez "Pause"? Pauznuty stroj restart hosta sestreli.
Diky za rady

nobody(ten pravej)

Re:Zmrazení procesu à la hibernace
« Odpověď #19 kdy: 18. 02. 2016, 17:35:47 »
Pause je opravdu jen pauznuti, na ulozeni stavu je pod 'power menu' (sipka napravo od tlacitka UkonceniI
(napravo od Pausa)) polozka Ulozit, pripadne v menu "Virtualni stroj/Shut Down/Ulozit"...


JanS

Re:Zmrazení procesu à la hibernace
« Odpověď #20 kdy: 18. 02. 2016, 18:05:56 »
Aha, to jsem videl. Ale to odmitl s tim, ze:

Citace
Error saving domain: Requested operation is not valid: domain has CPU feature: invtsc

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 91, in cb_wrapper
    callback(asyncjob, *args, **kwargs)
  File "/usr/share/virt-manager/virtManager/engine.py", line 980, in cb
    vm.save(path, meter=asyncjob.get_meter())
  File "/usr/share/virt-manager/virtManager/domain.py", line 1407, in save
    self._backend.managedSave(0)
  File "/usr/lib/python2.7/dist-packages/libvirt.py", line 1309, in managedSave
    if ret == -1: raise libvirtError ('virDomainManagedSave() failed', dom=self)
libvirtError: Requested operation is not valid: domain has CPU feature: invtsc


Re:Zmrazení procesu à la hibernace
« Odpověď #21 kdy: 18. 02. 2016, 20:14:29 »
Hotove binarky musi byt dynamicky slinkovane. Pak se pustenim procesu skrze utilitu cr_run dale dynamicky prilinkuje libcr.so, ktera zajistuje, ze proces ma schopnst byt uspan/restartovan (nejaka systemova volani, jejichz podporu na druhe strane pridava prislusny jaderny modul). ...

Díky za popis, může se to někdy hodit.

Re:Zmrazení procesu à la hibernace
« Odpověď #22 kdy: 18. 02. 2016, 20:18:43 »
Aha, to jsem videl. Ale to odmitl s tim, ze:

Citace
Error saving domain: Requested operation is not valid: domain has CPU feature: invtsc

Máte dost aktuální libvirt a qemu-kvm? Na jakém procesoru a na jakém jádru (distribuci)?

JanS

Re:Zmrazení procesu à la hibernace
« Odpověď #23 kdy: 18. 02. 2016, 20:23:18 »
Debian 8, aktualni balicky, procesor i7-4770K

Zda se, ze dela problem ta feafure "invtsc". Kdyz jsem jako procesor model dal "kvm64¨ tak save funguje. Lze nejak tu feature zakazat?