Có một ứng dụng có thể hiển thị việc sử dụng bộ nhớ theo cách tương tự như trên không?


8

Tôi muốn để một ứng dụng chạy trong thiết bị đầu cuối của mình hiển thị cho tôi cách sử dụng bộ nhớ, tương tự như cách tophiển thị CPU và thông tin khác và iotophiển thị người dùng I / O hàng đầu.

Đầu và iotop

Liệu một ứng dụng như vậy tồn tại?

PS Tôi biết top cũng cho thấy việc sử dụng bộ nhớ, nhưng tôi đang nói về việc sắp xếp theo mức sử dụng bộ nhớ hàng đầu và không hiển thị bất kỳ thông tin nào khác (tương tự như những gì iotop).


Trong đầu nhấn M và nó sẽ sắp xếp theo cách sử dụng bộ nhớ. Có phải đó là những gì bạn đang theo đuổi?
popey

Tôi cũng hơi không rõ những tính năng bạn muốn / không muốn, nhưng htoplà tính năng topthay thế tôi sử dụng. Mặc dù có vẻ như bạn đang tìm kiếm ít hơn nhưng các tính năng cụ thể hơn là nhiều tính năng hơn?
adempewolff

@adempewolff chính xác. Ví dụ, iotop thực hiện những gì nó nói - hiển thị việc sử dụng I / O cho các ứng dụng của tôi và không có gì khác. Tôi muốn có thể chạy nói, 'memtop` và chỉ cần sử dụng bộ nhớ%. htopkhông phải là thứ tôi đang tìm kiếm - bởi vì nó cho thấy những thứ khác (bao gồm cả việc sử dụng CPU) mà tôi đã nhận được top. Ý tôi là, tôi thích htop không nghi ngờ gì (tôi đã sử dụng nó trước đây), nhưng đó không phải là điều tôi đang tìm kiếm trong trường hợp này.
RolandiXor

Câu trả lời:


8

Gần nhất tôi có thể tìm thấy là memtop, một tập lệnh Python có sẵn ở đây trên Google Code.

Ảnh chụp màn hình: nhập mô tả hình ảnh ở đây

Cách sử dụng memtop

  • Đó là một tập lệnh Python, vì vậy chỉ cần thực hiện một sudo mv memtop-1.0.0.py /usr/bin/memtop.pyvà một chmod +x /path/to/memtop.pyđể làm cho nó có thể thực thi được
  • Thời gian cập nhật mặc định là 15 phút; sử dụng công tắc -p 1để thực hiện trong 1 phút, v.v. (không thể hạ thấp hơn mức đó trừ khi bạn sửa đổi nguồn)
  • Sử dụng -l N, trong đó N là số lượng quy trình bạn muốn hiển thị, tùy thuộc vào kích thước của thiết bị đầu cuối của bạn.
  • Sử dụng -mđể hiển thị thông tin "thêm", tức là thống kê Hoán đổi / Trang ở cuối ảnh chụp màn hình.

Các htop cải trang thành tùy chọn memtop

Nếu bạn không sử dụng htopcách khác, thật dễ dàng để thiết lập nó với tùy chọn thiết lập F2 để trông giống như memtop:

nhập mô tả hình ảnh ở đây

  • cấu hình htop được lưu trữ trong ~/.config/htop/htoprc, vì vậy chỉ cần xóa htoprcđể khôi phục htop bình thường .

Dự án vừa chuyển đến GitHub: github.com/MartinThoma/memtop
Martin Thoma

2

Tôi không biết về bất kỳ ứng dụng cụ thể nào để theo dõi những gì bạn muốn trong thời gian thực nhưng tôi đã tìm thấy một số thông tin có thể hữu ích.

Trước tiên, đây là một lệnh đơn giản để in thông tin này ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNS(tìm thấy ở đây: http://www.linuxquestions.org/questions/linux-general-1/how-to-show-the-memory-usage-per- Process-160181 / )

Thứ hai ở đây là một số thông tin thêm về các kịch bản để làm tương tự:

http://unixlive.editboard.com/t4-memory-usage-retriny-on-linux- Process-wise-and-general

http://unixlive.editboard.com/t5-how-much-ram-is- used-per-program

Bạn có thể viết kịch bản / chương trình của riêng bạn để đáp ứng nhu cầu của bạn. Tất cả thông tin bạn cần đều được cập nhật /proc/trong thời gian thực, nhưng bạn phải giải quyết hai vấn đề:

  1. Tôi nghi ngờ có bất kỳ một tập tin nào liệt kê tất cả các quy trình và việc sử dụng bộ nhớ của chúng trong thời gian thực. Thay vào đó, mọi quy trình đều có tệp riêng (trong /proc/[pid]/) và một số tệp tiềm năng để tìm thông tin này không thể đọc được - mặc dù tôi nghi ngờ điều đó statmstatuscó thông tin cần thiết và cả hai đều có thể đọc được.
  2. Hiển thị tất cả thông tin này trong thời gian thực. Tôi biết rất ít về bash scripting hoặc lập trình nhưng để hiển thị thông tin trong thời gian thực, bạn sẽ cần sử dụng một cái gì đó giống như nhiều taillệnh với một đường ống để chỉ sắp xếp / in thông tin mong muốn cho mỗi quy trình.

Không thực sự là một câu trả lời hoàn chỉnh, nhưng hy vọng điều này cung cấp cho bạn một số ý tưởng về những gì bạn có thể thử. Chúc may mắn!



1

htop là khá tuyệt vời. Nó khá nhẹ (không giống như màn hình hệ thống gnome. Đối với tôi, chương trình giám sát hệ thống thường là chương trình sử dụng nhiều nhất).

Nhấn F6, sau đó sử dụng các phím mũi tên hoặc chuột để chuyển sang sắp xếp theo MEM%.


2
Mặc dù tôi thích câu trả lời này và htop (tôi đã sử dụng nó trước đây) Tôi đang tìm kiếm một ứng dụng tuân theo nguyên tắc làm một việc và làm tốt (như iotop).
RolandiXor
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.