在Linux内核创建一个简单的testTask任务,2秒输出一次打印。
#define TEST_TASK_NAME "testTask" //task name
#define TASK_PRINT_STR "task test" //print
int test_cnt = 0; //print counter
static int test_task_thread(void *data)
{
while(1)
{
printk("%s: %d\n", TASK_PRINT_STR, test_cnt);
test_cnt++;
msleep(2000);
}
return;
}
int task_init(void)
{
struct task_struct *task = NULL;
task = thread_run(test_task_thread, NULL, TEST_TASK_NAME );
if(IS_ERR(task))
{
printk("thread_run error, %#x\n", IS_ERR(task));
return -1;
}
return 0;
}