Почему основной поток начинает выполняться раньше дочернего?
void new_thread(void *data)
{
printk("-----------------------------------------------\n");
printk("I am new_thread, my pid is %d\n",current->pid);
return;
}
static int __init
main_func(void)
{
kernel_thread(new_thread,0,0);
unsigned long i = 0;
for(i; i<1000; i++)
schedule();
printk("------------------------------------------------\n");
printk("I am main thread, my pid is %d", current->pid);
return 0;
}
insmod $name
dmesg|tail
------------------------------------------------
I am main thread, my pid is 5019
------------------------------------------------
I am new_thread, my pid is 5020