无法计算Linux内核执行用C语言编写的hello world程序所花费的时间

时间:2016-03-10 11:51:27

标签: c linux kernel

我正在尝试计算Linux内核在执行简单的hello world程序时所花费的时间。我无法做到。我附加了错误消息。我没有附上Makefile,但据我所知这是正确的。有任何帮助来完美地计算它吗?

代码:

#include <linux/module.h>
#include <linux/kernel.h> 
#include <linux/time.h> 

int init_module(void)
{ 
    clock_t t;
    t = clock();
    printk(“hello world\n”);
    t = clock() - t;
    double time_taken = ((double)t)/CLOCKS_PER_SEC;
    printk(“%f\n”, time_taken);
    return 0;
}

void cleanup_module(void) 
{
    printk(KERN_ALERT “Goodbye world\n”);
}

This is the error message

1 个答案:

答案 0 :(得分:1)

你想要完成什么?

printk是错误的,因为它不包含日志级别,并且内核中没有'clock()',但是不管怎么说都不应该在这里使用。

如果你真的对性能感兴趣,那么你想看看像perf这样的东西。

除非看起来你还不应该使用内核工作。