Skip to content

Commit 77bd5d1

Browse files
committed
Implement parsing MultiProcessor tables, initializing APIC, initializing SMP, and port over the interrupt handling in Rust from eduOS-rs.
MAX_CORES is reduced to 256, because MultiProcessor tables don't support more than that. entry.asm is relicensed to MIT just like the rest of the eduOS-rs and HermitCore Rust code. Also improve debugging and make use of the or_else/unwrap_or_else Rust functions. This is all untested work in progress! At least it compiles :)
1 parent ee46872 commit 77bd5d1

File tree

16 files changed

+894
-754
lines changed

16 files changed

+894
-754
lines changed

arch/x86/kernel/entry.asm

Lines changed: 116 additions & 352 deletions
Large diffs are not rendered by default.

kernel/tasks.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -898,7 +898,7 @@ void reschedule(void)
898898
uint8_t flags;
899899

900900
flags = irq_nested_disable();
901-
if ((stack = scheduler()))
902-
switch_context(stack);
901+
/*if ((stack = scheduler()))
902+
switch_context(stack);*/
903903
irq_nested_enable(flags);
904904
}

0 commit comments

Comments
 (0)