From dd867a39df6580eacb513ad992cc2e445a65c8c4 Mon Sep 17 00:00:00 2001
From: kadsendino <maxii.prietzel@gmail.com>
Date: Mon, 13 May 2024 14:35:17 +0200
Subject: [PATCH] Aufgabe04-1

---
 aufgabe03/Makefile   |   0
 aufgabe03/aufgabe1.d |   1 -
 aufgabe03/aufgabe1.o | Bin 10920 -> 0 bytes
 aufgabe03/solution   | Bin 21064 -> 0 bytes
 aufgabe04/Makefile   |  28 ++++++++++++++++
 aufgabe04/aufgabe1.c |  74 +++++++++++++++++++++++++++++++++++++++++++
 6 files changed, 102 insertions(+), 1 deletion(-)
 mode change 100644 => 100755 aufgabe03/Makefile
 delete mode 100644 aufgabe03/aufgabe1.d
 delete mode 100644 aufgabe03/aufgabe1.o
 delete mode 100755 aufgabe03/solution
 create mode 100644 aufgabe04/Makefile
 create mode 100644 aufgabe04/aufgabe1.c

diff --git a/aufgabe03/Makefile b/aufgabe03/Makefile
old mode 100644
new mode 100755
diff --git a/aufgabe03/aufgabe1.d b/aufgabe03/aufgabe1.d
deleted file mode 100644
index 10ae487..0000000
--- a/aufgabe03/aufgabe1.d
+++ /dev/null
@@ -1 +0,0 @@
-aufgabe1.o: aufgabe1.c
diff --git a/aufgabe03/aufgabe1.o b/aufgabe03/aufgabe1.o
deleted file mode 100644
index 1b6abb05dc605b854d71df24eb7df14a18c00a84..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 10920
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
E0D>nOT>t<8

diff --git a/aufgabe03/solution b/aufgabe03/solution
deleted file mode 100755
index 1ddbc3679988e75bef7531b65b4638646bfefd54..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 21064
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
XNYLO9HvLYZF%kv_hBh<}Xj}#W1Gn>V

diff --git a/aufgabe04/Makefile b/aufgabe04/Makefile
new file mode 100644
index 0000000..ba8a685
--- /dev/null
+++ b/aufgabe04/Makefile
@@ -0,0 +1,28 @@
+# This makefile compiles all C files in the same directory and produces a single
+# executable named solution
+CC = gcc
+CFLAGS = -std=c11 -Wall -Wextra -pedantic -O2 -g -pthread  # this uses the C11 standard, if you want to use a different standard, change it to -std=c[NUMBER]
+CPPFLAGS = -MMD
+LD_FLAGS = -lm
+
+BIN_NAME = solution
+SRC_FILES = $(wildcard *.c)
+OBJ_FILES = $(SRC_FILES:.c=.o) 
+DEP_FILES = $(wildcard *.d)
+
+run: $(BIN_NAME)
+	./$(BIN_NAME)
+
+include $(DEP_FILES)
+
+$(BIN_NAME): $(OBJ_FILES)
+	$(CC) $(CPPFLAGS) $(LD_FLAGS) $(OBJ_FILES) -o $@
+
+%.o: %.c
+	$(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@ 
+
+clean:	
+	@rm -v *.o *.d
+	@rm -v ./$(BIN_NAME)
+
+.PHONY: run clean
diff --git a/aufgabe04/aufgabe1.c b/aufgabe04/aufgabe1.c
new file mode 100644
index 0000000..72277ea
--- /dev/null
+++ b/aufgabe04/aufgabe1.c
@@ -0,0 +1,74 @@
+// dining philosophers with unshared chopsticks
+#include <stdio.h> 
+#include <stdlib.h>
+#include <pthread.h> 
+#include <unistd.h> 
+
+#define NUM_THREADS     5
+pthread_mutex_t lock;
+int chopsticks[NUM_THREADS];
+
+void* Philosopher (void *threadid) 
+{
+  long tid;
+  tid = (long)threadid;
+  int _error = 0;
+
+  for (int i= 0; i < 10; i++) {
+    // thinking
+    sleep (0.5);
+
+    //wait 
+    
+    //Beginn kritischer Abschnitt
+    _error = pthread_mutex_lock(&lock);
+    
+    //Warten darauf, dass chopstick frei werden
+    while (chopsticks[tid] + chopsticks[(tid + 1) % NUM_THREADS] < 2);
+    
+    chopsticks[tid] = 0;
+    chopsticks[(tid + 1) % NUM_THREADS] = 0;
+    
+    _error = pthread_mutex_unlock(&lock);
+    //Ende kritischer Abschnitt
+
+    printf("\n %ld Dining..\n", tid); 
+    sleep(0.5); 
+    printf("\n %ld Finished..\n", tid); 
+    
+    //Beginn kritischer Abschnitt
+    _error = pthread_mutex_lock(&lock);
+    chopsticks[tid] = 1;
+    chopsticks[(tid + 1) % NUM_THREADS] = 1;
+    _error = pthread_mutex_unlock(&lock);
+    //Ende kritischer Abschnitt
+  }
+} 
+
+
+int main (void) 
+{ 
+  pthread_t threads[NUM_THREADS];
+  int rc;
+  long t;
+
+  for(int i=0;i<NUM_THREADS;i++){
+    chopsticks[i]=1;
+  }
+
+  for(t=0; t < NUM_THREADS; t++) {
+     printf ("In main: creating thread %ld\n", t);
+     rc = pthread_create (&threads[t], NULL, Philosopher, (void *)t);
+     if (rc) {
+        printf ("ERROR; return code from pthread_create () is %d\n", rc);
+        exit (-1);
+     }
+  }
+
+  for(t=0; t < NUM_THREADS; t++) {
+     pthread_join (threads[t], NULL);
+  }
+
+  return 0; 
+} 
+
-- 
GitLab