linux效能分析

tonykorn97發表於2006-04-21

1,CPU使用情況分析


利用vmstat 命令獲得彙總資訊.vmstat 有兩個引數:1,每行輸出需監視系統的秒數.2,提供的報告數.如果沒有提供指定報告的行數,vmstat會一直執行.直到按下時為止.vmstat返回的第一行資料提供了自系統引導起來以後的平均值.隨後的個行是再上一個取樣期內的平均值.預設的採用時間為5秒. $ 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 1 4 172944 248936 5954084 0 0 53 33 86 206 7 5 85 3 0 1 4 172932 248936 5954140 0 0 1561 50 1135 5024 4 6 45 45 2 1 4 172844 248936 5954296 0 0 2132 144 1465 6612 26 8 33 33 1 1 4 172716 248936 5954704 0 0 3140 194 1845 9565 26 8 36 30 1 1 4 172364 248936 5955512 0 0 1963 1062 1329 6709 24 8 29 39 使用者時間,系統時間和空間時間分別再US列,SY列ID列中顯示.使用者時間數值較大一般表示計算機處於執行狀態,而系統時間數值較大表示程式再再左大量系統呼叫或執行I/O操作.一種粗劣規則是系統中50%的非空閒時間將用於使用者空間,而另外50%用於系統時間;同時總統的空閒時間百分比不應該為0. Cs列顯示的是每個時間段中上下文切換的次數,也就是有核心切換當前執行程式的次數.每個時間間隔的中斷數(通常有硬體裝置或核心元件產生)在in列顯示,cs或in的數值極高一般標識應將裝置或執行有錯誤.其他列有助於分析記憶體核磁碟. Mpstat用於除錯SMP(sysmetric multiprocessing.對稱多處理器).-P引數可以指定一個要給出報告的特定處理器. 用uptime命令獲得負載的平均值.平均負載包括等待磁碟核網路I/O的程式,它並不是CPU使用情況的純粹指標. % uptime 14:05:05 up 112 days, 22:37, 5 users, load average: 1.84, 1.81, 1.33 給出的3個數值分別對應系統在5分鐘,10分鐘和15分鐘的平均負載, Linux系統在平均負載達到3的時候就處於繁忙狀態.而且不能很好地處理平均負載超過6的情況. Ps –aux Top 2,linux的記憶體管理. 和unix一樣,linux也是按照頁的單元來管理記憶體的.目前在pc硬體上,頁的大小為4kb.linux核心在程式需要記憶體的時候,分配給他們虛擬頁,每個虛擬頁都被眏射到實際儲存器上.既RAM或者磁碟上的交換空間.LINUX使用一個”頁表”(page table)”來跟蹤這些虛擬頁同實際頁之間的眏射關係.Linux用交換空間(swap space)來增加時間RAM的大小,有效地向程式提供它們所需要的記憶體.既然程式都以為他們的虛擬頁眏射到了實際的記憶體上,

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/312079/viewspace-245231/,如需轉載,請註明出處,否則將追究法律責任。

相關文章