From b905869a35f062a4e5072f10bec3a2ba3db0e365 Mon Sep 17 00:00:00 2001 From: Jon Santmyer Date: Wed, 30 Jul 2025 14:32:01 -0400 Subject: working userland with some invoke syscalls --- lib/mem.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 lib/mem.c (limited to 'lib/mem.c') diff --git a/lib/mem.c b/lib/mem.c new file mode 100644 index 0000000..2ce67f3 --- /dev/null +++ b/lib/mem.c @@ -0,0 +1,27 @@ +#include "string.h" + +void* +memset(void *dest, char c, size_t n) +{ + char *a = dest; + for(size_t i = 0; i < n; i++) a[i] = c; + return dest; +} + +void* +memcpy(void *dest, const void *src, size_t n) +{ + char *a = dest; + const char *b = src; + for(size_t i = 0; i < n; i++) a[i] = b[i]; + return dest; +} + +void* +memmove(void *dest, const void *src, size_t n) +{ + char buffer[n]; + memcpy(buffer, src, n); + memcpy(dest, buffer, n); + return dest; +} -- cgit v1.2.1