INTERFACE:
-#include "thread.h"
+#include "thread_object.h"
-class Kernel_thread : public Thread
+class Kernel_thread : public Thread_object
{
private:
/**
PUBLIC
-Kernel_thread::Kernel_thread() : Thread(Thread::Kernel)
+Kernel_thread::Kernel_thread() : Thread_object(Thread::Kernel)
{}
PUBLIC inline
Timer::init_system_clock();
Sched_context::rq(cpu()).set_idle(this->sched());
+ Kernel_task::kernel_task()->mem_space()->make_current();
+
// Setup initial timeslice
- set_current_sched (sched());
+ set_current_sched(sched());
Timer::enable();
bootstrap_arch();
+ Per_cpu_data::run_late_ctors(0);
+
Proc::sti();
printf("Calibrating timer loop... ");
// Init delay loop, needs working timer interrupt