2017-02-03 42 views
0

我需要弄清楚Linux內核的start_kernel函數中調用的時間函數。如何在Linux Kernel的start_kernel函數中計時函數?

爲什麼這是一個問題,因爲如果我在同一個函數內的timekeeping_init()函數調用之前放入一個ktime_get()函數調用,內核就不會啓動。

在我的設置中,我認爲最有可能的內核在mm_init()內花了很多時間。但由於上述提及問題,我無法驗證。

有關如何解決此問題的任何想法?

感謝。

回答

1

在引導的早期,並沒有太多可用的東西。但是,printk應該可以工作。

如果您使用x86,則可以使用rdtsc()。目前只有1個CPU正在運行,所以關於混淆結果的常見警告尚不適用。