在保护模式下,中断是通过IDT来创造中断上下文的执行空间。至于说中断上下文不能访问用户空间地址,并不是因为权限不够(考虑到IDT中中断描述符项中的segment selector的RPL),而是因为中断上下文并不是一个完整的进程空间,所以就虚拟地址空间而言,中断上下文不具备完整的虚拟地址空间的页表项,所以理所当然地,不具有用户空间的虚拟地址页表目录。
但是从理论上讲,让中断上下文环境中做到访问用户空间是完全可行的。在中断发生时,将被中断进程的CR3加入到为中断上下文创立的堆栈中,这样中断上下文将具备完整的进程上下文中完备的虚拟地址空间页表。
对中断的思考
最新推荐文章于 2022-11-28 14:10:42 发布