Kernel: Don't use peridic interrupts for scheduling
Scheduler will now set a timer interrupt deadline for when it should get interrupted next. This fixes a big issue I've had for a long time where sleeping on an idle core would have to wait for the next periodic interrupt to wake up. This could cause 1 ms sleeps to be close to 10 ms. This currently only supports lapic timers and will still fallback to periodic interrupts when running with PIC. I should add deadline support to PIT/HPET but why would you run with APIC disabled ;)
This commit is contained in:
@@ -12,7 +12,7 @@ asm_yield_trampoline:
|
||||
pushl %ebp
|
||||
|
||||
pushl %esp
|
||||
call scheduler_on_yield
|
||||
call scheduler_on_yield_trampoline
|
||||
addl $4, %esp
|
||||
|
||||
popl %ebp
|
||||
|
||||
Reference in New Issue
Block a user