C programming

Completed Posted Feb 16, 2003 Paid on delivery
Completed Paid on delivery

Introduction: The exec system call overlays a new program into a process. The fork and exec combination is used very frequently in UNIX to spawn a new process and to overlay a new program. A common example is trying a shell command at a shell prompt. The shell forks a new process which starts with a shell image, then makes an exec call to overlay the shell image the shell command. Complete the following skeleton C program for spawning a process and starting a new program. /*This program reads a command line from the terminal and executes it*/ #include/*declare functionm protocols here*/ /*the main fuction is given as follows main() { char*line [132]; char*command; char**argv; int pid; while(1) { if(gets(line)==0)exit(0); if(strlen(line)==0)continue; parse_command(line, command, &argv); pid = start_command(command, argv); if(pid>0)wait(0); } } /*Your job is to complete two functions: parse_command, start_command, and child*/ /*1. write a function to parse command*/ void parse_command (char[] line,char*command, char**argv) { } /*2. complete the start_command function*/ int start_command(char*command, char**argv) { int pid; /*return value of fork call //Create child process ....... if(pid==0){ /* invoke the child function here*/ } else if (pid<0){ /*print out fork error message*/ } return pid; } /*3. Complete child function*/ void child(char*command, char**argv){ int status; /*status will store the return value of an execvp system call*/ /*EXEC new command in child process by invoking execvp system call*/ ...... /*If exec was successful, this code will not be executed.*/ if(status<0){ /*print error message: a wrong command*/ } exit(0); }

## Deliverables

1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done. 2) Installation package that will install the software (in ready-to-run condition) on the platform(s) specified in this bi request. 3) Complete ownership and distribution copyrights to all work purchased.

## Platform

C programming only

C Programming Engineering MySQL PHP Software Architecture Software Testing

Project ID: #2907729

About the project

6 proposals Remote project Active Feb 17, 2003

Awarded to:

herculesevw

See private message.

$5 USD in 14 days
(79 Reviews)
4.7

6 freelancers are bidding on average $7 for this job

idleswell

See private message.

$8.5 USD in 14 days
(175 Reviews)
5.9
Uplink03

See private message.

$7.65 USD in 14 days
(68 Reviews)
4.8
sahvw

See private message.

$6.8 USD in 14 days
(14 Reviews)
4.5
tekguyvw

See private message.

$5.95 USD in 14 days
(10 Reviews)
2.5
cyberknight

See private message.

$8.5 USD in 14 days
(4 Reviews)
1.3