fork() and exec()
Srikrishan Malik(gmail)
srikrishanmalik at gmail.com
Tue Feb 7 00:48:00 EST 2012
These are the first two results when I search "fork vs exec" in google.
http://www.yolinux.com/TUTORIALS/ForkExecProcesses.html
http://en.wikipedia.org/wiki/Fork-exec
I found very good explanations in both the links(yolinux is a bit better)
-Sri
On Tue, Feb 7, 2012 at 12:38 AM, Vijay Chauhan <kernel.vijay at gmail.com>wrote:
> Hi List,
>
> I am learning Linux and trying to understand exec and fork function.
> execl says that it overlays the running address space. What does it mean?
>
> I created the following program and used top command with
> intentionally wrong arguments:
>
> #include<stdio.h>
> #include<unistd.h>
> #include<sys/types.h>
> #include<stdlib.h>
>
> int main(){
> int a = -1;
> if(fork()==0){
> printf("Inside child\n");
> printf("child pid=%d, parentid=%d\n", getpid(), getppid());
> execl("/usr/bin/top", "/usr/bin/top", ">/dev/null"
> ,(char*)0 );
> scanf("inside child provide a %d", &a);
> printf("Inside child a=%d\n", a);
> exit(1);
> } else {
> printf("Inside parent, going to wait\n");
> printf("my pid=%d, parentid=%d\n", getpid(), getppid());
> scanf("input parent %d\n", &a);
> wait(NULL);
> printf("Wait over\n");
> printf("Inside parent a=%d\n", a);
> }
> return 0;
> }
>
> When i run this program, it gives following output:
> [vijay at localhost]$ ./a.out
> Inside parent, going to wait
> Inside child
> child pid=2775, parentid=2774
> my pid=2774, parentid=2681
> top: unknown argument '>'
> usage: top -hv | -bcisSHM -d delay -n iterations [-u user | -U user]
> -p pid [,pid ...]
>
> 10
> Wait over
> Inside parent a=-1
> [vijay at localhost]$
>
> Why the child scanf and printf not executed?
> In the parent program, i expected input parent should be printed. But
> it doesnt and just wait for some input. When i entered 10 it resumes
> but printing -1 as a value.
>
> Could anyone please help me to understand this behavior? or any good
> tutorial or book
>
> Thanks.
> Vijay
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>
--
SK Malik
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20120207/9df33b28/attachment-0001.html
More information about the Kernelnewbies
mailing list