Kernel Linux tidak dapat menangani situasi kehabisan memori dengan baik

Di milis pengembang kernel Linux dinaikkan Masalah dalam menangani situasi memori rendah di Linux:

Ada masalah umum yang telah menjangkiti banyak orang selama bertahun-tahun dan dapat terjadi kembali dalam waktu kurang dari beberapa menit pada kernel Linux 5.2.6 terbaru. Semua parameter kernel diatur ke nilai default.

Langkah-langkah:

  • Boot dengan parameter β€œmem=4G”.
  • Matikan dukungan swap (sudo swapoff -a).
  • Kami meluncurkan browser web apa pun, misalnya Chrome/Chromium dan/atau Firefox.
  • Kami mulai membuka tab dengan situs dan melihat bagaimana jumlah memori bebas berkurang.

Segera setelah situasi muncul ketika tab baru membutuhkan lebih banyak RAM daripada yang tersedia, sistem hampir berhenti berfungsi sepenuhnya. Anda bahkan akan kesulitan menggerakkan kursor mouse. Indikator hardisk akan berkedip terus-menerus (saya tidak tahu kenapa). Anda tidak akan dapat meluncurkan aplikasi baru atau menutup aplikasi yang sedang berjalan.

Krisis kecil ini bisa berlangsung beberapa menit atau lebih lama. Saya kira sistem seharusnya tidak berperilaku seperti ini. Saya pikir sesuatu perlu dilakukan untuk menghindari β€œpembekuan” seperti itu.

Saya cukup yakin mungkin untuk mengubah beberapa parameter sysctl untuk menghindari situasi seperti ini, tetapi ada yang memberitahu saya bahwa ini bisa menjadi default untuk semua orang karena pengguna non-teknis yang mengalami masalah ini akan menyerah begitu saja menggunakan Linux dan tidak mau. peduli.untuk mencari solusi di Google.

Π’ komentar di Reddit, beberapa pengguna menyarankan untuk mengaktifkan swap, tetapi ini tidak menyelesaikan masalah, hanya menundanya dan sering kali memperburuk masalah. Sebagai solusi yang mungkin di masa depan, kernel yang muncul mungkin terlibat 4.20 dan ditingkatkan pada intinya 5.2 Subsistem PSI (Pressure Stall Information), yang memungkinkan Anda menganalisis informasi tentang waktu tunggu untuk menerima berbagai sumber daya (CPU, memori, I/O). Subsistem ini memungkinkan untuk mengatur pemantauan kekurangan memori pada tahap awal, menentukan sumber masalah dan menghentikan aplikasi yang tidak penting tanpa menimbulkan efek yang nyata bagi pengguna.

Sumber: opennet.ru

Tambah komentar