Po šesti měsících vývoje byl publikován nástroj CRIU 4.1 (Checkpoint and Restore In Userspace), určený k ukládání a obnově procesů v uživatelském prostoru. Tento nástroj umožňuje uložit stav jednoho nebo skupiny procesů a poté obnovit práci ze uložené pozice, a to i po restartu systému nebo na jiném serveru, aniž by došlo k přerušení již navázaných síťových spojení. Kód projektu je napsán v jazyce C a je distribuován pod licencí GPLv2. CRIU se používá v systémech správy kontejnerů, jako jsou OpenVZ, LXC/LXD a Docker. Potřebné pro CRIU změny jsou zahrnuty v jádru Linux.
Z oblastí použití technologie CRIU se uvádí zajištění restartu OS bez narušení kontinuity výkonu dlouhodobě běžících procesů, live migrace izolovaných kontejnerů, zrychlení spuštění pomalých procesů (lze zahájit práci ze stavu uloženého po inicializaci), provádění aktualizací jádra bez restartu služeb, periodické ukládání stavu dlouhodobě prováděných výpočetních úloh pro obnovení činnosti v případě havarijního ukončení, vyvažování zátěže na uzlech v clusterech, duplikování procesů na jiný stroj (fork na vzdálený systém), vytváření snapshotů uživatelských aplikací v průběhu práce pro jejich analýzu na jiném systému nebo pro případ, kdy bude třeba zrušit další akce v programu.
V novém vydání:
- Byla přidána podpora architektury RISC-V.
- Byla přidána podpora mechanismu PIDFD, který umožňuje použít neměnné identifikátory, vázané na původní procesy (běžný PID může být přiřazen jinému procesu po ukončení aktuálního procesu souvisejícího s tímto PID).
- Pro platformu ARM64 byla implementována podpora rozšíření pro autentizaci ukazatelů (PAC Pointer Authentication Code), která zajišťují kontrolu vracení se adres pomocí digitálních podpisů, jež jsou uloženy v nepoužívaných vyšších bitech samotného ukazatele.
- Byly rozšířeny možnosti ukládání a obnovy stavu aplikací využívajících technologii NVIDIA CUDA.
- Byla poskytnuta možnost výběru podkladového mechanismu blokování sítě během sestavení, bez nutnosti úpravy kódu. Podkladový mechanismus může být změněn pomocí předání parametru NETWORK_LOCK_DEFAULT nástroji make, který přijímá hodnoty "NETWORK_LOCK_IPTABLES", "NETWORK_LOCK_NFTABLES" a "NETWORK_LOCK_SKIP".
- Byla zahrnuta podpora generování coredump souborů pro architektury Aarch64 a ARM.
Zdroj: opennet.ru
