Respuesta :
Answer:
//same program different code
#include<stdio.h>
#include<unistd.h>
#include<stdlib.h>
int main()
{
int pid;
pid=fork();
if(pid<0)
{
printf("\n Error ");
exit(1);
}
else if(pid==0)
{
printf("\n Hello I am the child process ");
printf("\n My pid is %d ",getpid());
exit(0);
}
else
{
printf("\n Hello I am the parent process ");
printf("\n My actual pid is %d \n ",getpid());
exit(1);
}
}
Explanation:
Following are the program to the given question:
Program Explanation:
- Include header file.
- Defining the main method.
- Defining an integer variable "n, i", after defining this use "n" to the input value.
- In the next step, a loop is declared that uses if block that checks fork value equal to 0, in which it calls the sleep method and prints its value.
- At the last, it calls the wait method.
Program:
#include<stdio.h>//header file
#include<sys/types.h>
#include<sys/wait.h>
#include<unistd.h>
int main()//defining the main method
{
int n,i;//defining an integer variable
printf("Enter the number of child to be created:"); //print message
scanf("%d", &n);//input value in n
for(i=0;i<n;i++) // defining a loop that use if block with the frok method to print value
{
if(fork() == 0)//use if that check fork method value equal to 0
{
sleep(3);//calling sleep method
printf("[child] pid %d from [parent] pid %d\n",getpid(),getppid());//print message
}
}
wait(NULL);//calling wait method
return 0;
}
Output:
Please find the attached file.
Learn more:
brainly.com/question/17925458
![Ver imagen codiepienagoya](https://us-static.z-dn.net/files/d86/b178c7fb0bc3e68755b0fae67afa0174.jpg)