Làm cách nào để tìm kích thước bộ nhớ thường trú của một tiến trình trên busybox?


14

Tôi chạy toptrên busybox và nó hiển thị tất cả các quy trình và kích thước bộ nhớ ảo của chúng.

Làm cách nào để xác định lượng RAM đang được sử dụng cho mỗi quy trình?

Câu trả lời:


16

Trên busybox, "ps" không có tùy chọn "-o", nhưng "ps l" bao gồm cột RSS.

Nếu O / S cơ bản là Linux, bạn cũng có thể nhận được các chi tiết cụ thể hơn cho một quy trình nhất định từ:

cat /proc/PID/status

Đầu ra trông như thế này:

Tên: tro
Bang: S (đang ngủ)
Tgid: 1990
Pid: 1990
PPid: 1
TracerPid: 0
Uid: 0 0 0 0
Gid: 0 0 0 0
FDSize: 32
Nhóm: 0 
VmPeak: 1592 kB
Kích thước VmS: 1592 kB
VmLck: 0 kB
VmPin: 0 kB
VmHWM: 552 kB
VmRSS: 552 kB
VmData: 268 kB
VmStk: 136 kB
VmExe: 688 kB
VmLib: 472 kB
VmPTE: 16 kB
VmSwap: 0 kB
Chủ đề: 1
SigQ: 14/340
SigPnd: 0000000000000000000000000000000000
ShdPnd: 00000000000000000000000000000000
SigBlk: 0000000000000000000000000000000000
SigIgn: 00000000000000000000000004804004
SigCgt: 00000000000000000000000000080002
CapInh: 0000000000000000
CapPrm: fffffffffffffffff
CapEff: fffffffffffffffff
CapBnd: fffffffffffffffff
Cpus_allowed: 1
Cpus_allowed_list: 0
tự nguyện_ctxt_switches: 49
nonvoluntary_ctxt_switches: 15

Trong danh sách này, VmRSS là bộ cư trú hiện tại và VmHWM là bộ cư trú có mức nước cao.


BusyBox psđã hỗ trợ -otừ năm 2006 , nhưng cần được xây dựng với tùy chọn xây dựng "DESKTOP".
JdeBP

12
ps -o pid,user,vsz,rss,comm,args

Cột thứ 4 (rss) là kích thước cài đặt thường trú, bộ nhớ vật lý không hoán đổi được sử dụng bởi một tác vụ, tính bằng kiloBytes.


không có cờ -o trên busybox ps
Chad G

Có nếu nó được xây dựng để có nó. Xem câu trả lời của Andrew Fullford.
JdeBP

-1
 ps -q pid -o rss= 

cái này nên hoạt động


2
Vui lòng thêm nền tảng bạn đang chạy. My pskhông có -qtùy chọn và tôi đang chạy suse linux.
Sman865

1
Có vẻ như phiên bản busybox của ps(cam kết mới nhất 4e08a12 của tháng 1 năm 2017) cũng không có tùy chọn đó.
AdminBee

-qpidlist Chọn theo PID (chế độ nhanh). Điều này chọn các quá trình có số ID quá trình xuất hiện trong danh sách. Với tùy chọn này, ps chỉ đọc thông tin cần thiết cho các pid được liệt kê trong pidlist và không áp dụng các quy tắc lọc bổ sung. Thứ tự của các lỗ là không được sắp xếp và bảo quản. Không có tùy chọn lựa chọn bổ sung, sắp xếp và danh sách loại rừng được cho phép trong chế độ này. Đồng nhất với q và --quick-pid.
Kevdog777

@ Kevdog777 bạn có thể chỉ định nền tảng này được triển khai không? Nó dường như không phải là một yêu cầu POSIX . Bên cạnh đó, OP đã hỏi rõ ràng về môi trường busybox ...
AdminBee

Xin lỗi @AdminBee, tôi thấy rằng ở đây: man7.org/linux/man-pages/man1/ps.1.html vì mọi người không biết -qý nghĩa của nó. Vì vậy, nó chỉ nói Linux.
Kevdog777
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.