intermezzOS / kernel

A hobby operating system, in Rust
http://intermezzos.github.io/
Apache License 2.0
1.39k stars 90 forks source link

Interrupts #72

Closed steveklabnik closed 7 years ago

steveklabnik commented 7 years ago

Re-introduce interrupts.

  1. Add a pic crate, we need to remap the pic to enable interrupts.
  2. Create the trampoline for creating interrupts
  3. Set up the GPF handler. All unused interrupts go here, thanks to the x86 crates' MISSING handler.
  4. Set up the timer handler. We don't want to do anything with it yet.
  5. Set up panic to print something.

Okay, so 5 really, really isn't great. I'm not sure how to get around it, though. Basically, we have to create a static reference to the thing we're trying to not keep static. It's gross. Idk.

steveklabnik commented 7 years ago

@ketsuban comments on IRC

16:14 < Ketsuban> You might consider serial output rather than VGA, if staticness is a concern.

steveklabnik commented 7 years ago

I think this is good to go :confetti_ball: