Linux kernel ne može elegantno da se nosi sa situacijama nedostatka memorije

Na mailing listi za programere Linux kernela podignuta Problem s rješavanjem situacije s malo memorije u Linuxu:

Postoji poznati problem koji muči mnoge ljude dugi niz godina i može se reproducirati za manje od nekoliko minuta na najnovijem Linux kernelu 5.2.6. Svi parametri kernela su postavljeni na zadane vrijednosti.

Koraci:

  • Pokrenite sistem sa parametrom “mem=4G”.
  • Isključite podršku za zamjenu (sudo swapoff -a).
  • Pokrećemo bilo koji web pretraživač, na primjer, Chrome/Chromium i/ili Firefox.
  • Počinjemo otvarati kartice sa web lokacijama i gledati kako se smanjuje količina slobodne memorije.

Čim se pojavi situacija da nova kartica zahtijeva više RAM-a nego što je dostupno, sistem se gotovo potpuno zamrzne. Imat ćete poteškoća čak i sa pomicanjem kursora miša. Indikator tvrdog diska će treptati bez prestanka (ne znam zašto). Nećete moći pokrenuti nove aplikacije niti zatvoriti one koje su trenutno pokrenute.

Ova mala kriza može trajati nekoliko minuta ili duže. Pretpostavljam da se sistem ne bi trebao tako ponašati. Mislim da treba nešto učiniti da se izbjegnu ovakva „zamrzavanja“.

Prilično sam siguran da je moguće promijeniti neke sysctl parametre kako bi se izbjegla ovakva situacija, ali nešto mi govori da bi ovo moglo biti zadano za sve jer će netehnički korisnici koji se susreću s ovim problemom jednostavno odustati od korištenja Linuxa i neće briga. kako biste tražili rješenja na Googleu.

В komentari na Redditu neki korisnici predlažu omogućavanje zamjene, ali to ne rješava problem, samo ga odlaže i često pogoršava. Kao moguće rješenje u budućnosti može biti uključen i pojavio u kernelu 4.20 i poboljšana u jezgru 5.2 PSI (Pressure Stall Information) podsistem, koji vam omogućava da analizirate informacije o vremenu čekanja za prijem različitih resursa (CPU, memorija, I/O). Ovaj podsistem omogućava organizovanje praćenja nedostatka memorije u ranoj fazi, utvrđivanje izvora problema i ukidanje nevažnih aplikacija bez izazivanja efekata uočljivih za korisnika.

izvor: opennet.ru

Dodajte komentar