GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana cara melihat proses teratas yang diurutkan berdasarkan penggunaan memori yang sebenarnya?

gunakan tip cepat menggunakan perintah teratas di linux/unix

$ top

lalu tekan Shift +m (mis., tuliskan huruf besar M ).

Dari man top

SORTING of task window
  For compatibility, this top supports most of the former top sort keys.
  Since this is primarily a service to former top users, these commands do
  not appear on any help screen.
    command   sorted-field                  supported
      A         start time (non-display)      No
      M         %MEM                          Yes
      N         PID                           Yes
      P         %CPU                          Yes
      T         TIME+                         Yes

Atau sebagai alternatif:tekan Shift + f , lalu pilih tampilan untuk diurutkan berdasarkan penggunaan memori dengan menekan tombol n lalu tekan Enter . Anda akan melihat proses aktif yang diurutkan berdasarkan penggunaan memori


Pertama, ulangi mantra ini sebentar:"memori yang tidak digunakan adalah memori yang terbuang". Kernel Linux tetap besar jumlah metadata file dan file yang diminta, hingga sesuatu yang terlihat lebih penting mendorong data tersebut keluar. Itu sebabnya Anda dapat menjalankan:

find /home -type f -name '*.mp3'
find /home -type f -name '*.aac'

dan dapatkan find kedua instance berjalan dengan kecepatan yang tidak masuk akal.

Linux hanya menyisakan sedikit memori 'bebas' untuk menangani lonjakan penggunaan memori tanpa terlalu banyak usaha.

Kedua, Anda ingin menemukan proses yang memakan semua memori Anda; di top gunakan M perintah untuk mengurutkan berdasarkan penggunaan memori. Jangan ragu untuk mengabaikan VIRT kolom, yang hanya memberi tahu Anda berapa banyak memori virtual yang telah dialokasikan, bukan berapa banyak memori yang digunakan proses. RES melaporkan berapa banyak memori penduduk , atau saat ini di ram (berlawanan dengan ditukar ke disk atau tidak pernah benar-benar dialokasikan sejak awal, meskipun diminta).

Tapi, sejak RES akan menghitung mis. /lib/libc.so.6 memori sekali untuk hampir setiap proses, itu bukan ukuran yang luar biasa dari berapa banyak memori yang digunakan suatu proses. SHR kolom melaporkan berapa banyak memori yang dibagi dengan proses lain, tetapi tidak ada jaminan bahwa proses lain benar-benar berbagi -- proses tersebut dapat dibagikan, hanya saja tidak ada orang lain yang mau berbagi.

smem alat dirancang untuk membantu pengguna mengukur dengan lebih baik seberapa banyak memori yang harus benar-benar disalahkan pada setiap proses individu. Itu melakukan beberapa pekerjaan cerdas untuk mencari tahu apa yang benar-benar unik, apa yang dibagikan, dan secara proporsional menghitung memori bersama dengan proses yang membagikannya. smem dapat membantu Anda memahami di mana memori Anda lebih baik daripada top akan, tapi top adalah alat pertama yang luar biasa.


Linux
  1. Bagaimana saya bisa mengukur penggunaan memori sebenarnya dari suatu aplikasi atau proses?

  2. Bagaimana cara membatasi penggunaan memori aplikasi?

  3. Menyortir proses berdasarkan penggunaan memori

  1. Temukan 15 Proses Teratas berdasarkan Penggunaan Memori dengan 'atas' dalam Mode Batch

  2. Bagaimana cara mengurangi penggunaan memori ClamAV?

  3. Bagaimana penggunaan memori dilaporkan di Linux?

  1. Temukan Proses Berjalan Teratas berdasarkan Memori dan Penggunaan CPU Tertinggi di Linux

  2. Cara Menemukan Proses Berjalan Teratas berdasarkan Memori dan Penggunaan CPU

  3. Bagaimana Cara Menampilkan Hasil `top` Diurutkan Berdasarkan Penggunaan Memori Secara Real Time?