#ifndef _LIBMSL_M_SYSTEM_H #define _LIBMSL_M_SYSTEM_H #include #include #if defined(__x86_64__) #define PAGE_SIZE 4096 #endif #define MAP_PRESENT (1 << 0) #define MAP_RW (1 << 1) #define MAP_USER (1 << 2) #define MAP_FLAGS (MAP_PRESENT | MAP_USER) int quit (void); int test (char c); int sched (void); void* map (uintptr_t vaddr, size_t pages, uint32_t flags); int unmap (uintptr_t vaddr, size_t pages); int clone (uintptr_t vstack_top, void (*entry) (void), void* argument_ptr); int mutex_create (int mutex_rid); int mutex_delete (int mutex_rid); int mutex_lock (int mutex_rid); int mutex_unlock (int mutex_rid); void* argument_ptr (void); #endif // _LIBMSL_M_SYSTEM_H