Нашри коркарди аз хотираи ертеoom 1.4

Пас аз ҳашт моҳи рушд нашр кардааст озод кардани раванди замина барвақт 1.4, ки давра ба давра миқдори хотираи дастрасро тафтиш мекунад (MemAvailable, SwapFree) ва кӯшиш мекунад, ки ба пайдоиши хотираи кам барвақт посух диҳад. Рамзи лоиҳа бо забони C навишта шудааст ва паҳн мекунад дар доираи иҷозатномаҳои MIT.

Агар миқдори хотираи мавҷуда аз арзиши муқарраршуда камтар бошад, он гоҳ erkenoom маҷбуран (бо ирсоли SIGTERM ё SIGKILL) равандеро, ки хотираро фаъолтар истеъмол мекунад (дорои арзиши баландтарин /proc/*/oom_score) бидуни овардани ҳолати система ба тозакунии буферҳои система ва халал ворид кардан ба ивазкунӣ (OOM (аз ҳолати берун аз тригер берун аст)) қатъ мекунад. аллакай ба арзишҳои муҳим расидаанд ва одатан дар ин лаҳза система дигар ба амалҳои корбар ҷавоб намедиҳад).

Earlyoom фиристодани огоҳиномаҳоро дар бораи равандҳои маҷбуран қатъшуда ба мизи корӣ дастгирӣ мекунад (бо истифода аз огоҳӣ-фиристод) ва инчунин қобилияти муайян кардани қоидаҳоро фароҳам меорад, ки дар онҳо бо истифода аз ибораҳои муқаррарӣ шумо метавонед номи равандҳоеро, ки қатъи онҳо афзалтар аст (опсияи "--афзал") ё қатъ кардани онҳо бояд пешгирӣ карда шавад (параметри "--avoid").

асосӣ тағйирдиҳӣ дар нашри нав:

  • аз хисоби боркунии танбал атрибутҳои раванд 50% тезтар мантиқи интихоби раванд барои анҷом;
  • Боварӣ ҳосил кунед, ки UID-и раванди қатъшаванда дар гузориш ба ғайр аз PID ва номи раванд инъикос карда мешавад;
  • Равшансозии гузориши хатогиҳо бо хокистарии сабук илова карда шуд;
  • Рамзро тоза кард;
  • Дар ҳолати имконпазир, эъломияи тағирёбандаҳои маҳаллӣ барои блокҳо истифода мешуд;
  • Иловаи танзимоти PATH_LEN барои иваз кардани арзиши андозаи буфери ба код дӯхташуда;
  • Боварӣ ҳосил кунед, ки cppcheck агар мавҷуд бошад, оғоз мешавад;
  • Санҷиши иҷрои "савед" илова карда шуд;
  • Маҷмӯи васеъи санҷишҳо (санҷиш кунед);
  • Барқарорсозии имтиёзҳои реша дар файли воҳиди systemd earlyoom.service амалӣ карда шуд. Ин тағирот танаффус имконияти огоҳиҳои GUI. Барои фаъол кардани огоҳиномаҳои GUI, пешниҳод карда мешавад, ки ҳуқуқи решавӣ бо шарҳи "DynamicUser=true" баргардонида шавад. Хомӯш кардани реша низ приводит ба даст овардани маълумот дар бораи истеъмоли хотира ҳангоми насб кардани /proc дар ҳолати hidepid=1 ё hidepid=2.

Манбаъ: opennet.ru

Илова Эзоҳ