aboutsummaryrefslogtreecommitdiffstats
path: root/OLD/csci4061/092120_breakout/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'OLD/csci4061/092120_breakout/main.c')
-rw-r--r--OLD/csci4061/092120_breakout/main.c50
1 files changed, 0 insertions, 50 deletions
diff --git a/OLD/csci4061/092120_breakout/main.c b/OLD/csci4061/092120_breakout/main.c
deleted file mode 100644
index 8d8e08d..0000000
--- a/OLD/csci4061/092120_breakout/main.c
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
-CSci 4061 - Recitation 2 - 21st Sept 2020
-Breakout 1
-An iditoic loner's lone attempt
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <sys/types.h>
-#include <sys/wait.h>
-#include <unistd.h>
-#include <errno.h>
-
-int main(int argc, char **argv) {
- // take 'n' from the input and convert to integer
- // hint: see cmd slide
- if (argc < 2) {
- printf("USAGE: ./main int\n");
- return -1;
- }
- int n = strtol(argv[1], NULL, 10);
- // for i in n
- // create child process
- // print pid //hint: check week 2 slides
- // call execl to print 'hello there' using 'echo' //hint: check recitation slide
- pid_t pid;
- for (int i=0; i<n; i++) {
- pid = fork();
- if (pid == 0) {
-
- } else {
-printf("%d\n", getpid());
- execl("/bin/echo", "/bin/echo", "hello", "there", NULL);
- }
- }
- // parent waits for all child processes to terminate
- for (int i=0; i<n; i++) {
- wait(NULL);
- }
- // parent create child process
- // call execv on 'ptime' executable // hint: similar to 'echo' usage in slide
- pid = fork();
- if (pid != 0) {
- char *args[] = {"./ptime", NULL};
- execv(*args, args);
- }
- // parent waits for child to complete
- waitpid(pid, NULL, 0);
- return 0;
-} \ No newline at end of file