PatchworkOS
Loading...
Searching...
No Matches
interrupt_frame_t Struct Reference

Trap Frame Structure. More...

#include <interrupt.h>

Data Fields

uint64_t r15
 
uint64_t r14
 
uint64_t r13
 
uint64_t r12
 
uint64_t r11
 
uint64_t r10
 
uint64_t r9
 
uint64_t r8
 
uint64_t rbp
 
uint64_t rdi
 
uint64_t rsi
 
uint64_t rdx
 
uint64_t rcx
 
uint64_t rbx
 
uint64_t rax
 
uint64_t vector
 
uint64_t errorCode
 
uint64_t rip
 
uint64_t cs
 
uint64_t rflags
 
uint64_t rsp
 
uint64_t ss
 

Detailed Description

Trap Frame Structure.

Stores the CPU state at the time of a interrupt, usefull for context switching as we can modify the registers before returning from the interrupt.

Definition at line 41 of file interrupt.h.

Field Documentation

◆ cs

◆ errorCode

uint64_t interrupt_frame_t::errorCode

Definition at line 60 of file interrupt.h.

Referenced by exception_handler(), panic(), and thread_handle_page_fault().

◆ r10

uint64_t interrupt_frame_t::r10

Definition at line 48 of file interrupt.h.

Referenced by panic_registers().

◆ r11

uint64_t interrupt_frame_t::r11

Definition at line 47 of file interrupt.h.

Referenced by panic_registers().

◆ r12

uint64_t interrupt_frame_t::r12

Definition at line 46 of file interrupt.h.

Referenced by panic_registers().

◆ r13

uint64_t interrupt_frame_t::r13

Definition at line 45 of file interrupt.h.

Referenced by panic_registers().

◆ r14

uint64_t interrupt_frame_t::r14

Definition at line 44 of file interrupt.h.

Referenced by panic_registers().

◆ r15

uint64_t interrupt_frame_t::r15

Definition at line 43 of file interrupt.h.

Referenced by panic_registers().

◆ r8

uint64_t interrupt_frame_t::r8

Definition at line 50 of file interrupt.h.

Referenced by panic_registers().

◆ r9

uint64_t interrupt_frame_t::r9

Definition at line 49 of file interrupt.h.

Referenced by panic_registers().

◆ rax

uint64_t interrupt_frame_t::rax

Definition at line 57 of file interrupt.h.

Referenced by panic_registers().

◆ rbp

uint64_t interrupt_frame_t::rbp

Definition at line 51 of file interrupt.h.

Referenced by panic_registers(), and panic_stack_trace().

◆ rbx

uint64_t interrupt_frame_t::rbx

Definition at line 56 of file interrupt.h.

Referenced by panic_registers().

◆ rcx

uint64_t interrupt_frame_t::rcx

Definition at line 55 of file interrupt.h.

Referenced by panic_registers().

◆ rdi

uint64_t interrupt_frame_t::rdi

◆ rdx

uint64_t interrupt_frame_t::rdx

Definition at line 54 of file interrupt.h.

Referenced by panic_registers().

◆ rflags

◆ rip

◆ rsi

uint64_t interrupt_frame_t::rsi

Definition at line 53 of file interrupt.h.

Referenced by loader_process_entry(), and panic_registers().

◆ rsp

◆ ss

◆ vector

uint64_t interrupt_frame_t::vector

Definition at line 59 of file interrupt.h.

Referenced by exception_handler(), interrupt_handler(), irq_dispatch(), and panic().


The documentation for this struct was generated from the following file: