working of fork and exec

Peter Teoh htmldeveloper at gmail.com
Thu Jan 17 21:09:52 EST 2013


Hi Mulyadi,

Great to see you again!

Sorry, can I fork on your explanation to explain further about fork?

Yes, "fork" is at the core of process management, scheduling and all that:

http://www.ibm.com/developerworks/linux/library/l-linux-process-management/

a good picture of process splitting up (forking) is here:

http://www.linux-tutorial.info/modules.php?name=MContent&pageid=83

what happened to all the IPC after forking?

http://hzqtc.github.com/2012/07/linux-ipc-with-pipes.html

http://static.usenix.org/event/usenix2000/general/reumann/reumann_html/node9.html

Generally, the last thing u should read is the kernel source code, though
it also has the last word to be said for fork() :-).

On Fri, Jan 18, 2013 at 1:59 AM, Mulyadi Santosa
<mulyadi.santosa at gmail.com>wrote:

> Hi :)
>
> On Fri, Jan 18, 2013 at 12:02 AM, Niroj Pokhrel <nirojpokhrel at gmail.com>
> wrote:
> > Hi all,
> > I have been using fork and exec for sometime. But I have no idea about
> what
> > are the things done by the kernel when we fork or exec and how things
> work.
> > How the kernel load new program and what all things are done ....... Can
> > anybody please explain me this ? Thank you in advance.
>
> this is too broad to answer, but in general fork() does:
> - preparing new address space
> - preparing new task_struct
> - doing COW (copy on write), so newly born child initially simply use
> parent's pages
>
> in exec() case, instead of COW, you load the target binary. It does so
> by the work of loader in user space and ELF interpreter in the kernel
> space.
>
> --
> regards,
>
> Mulyadi Santosa
> Freelance Linux trainer and consultant
>
> blog: the-hydra.blogspot.com
> training: mulyaditraining.blogspot.com
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>



-- 
Regards,
Peter Teoh
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20130118/b4e82847/attachment.html 


More information about the Kernelnewbies mailing list