Scheduler returns to IDLE when.. idle.

This commit is contained in:
2026-03-09 09:27:55 +01:00
parent 42c7a55d3f
commit 3f9b78b05e
6 changed files with 20 additions and 17 deletions

View File

@@ -50,16 +50,24 @@ extern volatile struct limine_kernel_address_request kerneladdr_request;
extern struct process_t* processes_list;
extern struct process_t* current_process;
struct process_t* idle_proc;
bool iran = false;
// Never gets executed although pedicel is scheduled?
void pedicel_main(void* arg)
{
bool iran = true;
// FROM THE NEXT LINE ONWARDS, CANNOT WRITE TO FRAMEBUFFER WITHOUT PAGE FAULT!
//printf("\n\nWelcome to PepperOS! Pedicel speaking.\nNothing left to do, halting the system!");
}
void idle_main(void* arg)
{
for(;;)asm("hlt");
for (;;)
{
asm("hlt");
}
}
extern uintptr_t kheap_start;
@@ -94,17 +102,13 @@ void kmain()
idt_init();
process_init();
struct process_t* idle_proc = process_create("idle", (void*)idle_main, 0);
idle_proc = process_create("idle", (void*)idle_main, 0);
struct process_t* pedicel = process_create("pedicel", (void*)pedicel_main, 0);
process_display_list(processes_list);
scheduler_init();
current_process = idle_proc;
current_process->status = RUNNING;
kputs(PEPPEROS_SPLASH);
//panic(NULL, "Test panic");
idle();
}