Bosh sahifa Wiki Process Checkpoint

Process Checkpoint

Process Checkpoint — ishlayotgan jarayonning hisoblash holatini keyinroq davom ettirish mumkin bo‘lgan ko‘rinishda saqlash amali. Nazorat nuqtasi jarayonni boshidan qayta boshlamasdan, nosozlikdan keyin tiklash, uzoq hisoblashni ko‘chirish yoki rejalashtirilgan to‘xtashni yengil o‘tkazish uchun ishlatiladi. Oddiy fayl nusxasi yetarli emas, chunki jarayon holati xotira, registrlar va operatsion tizim resurslariga tarqalgan bo‘ladi.

Saqlanadigan holat

To‘liq nazorat nuqtasi odatda virtual manzil makoni, oqimlarning protsessor registrlari, stek, signal holati va ochiq fayllar haqidagi ma’lumotni qamrab oladi. Jarayon identifikatorlari, taymerlar, quvurlar, soketlar va umumiy xotira kabi obyektlar esa yadro tomonidan boshqariladi. Ularni nusxalashdan ko‘ra, qayta yaratish va eski bog‘lanishlarni yangi obyektlarga moslashtirish talab qilinadi.

Nazorat nuqtasi olinayotgan paytda oqimlar to‘xtatiladi yoki muvofiqlashtirilgan xavfsiz nuqtaga keltiriladi. Aks holda bir oqim xotirani o‘zgartirayotganda boshqasi saqlansa, o‘zaro mos kelmaydigan tasvir paydo bo‘lishi mumkin. Tarqatilgan dasturda muammo yanada murakkab: tarmoqdagi xabar yo‘lda bo‘lishi va ikki tugun bir hodisa haqida turli holatni saqlashi mumkin.

Usullar

Stop-the-world usuli barcha bajarilishni vaqtincha muzlatib, aniq tasvir oladi. U sodda, ammo katta xotirali jarayonda sezilarli pauza keltirib chiqaradi. Inkremental usul birinchi to‘liq nusxadan keyin faqat o‘zgargan sahifalarni yozadi. Copy-on-write mexanizmi esa jarayonni tezroq davom ettirib, eski sahifalarni fon rejimida saqlash imkonini beradi.

Ilova darajasidagi checkpoint muhim obyektlarni dastur o‘zi seriallashtirishini anglatadi. Bunday tasvir ixcham va versiyalar orasida boshqariladigan bo‘lishi mumkin, lekin dasturchidan maxsus kod talab qiladi. Tizim darajasidagi yondashuv jarayonni o‘zgartirmasdan saqlashga intiladi, biroq yadro va tashqi resurslar bilan moslik talablari kuchliroq bo‘ladi.

Tashqi resurslar

Ochiq oddiy fayl uchun yo‘l, siljish va kirish rejimini saqlash mumkin. Fayl mazmuni orada o‘zgarsa, tiklangan jarayon oldingi mantiqiy holatni ko‘rmaydi. Tarmoq ulanishining boshqa uchi esa mavjud bo‘lmasligi mumkin. Shu sabab checkpoint tizimlari resursni qayta ulash, proksi orqali saqlash yoki tiklab bo‘lmaydigan obyektni ochiq rad etish siyosatidan foydalanadi.

Nazorat nuqtasi formati dastur binariysi, kutubxonalar, yadro interfeysi va apparat arxitekturasiga bog‘lanishi mumkin. Boshqa mashinada davom ettirish uchun protsessor xususiyatlari va fayl tizimi ko‘rinishi mos bo‘lishi zarur. Konteynerlar nomlar makonini ajratib, ayrim bog‘liqliklarni boshqarishni yengillashtiradi, ammo apparat qurilmasi yoki tashqi xizmat holatini avtomatik ko‘chirmaydi.

Ishonchlilik va xarajat

Checkpoint oralig‘i juda qisqa bo‘lsa, disk va protsessor xarajati oshadi; juda uzun bo‘lsa, nosozlikda ko‘p ish yo‘qoladi. Saqlangan tasvirlar sinovdan o‘tkazilmasa, aynan kerak paytda tiklanmasligi mumkin. Maxfiy kalitlar va foydalanuvchi ma’lumotlari xotira tasviriga tushishi sababli faylga kirish, shifrlash va yaxlitlik nazorati ham muhimdir.

Yuqori unumli hisoblashda optimal davr nosozliklar orasidagi o‘rtacha vaqt va checkpoint yozish xarajatiga bog‘liq. Ish tugashiga oz qolganida yangi tasvir olish foydasiz bo‘lishi, uzoq bosqich boshida esa muhim bo‘lishi mumkin. Amaliy tizim tasvir vaqtini, hajmini, tiklash sinovi natijasini va qaysi tashqi resurslar chiqarib tashlanganini metadata bilan qayd etadi. Shu ma’lumot operatorga tasvirning shunchaki mavjudligini emas, uning qaysi sharoitda ishlatilishini tushunishga yordam beradi.

Bog‘liq tushunchalar

checkpoint-restart, process migration, virtual memory, serialization, fault tolerance, container