There is no connection between a child an its parent.
The child only gets a copy of the code.
If there were a pointer to a child or to the parent, you wouldn't need any
signals.
The processes could communicate directly.
regards
----- Original Message -----
From: "Sat." <walking.to.remember@xxxxxxxxx>
To: <linux-kernel@xxxxxxxxxxxxxxx>
Sent: Tuesday, September 06, 2005 11:15 AM
Subject: what will connect the fork() with its following code ? a simple
example below:
> if(!(pid=fork())){
> ......
> printk("in child process");
> ......
> }else{
> .....
> printk("in father process");
> .....
> }
>
> this is a classical example, when the fork() system call runs, it will
> build a new process and active it . while the schedule() select the
> new process it will run. this is rather normal.
>
> but there is always a confusion in my minds.
> because , sys_fork() only copies father process and configure some new
> values., and do nothing . so the bridge between the new process and
> its following code, printk("in child process"), seems disappear . so I
> always believe that the new process should have a pointer which point
> the code "printk("in child process");". except this , there are not
> any connection between them ?
>
> very confused :(
>
> any help will appreciate !
>
>
>
> --
> Sat.
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" > in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>