Newer
Older
tree-os / src / kernel / kernel.c
#include <stdint.h>
#include <lib/textMode/stdio.h>
#include <tree-os.h>
#include <lib/textMode/cursor.h>
#include <lib/task/task.h>
#include <lib/memory/alloc.h>
#include <lib/task/osTasks.h>

extern uint32_t _kernel_end;

void kernelMain() {
    drawLogo();
    initMemoryAllocation(0x100000); // initializing stacks after the kernel seems to not work :( otherwise, _kernel_end should be passed here
    initOSTasks();
    printf("malloc 0x100: %x\n", malloc(0x100));
    printf("malloc 0x100: %x\n", malloc(0x100));
    printf("Switching to otherTask... \n");
    yields();
    printf("Returned to mainTask!\n");
    yield();
}