Uscita di CRIU 4.0, un sistema per il salvataggio e il ripristino dello stato dei processi in Linux.

È stata pubblicata la versione 4.0 del tool CRIU (Checkpoint and Restore In Userspace), progettato per salvare e ripristinare i processi nello spazio utente. Questo strumento consente di salvare lo stato di uno o più processi e di riprendere l'esecuzione dalla posizione salvata, anche dopo un riavvio del sistema o su un altro server senza interrompere le connessioni di rete già stabilite. Il codice del progetto è scritto in C e distribuito sotto licenza GPLv2. CRIU è utilizzato in sistemi di gestione dei container come OpenVZ, LXC/LXD e Docker. Le modifiche necessarie per il funzionamento di CRIU sono state incluse nel kernel Linux principale.

Tra i casi d'uso della tecnologia CRIU si evidenziano il supporto al riavvio del sistema operativo senza interrompere l'esecuzione di processi a lungo termine, la live migration di container isolati, l'accelerazione dell'avvio di processi lenti (è possibile iniziare il lavoro dallo stato salvato dopo l'inizializzazione), l'aggiornamento del kernel senza riavviare i servizi, il salvataggio periodico dello stato di compiti computazionali a lungo termine per riprendere l'esecuzione in caso di crash, il bilanciamento dei carichi su nodi nei cluster, la duplicazione di processi su un'altra macchina (fork su un sistema remoto), la creazione di snapshot delle applicazioni utente durante l'esecuzione per analizzarle su un altro sistema o nel caso sia necessario annullare ulteriori azioni nel programma.

Nel nuovo rilascio:

  • È stato aggiunto un plugin CUDA che consente il salvataggio e il ripristino dello stato delle applicazioni basate sulla tecnologia NVIDIA CUDA.
  • È stata aggiunta la compatibilità con il meccanismo Shadow Stack, supportato a partire dal kernel Linux 6.6, che permette di bloccare molte exploit utilizzando le capacità hardware dei processori Intel (dopo la cessione del controllo alla funzione, gli indirizzi di ritorno vengono salvati dal processore non solo nello stack normale, ma anche in uno stack 'shadow' separato, che non può essere modificato direttamente; prima di uscire dalla funzione, l'indirizzo di ritorno viene estratto dallo stack shadow e confrontato con l'indirizzo di ritorno dello stack principale).
  • È stata aggiunta la compatibilità con il comando ioctl PAGEMAP_SCAN per ottenere informazioni sul contenuto delle tabelle delle pagine di memoria, che in particolare utilizzato con userfaultfd() permette di determinare eventi di scrittura in una specifica area di memoria.
  • È stata implementata la possibilità di ripristinare il flusso in una corretta cgroup v1.

    Fonte: opennet.ru
Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster