Theseus is a modern OS written from scratch in Rust that explores 𝐢𝐧𝐭𝐫𝐚𝐥𝐢𝐧𝐠𝐮𝐚𝐥 𝐝𝐞𝐬𝐢𝐠𝐧: closing the semantic gap between compiler and hardware by maximally leveraging the power of language safety and affine types. Theseus aims to shift OS responsibilities like resource management into the compiler.
Remove the Option from eoi signature on x86_64, since the active interrupt chip (PIC vs. APIC) will correctly ignore that value even if it is always provided.
This makes the eoi interface much simpler.
In the interrupt_handler!() macro, allow the IRQ number parameter to be _ to indicate that the handler doesn't care or doesn't need to actually provide an IRQ for EOI.
Remove the
Option
fromeoi
signature on x86_64, since the active interrupt chip (PIC vs. APIC) will correctly ignore that value even if it is always provided.eoi
interface much simpler.In the
interrupt_handler!()
macro, allow the IRQ number parameter to be_
to indicate that the handler doesn't care or doesn't need to actually provide an IRQ for EOI.