我們知道性能優化以及確定Aix系統中的性能瓶頸是系統管理員的主要任務之一。在一個計算機系統中,CPU、內存、硬盤和網絡是影響系統性能的主要因素,因此系統性能調整也主要在於如何在這些資源中獲得某種平衡,以滿足人們對系統性能的期望。性能調制需要很多技巧,知識以及經驗,不能僅靠分析統計數字,圖表就可取得,性能調制有時是一件復雜甚至是非常困難的任務。
1.Aix系統ps
ps命令是UNIX系統中最常見的命令,它主要顯示系統中關於進程的統計和狀態信息,如進程ID,I/O行為以及CPU利用率等。利用ps命令提供的信息,可決定一個進程運行了多長時間,進程使用了多少CPU時間,以及進程是否受系統的懲罰。還可用ps命令確定進程使用了多少內存,完成多少I/O,進程的優先級以及是誰創建了進程。
下面這幾個命令組合對於管理RS/6000 Aix系統有幫助:
(1)顯示10個消耗CPU最多的進程:
# ps aux |head -1 ;ps aux |sort -rn +2 |head –10
(2)顯示10個消耗存儲空間最多的進程:
# ps aux |head -1 ;ps aux |sort -rn +3 |head -10
(3)按順序顯示系統中受罰的進程:
#ps -eakl |head -1 ;ps -eakl |sort -rn +5
(4)按優先級順序顯示系統中的進程:
#ps -eakl |sort -n +6 |head
(5)按處理時間為順序顯示系統中的前十個進程:
#ps vx |head -1 ;ps vx |grep -v PID |sort -rn +3 |head –10
(6)按實際內存使用的多少順序顯示系統中的前十個進程:
#ps vx |head -1 ;ps vx |grep -v PID |sort -rn +6 |head –10
(7)按換入頁面的多少順序顯示系統中的前10個進程:
#ps vx |head -1 ;ps vx |grep -v PID |sort -rn +4 |head -10
2、Aix系統vmstat
vmstat命令報告關於核心線程,虛擬內存,自陷(trap),磁盤以及CPU行為的統計。而且每種行為報告都被更細致地用百分比分別表示用戶態、核態、空閒以及等待磁盤I/O等情況。
內核維持了對核心線程,換頁以及中斷行為的統計數據,而vmstat命令則通過使用knlist子程序和/dev/kmen偽設備驅動器訪問這些數據。磁盤的輸入/輸出統計是通過設備驅動器維持的。對於磁盤,平均傳輸速度是通過使用活躍時間核傳輸信息數目決定的。而活躍時間百分比則是從報告期間驅動器忙的時間量計算出來的。
vmstat命令產生五種類型的報告:
· 虛存行為報告
· fork子進程情況報告
· 每個設備產生的中斷情況報告
· 匯總報告
· 輸入/輸出行為報告
3、Aix系統sar
sar命令報告CPU的使用情況,I/O以及其它系統行為。sar命令可以收集,報告以及保存系統行為信息。如果沒有指定輸入文件,則sar調用sarc命令訪問系統數據。
用戶可用讓cron命令運行兩個shell腳本(/usr/lib/sa/sa1和/usr/lib/sa2)以提供日統計和報表。
在crontab文件/var/spool/cron/crontabs/adm中包括了一些樣本節,用於示范cron要在何時運行這些shell腳本。以這種方式收集到的數據對於確定系統的時間周期特征和決定峰值使用時間是有用的。
但要注意的是,sar命令自己運行時會產生相當數量的讀寫。因此最好在沒有工作量的情況下運行sar統計,看看sar對總的統計數字有多大的影響。
4、Aix系統topas
topas命令用於監控各種系統資源,如CPU的使用情況,CPU事件和隊列,內存和換頁空間的使用,磁盤性能,網絡性能以及NFS統計等。它還會報告指派給不同WLM類的進程對系統資源的消耗情況。它還能報告系統中最熱門的進程和工作量管理器(WLM)的熱門類。有關WLM類信息只有在WLM激活時才會顯示。
topas命令將熱門進程定義為那些使用大量CPU時間的進程。topas命令沒有作日志的選項,所有信息都是實時的。 topas命令利用System Performance Measurement Interface(SPMI)API獲得有關信息。正是因為通過SPMI API,使系統開銷保持在最小程度。topas命令使用perfstat庫調用訪問perfstat內核擴展。
5、Aix系統truss
truss命令跟蹤一個進程的系統調用、所接收的信號以及招致的機器錯。要檢查的應用程序可在truss命令的命令行中指定,也可將truss命令掛在一個或多個已經在運行的進程上。
我們這次對Aix系統的知識就介紹到這裡吧。