process and fork()

Process is a program in execution. Process execution must progress in sequential fashion. A process includes program counter, stack, and data section. In UNIX, a process is created by fork() system call. Below is the main fork() program based on C language.

[sourcecode language=’cpp’]

int main()
{
pid_t pid = fork();

if (pid < 0)
{
/*error occured*/
fprintf(stderr,"error forking childn");
exit(-1);
}
else if (pid == 0)
{
/*child process*/
/* put your application here*/
exit(0);
}
else
{
/*parent process*/
int status;
/*wait for child process to complete*/
/*when child process has been completed, */
/*it will return status 0 */
wait(&status);
exit(0);
}
}

[/sourcecode]

You may download a sample application to count fibonacci sequence that uses fork() system call, 3.5_fork.zip.

Leave a Reply

Your email address will not be published. Required fields are marked *