Ядрото на Linux не може да обработва ситуацията с недостатъчно памет плавно

В списъка с разпространение на разработчиците на ядрото на Linux повдигната проблема с обработката на ситуацията с изчерпване на свободната памет в Linux:

Известен е проблем, който безпокойства много хора от години и който може да бъде възпроизведен за по-малко от няколко минути на последната версия на ядрото Linux 5.2.6. Всички параметри на ядрото са настроени на стойности по подразбиране.

Стъпки:

  • Зареждаме с параметър „mem=4G“.
  • Изключваме поддръжката на swap (sudo swapoff -a).
  • Стартираме всеки уеб браузър, например, Chrome/Chromium или/и Firefox.
  • Започваме да отваряме раздели със сайтове и гледаме как намалява обемът на свободната памет.

В момента, в който възникне ситуация, в която нов раздел изисква повече оперативна памет, отколкото е налична, системата практически напълно замръзва. Дори ще имате затруднения да движите мишката. Индикаторът на твърдия диск ще мига непрекъснато (не ми е ясно защо). Няма да можете да стартирате нови приложения или да затворите текущо работещите.

Тази малка криза може да продължи минути или повече. Предполагам, че системата не трябва да се държи така. Мисля, че трябва да се направи нещо, за да се избегнат такива „замръзвания.“

Почти съм сигурен, че могат да се променят някои параметри на sysctl, за да се избягват подобни ситуации, но нещо ми подсказва, че това може да се направи по подразбиране за всички, защото нетехническите потребители, сблъсквайки се с такъв проблем, просто ще откажат да използват Linux и няма да им е до търсене на решения в Google.

В коментарите на Reddit някои потребители предлагат да се включи swap, но това не решава проблема, а само го отлага и често влошава. Като възможно решение в бъдеще може да бъде привлечена въведената в ядрото 4.20 и подобрена в ядрото 5.2 подсистема PSI (Pressure Stall Information), която позволява анализ на информацията за времето за изчакване при получаване на различни ресурси (CPU, памет, въвеждане/извеждане). Тази подсистема дава възможност за организиране на проследяване на недостатъчна памет на ранен етап, определяне на източника на проблемите и приключване на незначителни приложения, без да води до появата на забележими за потребителя ефекти.

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster