summaryrefslogtreecommitdiff
path: root/buddy.h
diff options
context:
space:
mode:
authorMatthew Sotoudeh <matthew@masot.net>2024-05-15 20:15:45 -0700
committerMatthew Sotoudeh <matthew@masot.net>2024-05-15 20:15:45 -0700
commitaffa5e2933186970d0a3dac38d2ca8f02190e4d9 (patch)
treed61e7385564729c887ab4c7c18d6444f7ebacbad /buddy.h
basic magic buddy allocator
Diffstat (limited to 'buddy.h')
-rw-r--r--buddy.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/buddy.h b/buddy.h
new file mode 100644
index 0000000..b335019
--- /dev/null
+++ b/buddy.h
@@ -0,0 +1,14 @@
+#pragma once
+#include <stdint.h>
+#include <stddef.h>
+
+#define MAGIC_COOKIE_BYTES 64
+#define ADDRESS_BITS (8 * sizeof(void*))
+
+void init_buddy(uint8_t *base, size_t size,
+ uint8_t magic[MAGIC_COOKIE_BYTES]);
+
+void *allocate(size_t size);
+void liberate(void *base, size_t size);
+
+void debug_buddy(void);
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback