What is a Kernel thread?

  1. A kernel thread is a task_struct with no userspace components.
  2. Besides the lack of userspace, it has different ancestors (kthreadd kernel thread instead of the init process) and is created by a kernel-only API instead of sequences of clone from fork/exec system calls.
  3. Two kernel threads have kthreadd as a parent. Apart from that, kernel threads enjoy the same “independence” one from another as userspace processes.
  4. Use the kthread_run function/macro from the kthread.h header You will most probably have to write a kernel module in order to call this function, so you should take a look a the Linux Device Drivers
  5. If you are referring to the text output of your implementation (via printk calls), you can see this output in the kernel log using the dmesg command.

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)