1 2 3 4 5 6 7 8
#include "scheduler.h" Scheduler::task::task(uint8_t* stack, void (*entry)(), uint16_t cs) { cpu = reinterpret_cast<cpu_state_t*>(stack + 4096 - sizeof(cpu_state_t)); cpu->eip = reinterpret_cast<uint32_t>(entry); cpu->cs = cs; cpu->eflags = 0x202; }