dtrace

    0熱度

    1回答

    我在申請中列出的探針: sudo dtrace -p "$(pgrep run)" -ln 'pid$target:QtCore:*sendPostedEvents*:entry {}' ID PROVIDER MODULE FUNCTION NAME 8037 pid53854 QtCore QCoreApplication::sendPostedEvents(Q

    2熱度

    1回答

    對於前 - 你有TextEdit應用程序,當你保存文件時,我想知道哪些objective-c方法被調用。我有使用類轉儲的Textedit頭文件。 是否有任何方法知道這些方法(我們從類轉儲輸出)在運行時被調用? 有沒有辦法用dtrace做?

    1熱度

    1回答

    opensnoop從DTrace可以顯示哪些文件是由程序/ pid打開。它不追蹤分叉/ vforked兒童打開。相關dtruss有以下功能。 有沒有辦法告訴opensnoop也跟隨孩子?

    2熱度

    1回答

    我需要調試我的Solaris內核模塊,特別是抽取引用傳遞給我的內核函數的結構中的數據。 msg_recv(sk_buff *skbp, uint_t link, uchar_t* src) { pkt_hdr_t *pkt; pkt = (pkt_hdr_t *)skbp->data; port = pkt->port; } 我在linux中編寫了一個sys

    1熱度

    1回答

    我想知道什麼系統調用是由echo(該命令,而不是內置的shell)產生的,所以我決定通過dtrace監聽它。具體而言,我使用了dtruss。 考慮到了以下工作(跟蹤由sed所做的所有的系統調用): sudo dtruss /usr/local/bin/sed 's/a/e/' <<< 'cat' SYSCALL(args) = return thread_selfid(0x0, 0x0, 0

    1熱度

    1回答

    有一個用戶進程1可以'執行'第二個進程2。如果我不知道什麼時候可以創建,我可以跟蹤第二個過程-2。在不知道pid的情況下,我不能在dtrace腳本中同時使用'-p'和'-c'選項,也不想手動執行該過程。 使用PID提供程序我得到一個名稱空間錯誤(函數不屬於進程1)。我想「:: functio_name:進入/ execname == 「過程-2」/ {},但這並不對任何指針編譯用戶空間程序 感謝

    0熱度

    1回答

    我有以下錯誤: dtrace: error on enabled probe ID 3 (ID 7343: php15810:php:dtrace_execute_ex:function-return): invalid address (0x0) in action #2 at DIF offset 24 當我試圖跟蹤我的PHP腳本(sudo ./trace-php.d)。 基本上我想實現的是通

    2熱度

    1回答

    如何使用dtrace訪問函數本地的函數? 例如,在下面的代碼片段中,我想通過dtrace知道變量x的值。 void foo(int a){ int x=some_fun(a); }

    0熱度

    1回答

    我已經要求這個問題before。 我打開這個問題,因爲我發現了另一件事,我不知道該怎麼做。 我檢查使用DTrace的問題,我發現,當我嘗試訪問PHP,系統將進入這個無限循環: select(0x0, 0x0, 0x0, 0x0, 0x7FFF4FDDCB70) = 0 0 wait4(0xFFFFFFFF, 0x7FFF4FDDCB54, 0x3) = 0 0 select(0x0,

    0熱度

    1回答

    返回值 有這個程序的功能,目前返回我更希望它返回一個0 uregs[R_PC] is the program counter。 arg0 is the program counter offset from where we left the function (assembly, "ret")。 從此我推斷:我們可以添加偏移量,程序計數器,uregs[R_PC]+arg0,找到返回值的地址。我已