Tôi có một máy Linux khá cũ với 2GB ram, không trao đổi và nó hoạt động rất tốt, với hệ thống sử dụng mọi bộ nhớ không sử dụng để lưu vào bộ nhớ cache có hiệu quả tuyệt vời.
Tuy nhiên, khi tôi sắp hết căng thẳng bộ nhớ (ví dụ:> 1950 MB được phân bổ), nó sẽ chậm để thu thập dữ liệu; Tôi nghi ngờ đó là vì không còn bộ đệm đĩa. Tôi biết rằng kẻ giết người OOM sẽ sớm có hiệu lực, nhưng nó không thường xảy ra ở đó - nó trở nên chậm đến mức tải bắn tới 30-40, không có quá trình nào tạo ra bất kỳ tiến triển nào (do đó không phân bổ thêm bộ nhớ) và Tôi phải khởi động lại nó.
Khi tôi cố gắng chỉ giết một tiến trình để khiến máy phản hồi, ví dụ: bằng cách vào bảng điều khiển (thông qua Alt-F1, đăng nhập và chỉ thực hiện một "killall bad Process"), nó thường hoạt động, ngoại trừ việc tôi phải chờ ~ 10 phút giữa người dùng / mật khẩu và nhận được lời nhắc - tất cả trong khi có hoạt động của đĩa.
Một lần nữa, không có trao đổi, vì vậy nó không trao đổi - nó chỉ bị đập bởi vì nó không còn bộ đệm.
Tôi hầu như chỉ dành riêng 100 MB cho bộ đệm đĩa, điều này sẽ kích hoạt trình diệt OOM trước đó (ít bộ nhớ hơn cho các chương trình), nhưng mặt khác sẽ luôn khiến máy phản ứng nhanh.
Có cách nào làm được việc này không? Tôi chưa thể tìm thấy mục / Proc / kernel hoặc / sys / vm thực hiện loại điều này.