challenge6.2:init_IDT
challenge6.2:init IDT
编程完善kern/trap/trap.c中对中断向量表进行初始化的函数idt_init。在idt_init函数中,依次对所有中断入口进行初始化。使用mmu.h中的SETGATE宏,填充idt数组内容。每个中断的入口由tools/vectors.c生成,使用trap.c中声明的vectors数组即可。
/* idt_init - initialize IDT to each of the entry points in kern/trap/vectors.S */ |
在kern/mm/memlayout.h中,对内核权限和用户态权限的定义;
在kern/trap/trap.h中,对开关的定义;
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 K1ose's Space!