The Interrupt Table and Isr (Interrupt Service Routine) classes.
| Isr |
An exception is generated by the CPU to indicate incorrect code behavior[[1]].
To distinguish exceptions, every exception needs a different entry point[[2]].
For example:
asm
isr8_double_fault:
push eax ; (smaller than push 0) or replaced by nop
push byte 8
jmp isr_common
Since inline assembly has limitations, we build these entries dynamically.
The CPU doesn't push error code on the stack when calling some exceptions.
In these cases, we push a dummy value to align the stack[[3]].
|
| Table |
|
Keyboard shortcuts
- ?
- Show this help dialog
- S
- Focus the search field
- ⇤
- Move up in search results
- ⇥
- Move down in search results
- ⏎
- Go to active search result
Search tricks
Prefix searches with a type followed by a colon (e.g.
fn:) to restrict the search to a given type.
Accepted types are: fn, mod,
struct (or str), enum,
trait, typedef (or
tdef).