Sobes.tech
Middle

Ինչպե՞ս է համակարգը որոշում, թե որ գործընթացը ավարտել:

sobes.tech AI

Պատասխան AI-ից

Համակարգը օգտագործում է հիշողության պակասի հայտնաբերման ալգորիթմ (Out-of-memory killer, OOM killer), որպեսզի ավարտի գործընթացները և ազատի ռեսուրսները: Ամեն գործընթաց ունի իր առաջնահերթությունը՝ հիմնված նրա վիճակի և բաղադրիչների վրա.

  • Առաջին պլան գործընթաց: Գործունեություն, որի հետ օգտվողը փոխազդում է: Ամենաբարձր առաջնահերթությունը:
  • Տեսանելի գործընթաց: Գործունեություն, որը տեսանելի է էկրանին, բայց չի գտնվում առաջին պլանում (օրինակ, երկխոսության պատուհան): Բարձր առաջնահերթություն:
  • Ծառայության գործընթաց: Աշխատող ծառայություն (օրինակ, երաժշտության նվագում ֆոնին): Ավելի ցածր առաջնահերթություն, քան տեսանելի գործընթացը:
  • Էջանշանային գործընթաց: Բացակայում է ակտիվ բաղադրիչներ և կարող է վերագործարկվել: Ամենացածր առաջնահերթությունը:

OOM killer-ը նախ փորձում է ավարտել ամենացածր առաջնահերթության գործընթացները (Էջանշանային գործընթաց), ապա անցնում է ծառայության գործընթացներին և այդպես շարունակ, մինչև բավարար ազատ հիշողություն չստեղծվի:

Նաև հաշվի են առնվում՝

  • Վերջին ակտիվության ժամանակը: "Հին" գործընթացները, որոնք ունեն ցածր առաջնահերթություն, ավարտվում են առաջինը:
  • Օգտագործված հիշողության ծավալը: Մեծ հիշողություն սպառող գործընթացները կարող են ավարտվել նախապես, նույնիսկ եթե նրանց առաջնահերթությունը բարձր է, քան մյուսների, որոնք օգտագործում են քիչ ռեսուրսներ:

Համակարգը ձգտում է պահպանել արձագանքման արագությունը և կայունությունը, ավարտելով գործընթացները ամենաանհետաձգելի կերպով, որը նվազագույն վնաս է հասցնում օգտվողին։