Need to implement DHCP server in kernel space. It's supposed to be a multithreading server, and I think I should use kthreads ( I'll be glade if you know better decision ). However I can't understand how this technology works. So can anybody explain me or give me some good links about kthreads?  
How do kthreads actually work?
linux;kernel;c