Veröffentlichung von CRIU 4.0, einem System zum Speichern und Wiederherstellen des Zustands von Prozessen in Linux

Die Veröffentlichung des CRIU 4.0-Tools (Checkpoint and Restore In Userspace) ermöglicht die Speicherung und Wiederherstellung von Prozessen im Benutzermodus. Das Tool erlaubt es, den Zustand eines oder mehrerer Prozesse zu speichern und dann die Arbeit an der gespeicherten Position fortzusetzen, auch nach einem Neustart des Systems oder auf einem anderen Server, ohne vorhandene Netzwerkverbindungen zu unterbrechen. Der ProjektschlĂŒssel ist in C geschrieben und steht unter der GPLv2-Lizenz. CRIU wird in Container-Verwaltungssystemen wie OpenVZ, LXC/LXD und Docker verwendet. Die erforderlichen Änderungen fĂŒr die Nutzung von CRIU sind in den Hauptkern von Linux integriert.

Die Anwendungsbereiche der CRIU-Technologie umfassen die GewĂ€hrleistung von Betriebssystem-Neustarts, ohne die KontinuitĂ€t langlaufender Prozesse zu stören, die Live-Migration isolierter Container, die Beschleunigung des Starts langsamer Prozesse (man kann die Arbeit von einem nach der Initialisierung gespeicherten Zustand beginnen), DurchfĂŒhrung von Kernel-Updates ohne Neustart der Dienste, das regelmĂ€ĂŸige Speichern des Zustands langwieriger Rechenaufgaben zur Wiederaufnahme der Arbeit im Falle eines Absturzes, Lastenausgleich auf Knoten in Clustern, das Duplizieren von Prozessen auf ein anderes GerĂ€t (fork auf ein entferntes System) und die Erstellung von Snapshots von Benutzeranwendungen wĂ€hrend des Betriebs zur Analyse auf einem anderen System oder fĂŒr den Fall, dass weitere Maßnahmen im Programm rĂŒckgĂ€ngig gemacht werden mĂŒssen.

In der neuen Version:

  • Ein CUDA-Plugin wurde hinzugefĂŒgt, das die Speicherung und Wiederherstellung des Zustands von Anwendungen auf Basis der NVIDIA CUDA-Technologie ermöglicht.
  • UnterstĂŒtzung des Shadow Stack-Mechanismus, der seit dem Linux-Kernel 6.6 unterstĂŒtzt wird und die AusfĂŒhrung vieler Exploits blockiert, indem er die Hardware-Funktionen von Intel-Prozessoren nutzt (nach der Übergabe der Kontrolle werden RĂŒckgabewerte von Funktionen nicht nur im regulĂ€ren Stack, sondern auch in einem separaten "Shadow-Stack" gespeichert, der nicht direkt verĂ€ndert werden kann; vor dem Verlassen der Funktion wird der RĂŒckgabewert aus dem Shadow-Stack extrahiert und mit dem RĂŒckgabewert aus dem regulĂ€ren Stack verglichen).
  • Die UnterstĂŒtzung fĂŒr den ioctl-Befehl PAGEMAP_SCAN wurde hinzugefĂŒgt, um Informationen ĂŒber den Inhalt der Speichertabellen abzurufen, was unter anderem in Verbindung mit userfaultfd() die Möglichkeit bietet, SchreibvorgĂ€nge in einem bestimmten Speicherbereich zu erkennen.
  • Es wurde die Möglichkeit implementiert, den Stream korrekt in cgroup v1 wiederherzustellen.

    Quelle: opennet.ru
ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server đŸ”„ ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster