Read the following program carefully and write the output
of the program. Explain each
line of code according to given numbering.

#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <errno.h>

1……………… int main (void)
{
pid_t pid;
2………………………… pid = fork();
3…………………………. if (pid > 0)
{
int i;
4………………………… for (i = 0; i < 5; i++)
{
5………………… …………… printf(" I AM VU : %d\n", i);
6………………… …………… sleep(1);
}
exit(0);
}
7………………… ……… else if (pid == 0) {
int j;
for (j = 0; j < 5; j++)
{
8……………………………… printf(" I have no child: %d\n", j);
sleep(1);
}
_exit(0);
}
else
{
9………………………………fprintf(stderr, "can't fork, error %d\n",
errno);
10……………… … ………… exit (EXIT_FAILURE);
}
}



Read the following program carefully and write the output of the program. Explain each line of c..

Answer / saith

1 int main (void) Starts the main function
2 pid = fork ( ); The fork ( ) method will call and store
the integer value in the pid variable. In case of Child “0”
value returned while the parent will store the “process id”
of the child. In case when fork fails it will be
initialized by -1
3 if (pid > 0) This condition will be only true when fork
failed.
4 for (i = 0; i < 5; i++) Limmitations of for loop are
declared and the loop starts

5 printf(" I AM VU : %d\n", i);
Prints I AM VU and the value of I message on screen
6 sleep(1); Process sleeps
7 else if (pid == 0) Now this blok of code executes in
parent process since fork returns the ID to the parent
process from child. which is not 0.
8 printf(" I have no child: %d\n", j);
“I have no child” is printed on the screen
9 fprintf(stderr, "can't fork, error %d\n", errno);
If the given conditions are not true then this error
message is send
10 exit (EXIT_FAILURE); system call will terminate the
process abnormally as it fails.

Is This Answer Correct ?    4 Yes 0 No

Post New Answer

More C++ General Interview Questions

When can you tell that a memory leak will occur?

1 Answers  


What is the precedence when there is a global variable and a local variable in the program with the same name?

0 Answers  


Distinguish between a # include and #define.

0 Answers  


If you want to share several functions or variables in several files maitaining the consistency how would you share it?

0 Answers  


You want to link a c++ program to c functions. How would you do it?

0 Answers  






What is size of a object of following class? class Foo { public: void foo(){} }

2 Answers   CA,


Explain the differences between private, public and protected and give examples.

0 Answers  


What is std :: endl?

0 Answers  


Describe new operator?

0 Answers  


Why do we use iterators?

0 Answers  


What are the basics concepts of OOPS?

1 Answers  


How to defines the function in c++?

0 Answers  


Categories