Câu hỏi Tại sao Ubuntu không dùng swap?


Tôi đang chạy Ubuntu 10.04 32 bit trên một máy AMD Phenom 4 lõi với 4GB RAM. Với việc sử dụng bình thường (một tá các tab Chrome, 1 máy VirtualBox, 2 hoặc 3 phiên bản của QtCreator), bộ nhớ đôi khi sẽ điền> 95% và máy sẽ trở nên chủ yếu là không hồi đáp.

Nếu tôi nhìn vào màn hình hệ thống trong thời gian này, nó cho thấy việc sử dụng bộ nhớ ở 95% + nhưng chỉ có một vài trăm MB của phân vùng trao đổi 9GB của tôi được sử dụng! Tại sao không có nhiều bộ nhớ chuyển sang trao đổi để tránh chạy ra ngoài?

Xem: http://imagebin.org/148884


1
2018-04-18 18:36


gốc


Bạn có thể muốn cài đặt pae hạt nhân để có được thiếu 800MiB RAM. - Bobby
Tôi có cùng một vấn đề. Tôi nghĩ rằng nó liên quan đến phiên bản Ubuntu cũ, một người bạn với cùng một vấn đề dường như đã sửa nó trong Ubuntu mới nhất (14.10). - ctn


Các câu trả lời:


Lấy bộ nhớ từ trao đổi rất chậm. Linux sử dụng tất cả bộ nhớ có sẵn để tiết kiệm một lượng nhỏ để chạy các lệnh nhanh chóng. Nó sẽ trao đổi khi bộ nhớ là cần thiết và không có sẵn thông qua các phương tiện khác.

Linux cũng đệm tất cả các tệp bạn đọc và ghi vào bộ nhớ trong bộ nhớ cache LRU. Những bộ đệm này có thể nhanh chóng được giải phóng nếu bộ nhớ là cần thiết bởi các chương trình. Với các chương trình bạn đang chạy, bạn có thể đang chạy thấp trên bộ đệm, và I / O mà thường được phục vụ ra khỏi bộ đệm đang được đọc từ đĩa.

Có một tham số swappiness bạn có thể điều chỉnh, nhưng bạn có thể muốn kiểm tra những gì đang xảy ra đầu tiên. Thử cài đặt sar tiện ích (gói sysstat) và chạy nó trong nền. Sau đó bạn có thể kiểm tra các tệp mà nó tạo ra để xem tài nguyên nào đang trở thành nút cổ chai.


3
2018-04-18 20:06





Để thêm vào phản hồi của Bill:

Hoán đổi nên tránh khi có thể vì phí. Tôi tin rằng các phiên bản mới hơn của Ubuntu có giá trị mặc định là 'swappiness' được đặt thành 10 (chỉ bắt đầu sử dụng Hoán đổi khi có <10% RAM). Tôi tin rằng điều này là khá phù hợp với những gì bạn đang nhìn thấy.

Nếu vì lý do nào đó bạn muốn bắt đầu sử dụng swap trước đó (ví dụ để có đủ ram miễn phí để khởi động một ảnh VM mới) thì bạn có thể xem xét tăng giá trị 'swappiness'. Hướng dẫn sau đây mô tả cách thực hiện điều này và cung cấp thông tin bổ sung (Xem phần "Tại sao việc hoán đổi của tôi không được sử dụng?").

https://help.ubuntu.com/community/SwapFaq


1