From f8013094c40e2414008104685aa551e1d724dc1f Mon Sep 17 00:00:00 2001 From: David Benavidez Date: Wed, 20 Feb 2019 16:01:34 -0800 Subject: [PATCH] did first 3 --- ex1/ex1 | Bin 0 -> 8560 bytes ex1/ex1.c | 19 +++++++++++++++++++ ex2/ex2 | Bin 0 -> 8608 bytes ex2/ex2.c | 19 +++++++++++++++++++ ex2/text.txt | 2 ++ ex3/ex3.c | 15 +++++++++++++++ 6 files changed, 55 insertions(+) create mode 100644 ex1/ex1 create mode 100644 ex2/ex2 diff --git a/ex1/ex1 b/ex1/ex1 new file mode 100644 index 0000000000000000000000000000000000000000..619cf6f2388048642c7dd69bd30a7a4f09cfecbc GIT binary patch literal 8560 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 XIOlrJQoM^6x38n8>H;egI_>`hNW;Zv literal 0 HcmV?d00001 diff --git a/ex1/ex1.c b/ex1/ex1.c index c4b111641..be4b9cc6c 100644 --- a/ex1/ex1.c +++ b/ex1/ex1.c @@ -9,6 +9,25 @@ int main(void) { // Your code here + printf("hello world!\n"); + int x = 101; + int fp = fork(); + if (fp < 0) + { // fork failed; exit + fprintf(stderr, "fork failed\n"); + exit(1); + } + else if (fp == 0) + { // child process satisfies this branch + printf("x is: %d \n", x); + x = 102; + } + else + { + printf("hello, parent here (pid: %d) of child %d\n", (int)getpid(), fp); + } + + return 0; } diff --git a/ex2/ex2 b/ex2/ex2 new file mode 100644 index 0000000000000000000000000000000000000000..c0c38ee8199d347e271b62560ddc9c2bef37fb9d GIT binary patch literal 8608 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 K|A4rY-~L}^Tj&!2 literal 0 HcmV?d00001 diff --git a/ex2/ex2.c b/ex2/ex2.c index 4245375b9..815cc7d2c 100644 --- a/ex2/ex2.c +++ b/ex2/ex2.c @@ -9,6 +9,25 @@ int main(void) { // Your code here + FILE *file; + file = fopen("text.txt", "r+"); + int fp = fork(); + if (fp < 0) + { // fork failed; exit + fprintf(stderr, "fork failed\n"); + exit(1); + } + else if (fp == 0) + { // child process satisfies this branch + //fprintf(file, "%s"); + fprintf(file, "Hello from child: %d\n", (int)getpid()); + } + else + { + fprintf(file, "Hello from parent: %d\n", (int)getpid()); + } + + fclose(file); return 0; } diff --git a/ex2/text.txt b/ex2/text.txt index e69de29bb..50d34d50b 100644 --- a/ex2/text.txt +++ b/ex2/text.txt @@ -0,0 +1,2 @@ +Hello from parent: 54 +Hello from child: 55 diff --git a/ex3/ex3.c b/ex3/ex3.c index 3a3698c1f..5fbee3ffe 100644 --- a/ex3/ex3.c +++ b/ex3/ex3.c @@ -10,6 +10,21 @@ int main(void) { // Your code here + int fp = fork(); + if (fp < 0) + { // fork failed; exit + fprintf(stderr, "fork failed\n"); + exit(1); + } + else if (fp == 0) + { // child process satisfies this branch + printf("hello\n"); + } + else + { + int wc = waitpid(fp, NULL, 0); + printf("goodbye\n"); + } return 0; }