11 oylik ishlab chiqishdan so'ng, foydalanuvchi maydonidagi jarayonlarni saqlash va tiklash uchun mo'ljallangan CRIU 4.3 (Checkpoint and Restore in Userspace) asboblar to'plami chiqarildi. Asboblar to'plami bir yoki bir guruh jarayonlarning holatini saqlash va keyin saqlangan pozitsiyadan, shu jumladan tizimni qayta ishga tushirgandan so'ng yoki mavjud tarmoq ulanishlarini buzmasdan boshqa serverda bajarishni davom ettirish imkonini beradi. Loyiha kodi C tilida yozilgan va GPLv2 litsenziyasi ostida tarqatilgan. CRIU OpenVZ, LXC/LXD va Docker kabi konteynerlarni boshqarish tizimlarida qo'llaniladi. CRIU ishlashi uchun zarur bo'lgan o'zgarishlar yadro yadrosiga kiritilgan. Linux.
CRIU texnologiyasini qo'llash sohalariga uzoq davom etadigan jarayonlarning uzluksizligini buzmasdan OTni qayta ishga tushirishni ta'minlash, izolyatsiyalangan konteynerlarning jonli ko'chishi, sekin jarayonlarni ishga tushirishni tezlashtirish (siz ishga tushirilgandan so'ng saqlangan holatdan ishlashni boshlashingiz mumkin), xizmatlarni qayta ishga tushirmasdan yadro yangilanishini amalga oshirish, vaqti-vaqti bilan to'xtatilgan hisob-kitoblarda uzoq davom etayotgan ishlarning holatini to'xtatib turish klasterlar, jarayonlarni boshqa mashinaga ko'paytirish (uzoq tizimga vilkalar), boshqa tizimda tahlil qilish uchun ish paytida foydalanuvchi ilovalarining suratlarini yaratish yoki dasturdagi keyingi harakatlarni bekor qilish kerak bo'lganda.
Yangi nashrda:
- LZ4 algoritmi va ko'p oqimli dekompressiya yordamida xotira bloklari va sahifalarini siqish imkoniyati amalga oshirildi.
- VMA (Virtual Xotira Area) sahifalarini tiklashda asinxron I/O (AIO) dan foydalanish, apparat uzilish nuqtalaridan foydalanmasdan vazifalarni to'xtatishning yangi usuli va memfd va anonim umumiy xotirani tiklashni parallellashtirish orqali unumdorlik yaxshilanadi.
- ARM64 GCS (Guarded Control Stack) kengaytmasi uchun qo'llab-quvvatlash qo'shildi, bu funksiyani qaytarish manzillari uchun apparat himoyasini ta'minlaydi. Boshqaruvni funksiyaga o'tkazgandan so'ng, protsessor qaytarish manzillarini nafaqat oddiy stekda, balki to'g'ridan-to'g'ri o'zgartirib bo'lmaydigan alohida soya stekida ham saqlaydi. Funksiyadan chiqishdan oldin, qaytarish manzili soya stekidan chiqariladi va asosiy stekdagi qaytarish manzili bilan taqqoslanadi.
- NVIDIA CUDA drayveri API holatini saqlash uchun orqa qism qo'shildi.
- GPU xaritalashni tiklash ta'minlandi.
- Amdgpu drayveri uchun DRM (Direct Rendering Manager) quyi tizim buferlari va DMA-BUF fayl tavsiflovchilarining holatini saqlash va tiklash amalga oshirildi.
- Oflayn rejimda xotira tasvirlarini siqish va dekompressiyalash buyruqlari qo'shildi.
- Tarmoq rozetkalariga UID ulanishlari haqidagi ma'lumotlarni saqlash va tiklash uchun qo'llab-quvvatlash qo'shildi.
- O_DIRECT rejimida (sahifa keshini chetlab o'tib) xotira sahifasi tasvirlarini yozish va o'qish uchun "--image-io-mode" opsiyasi qo'shildi.
Manba: opennet.ru
