Hi all,

       I had a question regarding process creation. Here is the question.
when fork call is issued at user level do_fork call is called at the kernel
level. This function does all the job to create new
kernel stack and process descriptor and copies all the parent resources to
new process. But my doubt is how can kernel distinguish between kernel
thread for the user level process. I mean user level process stack is
different from the kernel level thread stack. For user level program user
level stack is used, when system call is issued kernel level stack is used.
But when in the process of creation of new process (thread) fork is called
which creates only kernel level process, but how about user level process.
Is my understanding is wrong. I know that all the access to the resources is

made available to user space through the kernel so in which case kernel
stack is used. But how is user stack created. Thank you.

Sri

Reply via email to