10ms Round Robin scheduler (blank processes)
This commit is contained in:
27
src/kmain.c
27
src/kmain.c
@@ -15,6 +15,7 @@
|
||||
#include "mem/paging/vmm.h"
|
||||
#include "mem/heap/kheap.h"
|
||||
#include "sched/process.h"
|
||||
#include "sched/scheduler.h"
|
||||
|
||||
// Limine version used
|
||||
__attribute__((used, section(".limine_requests")))
|
||||
@@ -57,6 +58,7 @@ static volatile LIMINE_REQUESTS_END_MARKER;
|
||||
// Panic (should dump registers etc. in the future)
|
||||
void hcf()
|
||||
{
|
||||
//CLEAR_INTERRUPTS;
|
||||
for (;;)
|
||||
{
|
||||
asm("hlt");
|
||||
@@ -101,7 +103,6 @@ void kmain()
|
||||
gdt_init();
|
||||
idt_init();
|
||||
timer_init();
|
||||
SET_INTERRUPTS;
|
||||
|
||||
pmm_init(boot_ctx.mmap, boot_ctx.hhdm);
|
||||
|
||||
@@ -116,21 +117,23 @@ void kmain()
|
||||
void* ptr3 = kmalloc(5); DEBUG("(KMALLOC TEST) Allocated 5 bytes at 0x%p", ptr3);
|
||||
|
||||
vmm_init();
|
||||
|
||||
struct process_t* pedicel = process_create();
|
||||
struct process_t* two = process_create();
|
||||
struct process_t* three = process_create();
|
||||
|
||||
process_add(&processes_list, pedicel);
|
||||
process_add(&processes_list, two);
|
||||
process_add(&processes_list, three);
|
||||
process_display_list(processes_list);
|
||||
|
||||
scheduler_init();
|
||||
|
||||
SET_INTERRUPTS;
|
||||
|
||||
keyboard_init(FR);
|
||||
|
||||
term_init();
|
||||
kputs(splash);
|
||||
|
||||
for (int i=0; i<10; i++)
|
||||
{
|
||||
printf("testing, attention please %d\n", i);
|
||||
}
|
||||
|
||||
struct process_t* pedicel = process_create();
|
||||
|
||||
process_add(&processes_list, pedicel);
|
||||
process_display_list(processes_list);
|
||||
|
||||
hcf();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user