linux内核态获取纳秒ns时间


内核态常用获取纳秒的函数。u64是unsigned long long类型的数据类型,打印用%llu。

u64 ktime_get_ns(void)
u64 ktime_get_real_ns(void)
u64 ktime_get_raw_ns(void)

计算程序的运行时间:

u64 t1,t2,d0;

t1 = ktime_get_real_ns();

{
    // 运行程序段  
}

t2 = ktime_get_real_ns();

d0 = t2 - t1;

printk("duration:%llu.",d0);

注意多核使用情况,如果你发现时间t1超前与t2,说明是多核影响的。

参考:

https://www.kernel.org/doc/html/latest/core-api/timekeeping.html

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM