複製鏈接
請複製以下鏈接發送給好友

DTrace

鎖定
DTrace(全稱Dynamic Tracing),也稱為動態跟蹤,是由 Sun™ 開發的一個用來在生產和試驗性生產系統上找出系統瓶頸的工具,可以對內核(kernel)和用户應用程序(user application)進行動態跟蹤並且對系統運行不構成任何危險的技術。在任何情況下它都不是一個調試工具, 而是一個實時系統分析尋找出性能及其他問題的工具。 DTrace 是個特別好的分析工具,帶有大量的幫助診斷系統問題的特性。還可以使用預先寫好的腳本利用它的功能。 用户也可以通過使用 DTrace D 語言創建他們自己定製的分析工具, 以滿足特定的需求。
軟件名稱
DTrace
產    生
函數調用的線程
供職於
Sun

目錄

DTrace簡介

1997年,供職於Sun而現已是Solaris內核研發部高級工程師的Bryan Cantrill 和他的工作組在緊張地研究一個性能問題,他出現在剛剛提及的Sun E10000服務器。該服務器在運行基準測試時,速度突然在一段時間內奇怪地降低。工作組經過六天夜以繼日的工作後,終於發現了問題的根本原因。某個“愚蠢之極”的配置錯誤將服務器配置成了路由器
“我很受震驚,”Cantrill 説到, “這是任何一個客户都可能碰到的問題,但是他們可不敢奢望讓內核研發人員為之夜以繼日地工作,編寫自定義代碼以弄清楚問題。我們得找出一個更好的方法。” 經過兩年半的緊張研發,Cantrill和他的工作組終於研究出了這個更好的方法: Dtrace 。

DTrace特性

DTrace是過去十年中在操作系統方面最具意義的革新之一。Solaris中分散着30,000多的位置指針,也叫探測器probes,DTrace可激活成千上萬的探測器,記錄所關注的位置指定的數據,如命中,即可從該地址顯示用户進程或系統內核的數據,從而瞭解系統,包括:
1。任何函數的參數
2。內核的任何全局變量
3。函數調用的時間(NS,十億分之一秒,無任何其他PC/Unix在ns一級精度)
4。跟蹤堆棧,包括指明函數調用的代碼
5。函數調用時運行的進程
6。產生函數調用的線程
7。統計調用次數、磁盤佔用等信息
Dtrace在追蹤之外,也支持對系統的採樣。 [1] 

DTrace操作系統

除Solaris系列以外,Dtrace已先後被移植到FreeBSD、NetBSD及Mac OS X等操作系統上。
參考資料