diff --git a/Kernel/kernel_M.c b/Kernel/kernel_M.c
index 484766e8501e7694a9fb9df849fac08d45a2e008..ec78f8de6af92da523fa0a67b35361a31f003339 100644
--- a/Kernel/kernel_M.c
+++ b/Kernel/kernel_M.c
@@ -1,3 +1,15 @@
+/*
+@file kernel_M.c
+@brief Kernel modul
+@author Alan Muhemad
+@date 2025-02-08
+
+@details
+creates character device for user space communication
+validates the package (CRC Checksum)
+timeslot management
+writes data to the GPIO
+*/
 #include <linux/init.h>
 #include <linux/module.h>
 
diff --git a/Processes/cpu_freq.c b/Processes/cpu_freq.c
index c81b4a090a8767ec9c35656e52a6890ceebc1c01..87fd7ae726594d7aa42facfb4e55bd7d904512f2 100644
--- a/Processes/cpu_freq.c
+++ b/Processes/cpu_freq.c
@@ -1,3 +1,13 @@
+/*
+@file cpu_freq.c
+@brief cpu frequenz lesen und an pipe senden
+@author Felix Moser, Christoph Schwierz
+@date 2025-02-01
+
+@details
+dieses programm liest die CPU Frequenz aus cpu0 aus
+und sendet den wert an seine zugehörige pipe
+*/
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
diff --git a/Processes/cpu_temp.c b/Processes/cpu_temp.c
index 5ec6e84e3a0030918ea0af3b6b162a1a1b460fc8..cf051e1f4a076a2e5722f3afe1f90dfa7ad681b2 100644
--- a/Processes/cpu_temp.c
+++ b/Processes/cpu_temp.c
@@ -1,3 +1,14 @@
+/*
+@file cpu_temp.c
+@brief cpu temperatur lesen und an pipe senden
+@author Felix Moser, Christoph Schwierz
+@date 2025-02-01
+
+@details
+dieses programm liest die temperatur aus thermal_zone0 der CPu aus
+und sendet den wert an seine zugehörige pipe
+*/
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
diff --git a/Processes/process_monitoring.sh b/Processes/process_monitoring.sh
index 47848e8fb16942342cd25e829702b178cf5f7b5d..db57d035d17fc03b36a45b44a8cf0fd3812b2023 100644
--- a/Processes/process_monitoring.sh
+++ b/Processes/process_monitoring.sh
@@ -1,3 +1,8 @@
+#file process_monitoring.sh
+#brief liste aller Prozesse die in ihre pipe writen
+#author Felix Moser, Alan Muhemad
+#date 2025-02-01
+
 #!/bin/bash
 
 #Prozesse starten
diff --git a/README.md b/README.md
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..6fb1dd8cedef74818ad77a48d40310013c34cc68 100644
--- a/README.md
+++ b/README.md
@@ -0,0 +1,14 @@
+# Embedded Linux Projekt
+
+# Dieses Program kann beliebig viele Prozesse haben, welche dessen Daten über die GPIO sendet
+
+## Architektur
+- Als Beispielprozesse werden die CPU Frequenz und Temperatur gemessen
+- Die gemessenen daten werden über eine FIFO Pipe an einen Monitoring System (main.c im User-Space) gesendet.
+- FIFO wird benutzt, weil man das Write- und Read End frei wählen kann und man mit mkfifo Pipes in einem Verzeichnis erstellen kann. Das erleichtert die Skalierbarkeit.
+- Die Empfangene Daten werden vom Monitoring System in ein Package geschrieben.
+- Mit der Vorgegebenen Struktur: SenderID, ValueID 1, Value 1, ValueID 2, ...
+- Das Paket wird über einer CRC Checksum abgesichert und anschließend mit einem Character device interface an das Kernel gesendet.
+- Das Kernel ist für das Erstellen des Character Devices zuständig
+- Der Kernel Validiert das Paket mit der CRC.
+- Der Kernel handlet das Timeslot management und Schreibt die daten an die GPIO
\ No newline at end of file
diff --git a/main.c b/main.c
index d7837d1c9265ca195709cac695a4a0953e398a93..ccb84f02c755ef351ff81132873cb62c4bfe66f6 100644
--- a/main.c
+++ b/main.c
@@ -1,3 +1,15 @@
+/*
+@file main.c
+@brief empfage daten von prozesse und senden an kernel
+@author Felix Mose, Christoph Schwierz
+@date 2025-02-14
+
+@details
+dieses Programm sucht nach prozessen und öffnet dessen zugehörige pipes
+er liest die Daten aus den Pipes, erstellt packages mit den daten und checksum 
+und sendet diese an den kernel mit einem character device interface
+*/
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>