Design and implement a program in C which will run on cslinux1 or cslinux2 which:
1. Generates, one at a time, one million child processes.
2. Uses pipes to communicate from the child process to the parent process.
3. Establish the time prior to and after generating a child process (i.e. start and end time of parent).
4. Establish the time at which child process begins execution (i.e. end time of child).
5. Transmit child time to parent process via pipe.
6. Calculate the parent and child elapsed times.
7. Store the minimum of the parent and child elapsed times in an array.
8. Store the maximum of the parent and child elapsed times in an array.
9. Find the minimum of all minimums.
10. Find the maximum of all maximums.
11. Find the histogram bucket width = (#10. – #9.) / 20.
12. Fill the buckets for the minimums.
13. Fill the buckets for the minimums.
14. Output the bucket counts.
Outside the program, the values of the histogram should be plotted using a tool such as a spreadsheet program. These plots should be should be included in the report along with a verbal description of them.