31 lines
536 B
C
31 lines
536 B
C
#include <stdio.h>
|
|
#include <unistd.h>
|
|
#include <sys/wait.h>
|
|
|
|
int main(void)
|
|
{
|
|
int var = 0;
|
|
|
|
printf("PID(Father)=%d, PPID=%d, var=%d\n", getpid(), getppid(), var);
|
|
|
|
if ( fork() == -1 )
|
|
{
|
|
fprintf( stderr, "fork() failed!\n" );
|
|
}
|
|
else
|
|
{
|
|
var++;
|
|
printf("PID=%d, PPID=%d, var=%d\n", getpid(), getppid(), var);
|
|
if ( fork() == -1 )
|
|
{
|
|
fprintf( stderr, "Error at 2nd fork()!\n");
|
|
}
|
|
else
|
|
{
|
|
var++;
|
|
printf("PID=%d, PPID=%d, var=%d\n", getpid(), getppid(), var);
|
|
}
|
|
}
|
|
return 0;
|
|
}
|