Po 11 mesecih razvoja je objavljen izvod orodja CRIU 4.3 (Checkpoint and Restore In Userspace), ki je namenjeno shranjevanju in obnavljanju procesov v uporabniškem prostoru. Orodje omogoča shranitev stanja enega ali skupine procesov, nato pa ponovno nadaljevanje dela s shranjene pozicije, tudi po ponovnem zagonu sistema ali na drugem strežniku brez prekinitev že vzpostavljenih omrežnih povezav. Koda projekta je napisana v jeziku C in se distribuira pod licenco GPLv2. CRIU se uporablja v sistemih za upravljanje kontejnerjev, kot so OpenVZ, LXC/LXD in Docker. Potrebne za delovanje CRIU spremembe so vključene v glavno sestavo jedra Linux.
Med področji uporabe tehnologije CRIU izstopa omogočanje ponovnega zagona OS brez prekinitve neprekinjenega izvajanja dolgoročnih procesov, Live-migracija izoliranih kontejnerjev, pospeševanje zagona počasnih procesov (začeti je moč delo s stanjem, shranjenim po inicializaciji), izvajanje posodobitev jedra brez ponovnega zagona storitev, občasno shranjevanje stanja dolgoročnih računalniških nalog za ponovno nadaljevanje dela v primeru nenadnih zaključkov, uravnoteženje obremenitve na vozliščih v klasterjih, podvajanje procesov na drugo napravo (fork na oddaljeni sistem), ustvarjanje posnetkov uporabniških aplikacij med delovanjem za njihovo analizo na drugem sistemu ali v primeru, da bi bilo potrebno preklicati nadaljnje dejanja v programu.
U novom izdanju:
- Izvedena je možnost stiskanja blokov in strani pomnilnika z uporabo algoritma LZ4 in večnitno razpakiranje.
- Povečana je zmogljivost zaradi vključitve asinhronega vhodno/izhodnega (AIO) pri obnavljanju strani VMA (Virtual Memory Area), nove metode ustavljanja nalog brez uporabe strojnih točk ustavljanja in paralelno obnovo memfd in anonimne deljene pomnilnika.
- Dodana je podpora za razširitev ARM64 GCS (Guarded Control Stack), ki zagotavlja strojno zaščito naslovov za vrnitev iz funkcij. Po prenosu nadzora na funkcijo, procesor ne shranjuje naslovov vrnitev samo v običajni sklad, temveč tudi v ločen senčni sklad, ki ga ni mogoče neposredno spremeniti. Pred izhodom iz funkcije se naslov vrnitve pridobi iz senčnega sklada in preveri z naslovom vrnitve iz glavnega sklada.
- Dodan je backend za shranjevanje stanja API gonilnika NVIDIA CUDA.
- Zagotovljeno je obnovitev mapiranja GPU.
- Za gonilnik amdgpu je bilo izvedeno shranjevanje in obnovitev stanja medpomnilnikov podsystema DRM (Direct Rendering Manager) in datotečnih descriptorjev DMA-BUF.
- Dodane so ukaze za stiskanje in razpakiranje slik pomnilnika v offline načinu.
- Dodana je podpora za shranjevanje in obnovitev informacij o dodelitvi identifikatorjev UID omrežnim vtičnicam.
- Dodana je možnost «—image-io-mode» za zapisovanje in branje slik strani pomnilnika v načinu O_DIRECT (ob hodu mimo predpomnilnika strani).
Izvor: opennet.ru
