From d9194d46ef70e7c9f76b876b2439c24649d57d1e Mon Sep 17 00:00:00 2001 From: Aleksa Vuckovic Date: Sat, 28 Jan 2023 21:06:31 +0100 Subject: atomic test_and_set; spinlocks --- kernel/include/atomic.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 kernel/include/atomic.h (limited to 'kernel/include/atomic.h') diff --git a/kernel/include/atomic.h b/kernel/include/atomic.h new file mode 100644 index 0000000..5ddc620 --- /dev/null +++ b/kernel/include/atomic.h @@ -0,0 +1,17 @@ +#ifndef ATOMIC +#define ATOMIC + +#include + +struct mutex_t { + volatile uint64_t* addr; +}; +typedef struct mutex_t mutex_t; + + +void init_mutex(mutex_t* mutex); +bool test_and_set(mutex_t mutex, bool value); +void lock(mutex_t mutex); +void unlock(mutex_t mutex); + +#endif -- cgit v1.2.3