This directory contains the library functions common to userland and kernel code, for the three basic libraries of the system : - libkogata : memory allocation, system functions - libc : (partial) implementation of standard libc functions - libalgo : usefull data structures It relies on a few functions being exported : - panic(char* msg, char* file, int line) - panic_assert(char* assert, char* file, int line) - dbg_print(const char* str) - void* malloc(size_t size) - free(void* ptr) - yield() These function are supposed to be defined in the code that calls the common functions. The headers for these functions are to be found in `debug.h`, `mutex.h` and `malloc.h`. In kernel code, these functions are defined somewhere in the kernel. In user code, these functions are defined in the user part of libkogata. Panic and panic_assert end the execution of the current program (or of the kernel when in kernel-mode).