1. Process:
Process is an activity of executing a program. Process is of two types – User process and System process. Process control block controls the operation of the process.
2. Kernel Thread:
Kernel thread is a type of thread in which threads of a process are managed at kernel level. Kernel threads are scheduled by operating system (kernel mode).

Difference between Process and Kernel Thread:
PROCESS | KERNEL THREAD |
---|
Process is a program being executed. | Kernel thread is the thread managed at kernel level. |
It is high overhead. | It is medium overhead. |
There is no sharing between processes. | Kernel threads share address space. |
Process is scheduled by operating system using process table. | Kernel thread is scheduled by operating system using thread table. |
It is heavy weight activity. | It is light weight as compared to process. |
It can be suspended. | It can not be suspended. |
Suspension of a process does not affect other processes. | Suspension of kernel thread leads to all the threads stop running. |
Its types are – user process and system process. | Its types are – kernel level single thread and kernel level multi thread. |