我已经加载了一个包含256个条目的idt表,它们都指向类似的处理程序:
因此,当公共处理程序进入时,堆栈正确对齐并包含异常/中断号,错误代码(可能只是虚拟代码),eflags,cs和eip.
我的问题是关于从中断处理程序返回.我iret从堆栈中取出异常编号和错误代码后使用返回,但这不适用于异常nr 8; 如果我把错误代码留在堆栈上,那么它返回正常!
iret
问题:
x86 assembly operating-system interrupt osdev
assembly ×1
interrupt ×1
operating-system ×1
osdev ×1
x86 ×1