diff options
Diffstat (limited to 'kernel/include/lib')
-rw-r--r-- | kernel/include/lib/kio.h | 10 | ||||
-rw-r--r-- | kernel/include/lib/klib.h | 25 |
2 files changed, 35 insertions, 0 deletions
diff --git a/kernel/include/lib/kio.h b/kernel/include/lib/kio.h index 66efc7b..1b10a39 100644 --- a/kernel/include/lib/kio.h +++ b/kernel/include/lib/kio.h @@ -26,6 +26,16 @@ void kputc(char c); */ void kputs(const char *s); +#ifdef TRACING +#define TRACE(format, ...) \ + do { \ + kprintf("[TRACE] %s ", __FUNCTION__); \ + kprintf(format, ##__VA_ARGS__); \ + } while (0) +#else +#define TRACE(format, ...) +#endif + /** * prints out a formatted string * diff --git a/kernel/include/lib/klib.h b/kernel/include/lib/klib.h index 7f66e90..0d9797b 100644 --- a/kernel/include/lib/klib.h +++ b/kernel/include/lib/klib.h @@ -231,4 +231,29 @@ void log_backtrace(void); */ void log_backtrace_ex(void *ip, void *bp); +/** + * Allocates size_t bytes in memory + * + * @param size - the amount of bytes to allocate + * @returns the address allocated or NULL on failure + */ +void *kalloc(size_t size); + +/** + * Rellocates a given allocated ptr to a new size of bytes in memory. + * If ptr is NULL it will allocate new memory. + * + * @param ptr - the pointer to reallocate + * @param size - the amount of bytes to reallocate to + * @returns the address allocated or NULL on failure + */ +void *krealloc(void *ptr, size_t size); + +/** + * Frees an allocated pointer in memory + * + * @param ptr - the pointer to free + */ +void kfree(void *ptr); + #endif /* klib.h */ |