來計算進程的機器指令,我正在使用ptrace和PTRACE_SINGLESTEP參數來計算程序的機器指令數量。我跟着這篇文章:http://www.ncsu.edu/it/mirror/ldp/LDP/LGNET/81/sandeep.html。在Linux機器上使用PTRACE_SINGLESTEP
但是,結果對我來說似乎很奇怪。對於一個非常簡單的程序,計算了超過95000條機器指令。測試程序是
int main(void) { return 23; }
這是怎麼回事?文章中的代碼是否錯誤? (我看不出有什麼問題。) 如果不是,那麼導致這樣一個簡單程序需要> 95000條指令的原因是什麼?
嘗試靜態鏈接您的程序,以避免動態鏈接程序的運行時開銷。 – mark4o 2009-09-03 23:31:41
文章鏈接被破壞... – Thilo 2014-05-01 05:01:40