diff options
Diffstat (limited to 'P1/src')
-rw-r--r-- | P1/src/mapreduce.c | 33 |
1 files changed, 24 insertions, 9 deletions
diff --git a/P1/src/mapreduce.c b/P1/src/mapreduce.c index 5b63f3f..ed1f9e5 100644 --- a/P1/src/mapreduce.c +++ b/P1/src/mapreduce.c @@ -26,12 +26,19 @@ int main(int argc, char *argv[]) { sleep(1); - // To do - // spawn mappers processes and run 'mapper' executable using exec + pid_t mapperPid; + for (int i = 0; i < nMappers; i++) { + mapperPid = fork(); + if (mapperPid != 0) { + //TODO: exec here + } + } - // To do - // wait for all children to complete execution - + for (int i = 0; i < nMappers; i++) { + //Hopefully this works + wait(NULL); + } + // ###### DO NOT REMOVE ###### // shuffle sends the word.txt files generated by mapper @@ -44,11 +51,19 @@ int main(int argc, char *argv[]) { sleep(1); - // To do - // spawn reducer processes and run 'reducer' executable using exec - // To do - // wait for all children to complete execution + pid_t reducerPid; + for (int i = 0; i < nReducers; i++) { + reducerPid = fork(); + if (reducerPid != 0) { + //TODO: exec here + } + } + + for (int i = 0; i < nReducers; i++) { + //Maybe this works too? + wait(NULL); + } return 0; }
\ No newline at end of file |