Interrupt handling/cpu exceptions

This commit is contained in:
2025-12-21 11:55:49 +01:00
parent 84c600b903
commit c3123192d8
9 changed files with 324 additions and 4 deletions

35
kernel/amd64/intr.h Normal file
View File

@@ -0,0 +1,35 @@
#ifndef _KERNEL_AMD64_INTR_H
#define _KERNEL_AMD64_INTR_H
#include <libk/std.h>
struct saved_regs {
/* regs */
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 rbx;
uint64_t rbp;
uint64_t rdi;
uint64_t rsi;
uint64_t rdx;
uint64_t rcx;
uint64_t rax;
/* interrupt stuff */
uint64_t trap;
uint64_t error;
uint64_t rip;
uint64_t cs;
uint64_t rflags;
uint64_t rsp;
uint64_t ss;
} __attribute__((packed));
void amd64_intr_init(void);
#endif // _KERNEL_AMD64_INTR_H