#include #include #include #include #include #include #include "memory.h" /**This program acts as a memory and process server.*/ #define INIT_HEAP_START_BYTES 8192 __attribute__((section(".bss.heap"))) uint8_t init_heap[INIT_HEAP_START_BYTES]; size_t init_heap_start = (uintptr_t)init_heap; __attribute__((noreturn)) static void spin_fail(void) { for(;;); } void* init_bumpalloc(size_t bytes) { void *r = (void*)init_heap_start; init_heap_start += bytes; return r; } KernelObjectDirectory untypedDirectory; void main(void *message_ptr) { libjove_init( INIT_OBJECT_MESSAGE, message_ptr); _jove_alloc = init_bumpalloc; jove_kprintf("Hello, Userland!\n"); pager_setup(); for(;;); }