Question
Your solution must be written in the C programming language. You must use fork and pipe to complete this project. Your program must compile and
Your solution must be written in the C programming language. You must use fork and pipe to complete this project. Your program must compile and run on the QBB244 lab computers using the gcc compiler. This project creates processes to add all numbers in a file. The user will enter a number (1, 2, or 4) of parallel processes to create for processing the numbers. The system will then create this many processes, evenly dividing the file contents between the processes. For example, if the file has 1000 numbers and the user wants 4 processes, then each process would process 250 numbers in the file. You must test two ways for getting the data to the child processes: - Have the parent read the file and then send the appropriate numbers to the corresponding child process using a pipe. - Have the parent determine appropriate offsets in the file, send the offsets to the corresponding child process using a pipe, and have the child process read its portion of the file. - In either of the above cases the child process(es) should return results to the parent process using a pipe. III. System Description The system is illustrated in the diagram shown below. The processes are as follows: 1. Parent process. This process allows the user to input the number of processes to create (1, 2, or 4). It determines what portion of the file each process must work on and informs the process via a pipe. More specifically, the first child process handles the first block in the file, and the second child process handles the second one and so on. The parent then waits for each child to report its result. Once each result is received, it combines the results and prints the overall result. 2. Child process. Receives which part of the file to process. Process the file and send results back to the parent process.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started