# errpt -a|more
# errpt -a -j 74533D1A 顯示指定錯誤的詳細描述
# errpt -s 0108100100
Aix下支持完整的coredump文件:
使用 lsattr–El sys0 查詢是否將 fullcore打開,
使用 chdev -l sys0 -a fullcore=true將 fullcore 狀態更改爲打開
procstack輸出進程的堆棧跟蹤。
procflags輸出進程的未處理信號和持有的信號。
procsig輸出進程的信號操作和處理程序。
procfiles報告每個進程中所有打開的文件的 fstat 和 fcntl信息。
procwdx輸出分別用於停止和重新運行進程的 procstop 和 procrun 的當前工作目錄。
proctree輸出包含指定進程 ID (PID) 或用戶的進程樹,子進程相對於父進程縮進顯示。
truss 生成跟蹤信息,包括進程執行的系統調用、它收到的信號和它導致的機器錯誤。在默認情況下,不跟蹤用戶級函數。可以使用 truss -u '*' -p <pid>啓用對所有用戶級函數的跟蹤。
晚分配和早分配
在默認情況下,內存和分頁空間採用晚分配。PSALLOC環境變量控制分配機制。
#export PSALLOC=early
在默認情況下,當調用 malloc時並不分配分頁空間,而是到引用它時才分配。malloc 可能會過量分配內存,其他進程可能在當前進程之前獲得資源,這會導致錯誤。把 PSALLOC設置爲“early”可以保證進程獲得內存分配請求所請求的分頁空間。
進程的內存使用量
ps 命令報告 malloc 分配的內存,但是不包含 mmap分配的內存。svmon 報告完整的進程內存使用情況。
#svmon -P <pid> -m -r -i <interval>
調試的系統設置,列出 sys0
lsattr -El sys0
得到屬性:
autorestart—在崩潰之後自動地重新引導系統
fullcore—啓用/禁用完整的核心轉儲
maxuproc—每個用戶允許的最大進程數量
修改系統屬性
chdev -l sys0 -a attribute=value
Linux的系統日誌/var/log/messages;
Sun的系統日誌/var/adm/messages
HP系統的日誌/var/adm/syslog/syslog.log