Điểm:0

/proc/meminfo hiển thị MemFree lớn hơn MemAvailable - Điều đó có hợp lý không?

lá cờ in

Từ những gì tôi có thể hiểu từ thay đổi này trong Linux đã báo cáo việc sử dụng bộ nhớ, /proc/meminfo báo cáo MemFree như RAM hiện chưa được sử dụng và Có sẵn vì RAM hiện có sẵn cho các quy trình mới mà không cần hoán đổi.

Từ đó, không nên MemFree được chứa trong Có sẵn, do đó luôn nhỏ hơn hoặc bằng nó? Tôi đoán RAM chưa sử dụng cũng có sẵn cho các quy trình mới mà không cần hoán đổi. Hay tôi đang hiểu nhầm phần "Không thể lấy bộ nhớ trống bên dưới hình mờ thấp" (đoạn thứ 4 từ bản vá)?

Các giá trị này phù hợp, như mong đợi, miễn phíhàng đầu đầu ra.

Tôi đã thấy điều này trong một máy ảo Exadata với các thông số kỹ thuật sau:

mèo/etc/Oracle-phát hành 
Máy chủ Oracle Linux phát hành 7.8

uname -r
4.14.35-1902.306.2.1.el7uek.x86_64

rpm -q hệ thống
sysstat-10.1.5-19.el7.x86_64

Đầy /proc/meminfo tại một thời điểm tùy ý, nếu nó giúp:

MemTotal: 19995464 kB
MemFree: 2963684 kB
Bộ nhớ có sẵn: 1063344 kB
Bộ đệm: 406124 kB
Bộ nhớ cache: 2609256 kB
SwapCached: 9648 kB
Đang hoạt động: 4632640 kB
Không hoạt động: 2348256 kB
Đang hoạt động (không hoạt động): 3882372 kB
Không hoạt động (không hoạt động): 700524 kB
Hoạt động (tệp): 750268 kB
Không hoạt động (tệp): 1647732 kB
Không thể tránh khỏi: 634040 kB
Đã khóa: 634044 kB
SwapTotal: 16777212 kB
SwapMiễn phí: 16579068 kB
Bẩn: 1684 kB
Viết lại: 0 kB
Trang Anon: 4592704 kB
Đã ánh xạ: 384108 kB
Shmem: 484212 kB
Tấm: 511064 kB
SCó thể nhận lại: 249660 kB
Yêu cầu bồi thường: 261404 kB
KernelStack: 23184 kB
Bảng trang: 96648 kB
NFS_Không ổn định: 0 kB
Thoát: 0 kB
Ghi lạiTmp: 0 kB
Giới hạn cam kết: 24602016 kB
Đã cam kết_AS: 5737344 kB
VmallocTổng: 34359738367 kB
VmallocĐã sử dụng: 0 kB
VmallocChunk: 0 kB
Phần cứng bị hỏng: 0 kB
AnonHugePages: 0 kB
ShmemHugeTrang: 0 kB
ShmemPmdMapped: 0 kB
CmaTổng: 0 kB
CmaMiễn phí: 0 kB
HugePages_Total: 2122
HugePages_Free: 590
HugePages_Rsvd: 1
HugePages_Surp: 0
Kích thước trang lớn: 2048 kB
DirectMap4k: 833536 kB
DirectMap2M: 15943680 kB
DirectMap1G: 5242880 kB

Cảm ơn,
Emerson

lá cờ jp
Công thức cho MemAvailable nằm trong mã bạn đã liên kết đến.
lá cờ in
@AlexD Có. Vấn đề là sự hiểu biết của tôi - từ công thức đó, có thể có nhiều RAM khả dụng hơn RAM miễn phí không?
lá cờ jp
`có sẵn = i.freeram - wmark_low`. Điều đó có nghĩa là giá trị ban đầu được gán cho `MemAvailable` là `(MemFree - hình mờ thấp)` nhỏ hơn `MemFree`.
lá cờ in
@AlexD Có ý nghĩa. Hình mờ thấp có thể lớn hơn các thành phần khác của MemAvailable. Tôi thực sự nghĩ rằng điều đó là không thể, nhưng có lẽ đó là một trường hợp cạnh bình thường. Tôi đoán đó là nó. Bạn sẽ đăng lại đó như một câu trả lời?
Điểm:1
lá cờ jp

Mã bắt đầu như có sẵn = i.freeram - wmark_low.

Nó có nghĩa là giá trị ban đầu được gán cho Có sẵn(MemFree - hình mờ thấp) nhỏ hơn MemFree.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.