Hệ thống sẽ làm gì với 20% còn lại?
Nhân sẽ sử dụng bộ nhớ vật lý còn lại cho các mục đích riêng của nó (cấu trúc bên trong, bảng, bộ đệm, bộ đệm, bất cứ thứ gì). Cài đặt overcommitment bộ nhớ xử lý các đặt chỗ bộ nhớ ảo ứng dụng người dùng, kernel không sử dụng bộ nhớ ảo mà là bộ nhớ vật lý.
Tại sao thông số này được yêu cầu ở vị trí đầu tiên?
Các overcommit_ratio
tham số là một sự lựa chọn thực hiện thiết kế để ngăn chặn các ứng dụng dự trữ bộ nhớ ảo nhiều hơn những gì hợp lý sẽ có sẵn cho họ trong tương lai, tức là khi họ thực sự truy cập vào bộ nhớ (hoặc ít nhất là cố gắng để).
Việc đặt overcommit_ratio
thành 50% đã được các nhà phát triển nhân Linux coi là giá trị mặc định hợp lý. Nó giả định rằng kernel sẽ không bao giờ cần sử dụng hơn 50% RAM vật lý. Số dặm của bạn có thể thay đổi, lý do tại sao nó là một điều chỉnh.
Tại sao tôi không nên luôn luôn đặt nó thành 100%?
Đặt nó thành 100% (hoặc bất kỳ giá trị "quá cao" nào) sẽ không vô hiệu hóa quá mức đáng tin cậy vì bạn không thể cho rằng hạt nhân sẽ sử dụng 0% (hoặc quá ít) RAM.
Nó sẽ không ngăn các ứng dụng bị sập vì kernel có thể chiếm ưu thế dù sao tất cả bộ nhớ vật lý mà nó yêu cầu.