Question: I'm attempting to write a program that forks processes. The child opens /dev/null and then writes a lot of data to this file. Each iteration

I'm attempting to write a program that forks processes.

The child opens /dev/null and then writes a lot of data to this file. Each iteration of the loop should write 10 bites to /dev/null.

More specifically I want to write a 10-character array and run the loop a bunch of times like 100,000,000 iterations!

In the meantime the parent will be in standby mode until the child process has finished.

This is what I have so far:

#include #include #include #include

int main() { int fd;//file descriptor int fd = open("/dev/null",O_WRONLY);

pid_t newPid = fork(); if (newPid <0) { perror("fork() failed"); exit(1);

if (newPid > 0) { //Parent pid[procIdx] = newPid; } else { //Child //write 10 bytes to /dev/null write(fd, "ABCDEFGHIJ", 10) exit(0); close (fd); }

// Wait for processes to complete for (int i = 0; i < (I'm not sure what to put here); i++) { if (waitpid(pid[i], NULL, 0) == -1) { perror("waitpid() failed"); exit(1);// process termination status value 1 } }

exit(0); // process termination status value 0 }//end of main

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!