Linux查看CPU和內存使用情況:http://www.cnblogs.com/xd502djj/archive/2011/03/01/1968041.html
在做Linux系統優化的時候,物理內存是其中最重要的一方面。自然的,Linux也提供了非常多的方法來監控寶貴的內存資源的使用情況。下面的清單詳細的列出了Linux系統下通過視圖工具或命令行來查看內存使用情況的各種方法。
1. /proc/meminfo
查看RAM使用情況最簡單的方法是通過/proc/meminfo
。這個動態更新的虛擬文件實際上是許多其他內存相關工具(如:free / ps / top)等的組合顯示。/proc/meminfo
列出了所有你想了解的內存的使用情況。進程的內存使用信息也可以通過/proc/<pid>/statm 和 /proc/<pid>/status 來查看。
1 |
$ cat /proc/meminfo |
2. atop
atop命令是一個終端環境的監控命令。它顯示的是各種系統資源(CPU, memory, network, I/O, kernel)的綜合,並且在高負載的情況下進行了彩色標注。
1 |
$ sudo atop |
3. free
free命令是一個快速查看內存使用情況的方法,它是對 /proc/meminfo 收集到的信息的一個概述。
1 |
$ free -h |
4. GNOME System Monitor
GNOME System Monitor 是一個顯示最近一段時間內的CPU、內存、交換區及網絡的使用情況的視圖工具。它還提供了一種查看CPU及內存使用情況的方法。
1 |
$ gnome-system-monitor |
5. htop
htop命令顯示了每個進程的內存實時使用率。它提供了所有進程的常駐內存大小、程序總內存大小、共享庫大小等的報告。列表可以水平及垂直滾動。
1 |
$ htop |
6. KDE System Monitor
功能同 4 中介紹的GENOME版本。
1 |
$ ksysguard |
7. memstat
memstat是一個有效識別executable(s), process(es) and shared libraries使用虛擬內存情況的命令。給定一個進程ID,memstat可以列出這個進程相關的可執行文件、數據和共享庫。
1 |
$ memstat -p <PID> |
8. nmon
nmon是一個基於ncurses的系統基准測試工具,它可以監控CPU、內存、I/O、文件系統及網絡資源等的互動模式。對於內存的使用,它可以實時的顯示 總/剩余內存、交換空間等信息。
1 |
$ nmon |
9. ps
ps命令可以實時的顯示各個進程的內存使用情況。Reported memory usage information includes %MEM (percent of physical memory used), VSZ (total amount of virtual memory used), and RSS (total amount of physical memory used)。你可以使用 “–sort”選項對進程進行排序,例如按RSS進行排序:
1 |
$ ps aux --sort -rss |
10. smem
smem命令允許你統計基於/proc信息的不同進程和用戶的內存使用情況。內存使用情況的分析可以導出圖表(如條形圖和餅圖)。
1 |
$ sudo smem --pie name -c "pss" |
11. top
top命令提供了實時的運行中的程序的資源使用統計。你可以根據內存的使用和大小來進行排序。
1 |
$ top |
12. vmstat
vmstat命令顯示實時的和平均的統計,覆蓋CPU、內存、I/O等內容。例如內存情況,不僅顯示物理內存,也統計虛擬內存。
1 |
$ vmstat -s |