I would like to ask what are the differences between PsCreateSystemThread and CreateThread. From MSDN description it seems to that PsCreateSystemThread is for Kernel Thread.
CreateThread seem like a kernel thread but share the same virtual space memory with a process. That mean I can have many thread running together BUT I cant access other process memory space.
CreateThreadcreates user mode thread that works in the address space of the process. It has nothing to do with kernel. This API is about 20 years old.PsCreateSystemThreadcreates kernel thread.