1
feather12315 2022-07-20 18:50:44 +08:00 via Android
严格来讲,你口中的这类中断叫 exception 中的 trap ,trap 是 0x80 。
广义的 IRQ ,并非每个都会改变特权等级。 |
2
bybyte OP @feather12315 🙏谢谢大佬回复,我试了下由外部中断引发的调用是会改变 CPL ,但是我想试着用软件中断改变,不知道可不可行
|
3
feather12315 2022-07-20 23:27:56 +08:00 via Android
@bybyte #2
1. 外部触发的中断不一定会改变 CPL ,这个要看出发 IRQ 时候的上下文了。我记得填 idt 的时候会有参数填 CPL 的吧 2. 软件触发的中断(狭义)属于叫 ipi ,能不能改变同 1 。怎么做我回答不了,翻翻手册页吧 |
4
bybyte OP 问题解决了,
1.代码段需要设置为一致性代码 2.要设置好 tr 寄存器 |