用 'top -i' 看看有多少進(jìn)程處于 Running 狀態(tài),可能系統(tǒng)存在內(nèi)存或 I/O 瓶頸,用 free 看看系統(tǒng)內(nèi)存使用情況,swap 是否被占用很多,用 iostat 看看 I/O 負(fù)載情況...
目前創(chuàng)新互聯(lián)已為千余家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計(jì)、彭水苗族土家族網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
還有一種辦法是 ps -ef | sort -k7 ,將進(jìn)程按運(yùn)行時(shí)間排序,看哪個(gè)進(jìn)程消耗的cpu時(shí)間最多。
top:
主要參數(shù) :
free
1.作用
free命令用來顯示內(nèi)存的使用情況,使用權(quán)限是所有用戶。
**2.格式 **
**3.主要參數(shù) **
uptime
vmstat
**1 觀察磁盤活動情況 **
磁盤活動情況主要從以下幾個(gè)指標(biāo)了解:
**2 觀察cpu活動情況 **
vmstat比top更能反映出cpu的使用情況:
iostat
用于統(tǒng)計(jì)CPU的使用情況及tty設(shè)備、硬盤和CD-ROM的I/0量
即使爬到最高的山上,一次也只能腳踏實(shí)地地邁一步。
Linux查看CPU和內(nèi)存使用情況:
在做Linux系統(tǒng)優(yōu)化的時(shí)候,物理內(nèi)存是其中最重要的一方面。自然的,Linux也提供了非常多的方法來監(jiān)控寶貴的內(nèi)存資源的使用情況。下面的清單詳細(xì)的列出了Linux系統(tǒng)下通過視圖工具或命令行來查看內(nèi)存使用情況的各種方法。
1. /proc/meminfo
查看RAM使用情況最簡單的方法是通過 /proc/meminfo 。這個(gè)動態(tài)更新的虛擬文件實(shí)際上是許多其他內(nèi)存相關(guān)工具(如:free / ps / top)等的組合顯示。 /proc/meminfo 列出了所有你想了解的內(nèi)存的使用情況。進(jìn)程的內(nèi)存使用信息也可以通過/proc/pid/statm 和 /proc/pid/status 來查看。
atop命令是一個(gè)終端環(huán)境的監(jiān)控命令。它顯示的是各種系統(tǒng)資源(CPU, memory, network, I/O, kernel)的綜合,并且在高負(fù)載的情況下進(jìn)行了彩色標(biāo)注。
free命令是一個(gè)快速查看內(nèi)存使用情況的方法,它是對 /proc/meminfo 收集到的信息的一個(gè)概述。
GNOME System Monitor 是一個(gè)顯示最近一段時(shí)間內(nèi)的CPU、內(nèi)存、交換區(qū)及網(wǎng)絡(luò)的使用情況的視圖工具。它還提供了一種查看CPU及內(nèi)存使用情況的方法。
htop命令顯示了每個(gè)進(jìn)程的內(nèi)存實(shí)時(shí)使用率。它提供了所有進(jìn)程的常駐內(nèi)存大小、程序總內(nèi)存大小、共享庫大小等的報(bào)告。列表可以水平及垂直滾動。
功能同 4 中介紹的GENOME版本。
memstat是一個(gè)有效識別executable(s), process(es) and shared libraries使用虛擬內(nèi)存情況的命令。給定一個(gè)進(jìn)程ID,memstat可以列出這個(gè)進(jìn)程相關(guān)的可執(zhí)行文件、數(shù)據(jù)和共享庫。
nmon是一個(gè)基于ncurses的系統(tǒng)基準(zhǔn)測試工具,它可以監(jiān)控CPU、內(nèi)存、I/O、文件系統(tǒng)及網(wǎng)絡(luò)資源等的互動模式。對于內(nèi)存的使用,它可以實(shí)時(shí)的顯示 總/剩余內(nèi)存、交換空間等信息。
ps命令可以實(shí)時(shí)的顯示各個(gè)進(jìn)程的內(nèi)存使用情況。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”選項(xiàng)對進(jìn)程進(jìn)行排序,例如按RSS進(jìn)行排序:
smem命令允許你統(tǒng)計(jì)基于/proc信息的不同進(jìn)程和用戶的內(nèi)存使用情況。內(nèi)存使用情況的分析可以導(dǎo)出圖表(如條形圖和餅圖)。
top命令提供了實(shí)時(shí)的運(yùn)行中的程序的資源使用統(tǒng)計(jì)。你可以根據(jù)內(nèi)存的使用和大小來進(jìn)行排序。
vmstat命令顯示實(shí)時(shí)的和平均的統(tǒng)計(jì),覆蓋CPU、內(nèi)存、I/O等內(nèi)容。例如內(nèi)存情況,不僅顯示物理內(nèi)存,也統(tǒng)計(jì)虛擬內(nèi)存。
Linux系統(tǒng)基本的內(nèi)存管理知識講解
內(nèi)存是Linux內(nèi)核所管理的最重要的資源之一。內(nèi)存管理系統(tǒng)是操作系統(tǒng)中最為重要的部分,因?yàn)橄到y(tǒng)的物理內(nèi)存總是少于系統(tǒng)所需要的內(nèi)存數(shù)量。虛擬內(nèi)存就是為了克服這個(gè)矛盾而采用的策略。系統(tǒng)的虛擬內(nèi)存通過在各個(gè)進(jìn)程之間共享內(nèi)存而使系統(tǒng)看起來有多于實(shí)際內(nèi)存的內(nèi)存容量。Linux支持虛擬內(nèi)存, 就是使用磁盤作為RAM的擴(kuò)展,使可用內(nèi)存相應(yīng)地有效擴(kuò)大。核心把當(dāng)前不用的內(nèi)存塊存到硬盤,騰出內(nèi)存給其他目的。當(dāng)原來的內(nèi)容又要使用時(shí),再讀回內(nèi)存。
一、內(nèi)存使用情況監(jiān)測
(1)實(shí)時(shí)監(jiān)控內(nèi)存使用情況
在命令行使用“Free”命令可以監(jiān)控內(nèi)存使用情況
代碼如下:
#free
total used free shared buffers cached
Mem: 256024 192284 63740 0 10676 101004
-/+ buffers/cache: 80604 175420
Swap: 522072 0 522072
上面給出了一個(gè)256兆的RAM和512兆交換空間的'系統(tǒng)情況。第三行輸出(Mem:)顯示物理內(nèi)存。total列不顯示核心使用的物理內(nèi)存(通常大約1MB)。used列顯示被使用的內(nèi)存總額(第二行不計(jì)緩沖)。 free列顯示全部沒使用的內(nèi)存。Shared列顯示多個(gè)進(jìn)程共享的內(nèi)存總額。Buffers列顯示磁盤緩存的當(dāng)前大小。第五行(Swap:)對對換空間,顯示的信息類似上面。如果這行為全0,那么沒使用對換空間。在缺省的狀態(tài)下,free命令以千字節(jié)(也就是1024字節(jié)為單位)來顯示內(nèi)存使用情況??梢允褂谩猦參數(shù)以字節(jié)為單位顯示內(nèi)存使用情況,或者可以使用—m參數(shù)以兆字節(jié)為單位顯示內(nèi)存使用情況。還可以通過—s參數(shù)使用命令來不間斷地監(jiān)視內(nèi)存使用情況:
#free –b –s2
這個(gè)命令將會在終端窗口中連續(xù)不斷地報(bào)告內(nèi)存的使用情況,每2秒鐘更新一次。
(2)組合watch與 free命令用來實(shí)時(shí)監(jiān)控內(nèi)存使用情況:
代碼如下:
#watch -n 2 -d free
Every 2.0s: free Fri Jul 6 06:06:12 2007
total used free shared buffers cached
Mem: 233356 218616 14740 0 5560 64784
-/+ buffers/cache: 148272 85084
Swap: 622584 6656 615928
watch命令會每兩秒執(zhí)行 free一次,執(zhí)行前會清除屏幕,在同樣位置顯示數(shù)據(jù)。因?yàn)?watch命令不會卷動屏幕,所以適合出長時(shí)間的監(jiān)測內(nèi)存使用率??梢允褂?-n選項(xiàng),控制執(zhí)行的頻率;也可以利用 -d選項(xiàng),讓命令將每次不同的地方顯示出來。Watch命令會一直執(zhí)行,直到您按下 [Ctrl]-[C] 為止。
二、虛擬內(nèi)存的概念
(1)Linux虛擬內(nèi)存實(shí)現(xiàn)機(jī)制
Linux虛擬內(nèi)存的實(shí)現(xiàn)需要六種機(jī)制的支持:地址映射機(jī)制、內(nèi)存分配回收機(jī)制、緩存和刷新機(jī)制、請求頁機(jī)制、交換機(jī)制、內(nèi)存共享機(jī)制。
首先內(nèi)存管理程序通過映射機(jī)制把用戶程序的邏輯地址映射到物理地址,在用戶程序運(yùn)行時(shí)如果發(fā)現(xiàn)程序中要用的虛地址沒有對應(yīng)的物理內(nèi)存時(shí),就發(fā)出了請求頁要求;如果有空閑的內(nèi)存可供分配,就請求分配內(nèi)存(于是用到了內(nèi)存的分配和回收),并把正在使用的物理頁記錄在緩存中(使用了緩存機(jī)制)。 如果沒有足夠的內(nèi)存可供分配,那么就調(diào)用交換機(jī)制,騰出一部分內(nèi)存。另外在地址映射中要通過TLB(翻譯后援存儲器)來尋找物理頁;交換機(jī)制中也要用到交換緩存,并且把物理頁內(nèi)容交換到交換文件中后也要修改頁表來映射文件地址。
(2)虛擬內(nèi)存容量設(shè)定
也許有人告訴你,應(yīng)該分配2倍于物理內(nèi)存的虛擬內(nèi)存,但這是個(gè)不固定的規(guī)律。如果你的物理保存比較小,可以這樣設(shè)定。如果你有1G物理內(nèi)存或更多的話,可以縮小一下虛擬內(nèi)存。Linux會把大量的內(nèi)存用做Cache的,但在資源緊張時(shí)回收回.。你只要看到swap為0或者很小就可以放心了,因?yàn)閮?nèi)存放著不用才是最大的浪費(fèi)。
三、使甩vmstat命令監(jiān)視虛擬內(nèi)存使用情況
vmstat是Virtual Meomory Statistics(虛擬內(nèi)存統(tǒng)計(jì))的縮寫,可對操作系統(tǒng)的虛擬內(nèi)存、進(jìn)程、CPU活動進(jìn)行監(jiān)視。它是對系統(tǒng)的整體情況進(jìn)行統(tǒng)計(jì),不足之處是無法對某個(gè)進(jìn)程進(jìn)行深入分析。通常使用vmstat 5 5(表示在5秒時(shí)間內(nèi)進(jìn)行5次采樣)命令測試。將得到一個(gè)數(shù)據(jù)匯總它可以反映真正的系統(tǒng)情況。
代碼如下:
#vmstat 5 5
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
1 0 62792 3460 9116 88092 6 30 189 89 1061 569 17 28 54 2
0 0 62792 3400 9124 88092 0 0 0 14 884 434 4 14 81 0
0 0 62792 3400 9132 88092 0 0 0 14 877 424 4 15 81 0
1 0 62792 3400 9140 88092 0 0 0 14 868 418 6 20 74 0
1 0 62792 3400 9148 88092 0 0 0 15 847 400 9 25 67 0
vmstat命令輸出分成六個(gè)部分:
1.在Linux下查看內(nèi)存:free
2.查看進(jìn)程
3.實(shí)時(shí)顯示系統(tǒng)中各個(gè)進(jìn)程的資源占用狀況 top
4.
5.df 用于顯示 Linux 系統(tǒng)的磁盤利用率
6.du 命令
du是用于查找文件和目錄的磁盤使用情況的命令。du 命令在與各種選項(xiàng)一起使用時(shí)能以多種格式提供結(jié)果。
GNU調(diào)試器(GNU Debugger, GDB)是一個(gè)開源的源代碼級的調(diào)試工具,其性能優(yōu)良、功能齊全、易于使用,在嵌入式系統(tǒng)開發(fā)過程中扮演著越來越重要的角色。接下來是我為大家收集的[Linux]gdb查看內(nèi)存區(qū)命令,希望能幫到大家。
[Linux]gdb查看內(nèi)存區(qū)命令
用gdb查看內(nèi)存
格式: x /nfu
說明
x 是 examine 的縮寫
n表示要顯示的內(nèi)存單元的個(gè)數(shù)
f表示顯示方式, 可取如下值
x 按十六進(jìn)制格式顯示變量。
d 按十進(jìn)制格式顯示變量。
u 按十進(jìn)制格式顯示無符號整型。
o 按八進(jìn)制格式顯示變量。
t 按二進(jìn)制格式顯示變量。
a 按十六進(jìn)制格式顯示變量。
i 指令地址格式
c 按字符格式顯示變量。
f 按浮點(diǎn)數(shù)格式顯示變量。
u表示一個(gè)地址單元的長度
b表示單字節(jié),
h表示雙字節(jié),
w表示四字節(jié),
g表示八字節(jié)
Format letters are o(octal), x(hex), d(decimal), u(unsigned decimal),
t(binary), f(float), a(address), i(instruction), c(char) and s(string).
Size letters are b(byte), h(halfword), w(word), g(giant, 8 bytes)
舉例
x/3uh buf
表示從內(nèi)存地址buf讀取內(nèi)容,
h表示以雙字節(jié)為一個(gè)單位,
3表示三個(gè)單位,
u表示按十六進(jìn)制顯示
例子:
n是個(gè)局部變量
Breakpoint 1, main (argc=1, argv=0xbffff3a4) at calc.c:7
7 int n = atoi(argv[1]);
(gdb) print n
$1 = (int *) 0xbffff2ec
(gdb) x 0xbffff2ec
0xbffff2ec: 0x00282ff4
(gdb) print * (int *) 0xbffff2ec
$2 = 2633716
(gdb) x /4xw 0xbffff2ec
0xbffff2ec: 0x00282ff4 0x080484e0 0x00000000 0xbffff378
(gdb) x /4dw 0xbffff2ec
0xbffff2ec: 2633716 134513888 0 -1073745032
(gdb)
看了“[Linux]gdb查看內(nèi)存區(qū)命令”還想看:
1. Linux使用dmidecode命令查看內(nèi)存型號
2. Linux下查看CPU型號,內(nèi)存大小,硬盤空間命令
3. 如何在Linux命令行中查看目錄的大小
4. LINUX 查看硬件配置命令的教程
文章名稱:內(nèi)存linux命令詳解 linux查看內(nèi)存命令
文章出自:http://jinyejixie.com/article36/dddphpg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站改版、微信小程序、網(wǎng)站排名、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)