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
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
Get step-by-step solutions from verified subject matter experts
