公告

Gentoo群:87709706,OS群:838664909

#1 2022-08-26 15:03:51

batsom
管理团队
注册时间: 2022-08-03
帖子: 594
个人网站

ltr

装载任务状态段寄存器TR
    在任务内发生特权级变换时堆栈也随着自动切换,外层堆栈指针保存在内层堆栈中,而内层堆栈指针存放在当前任务的TSS中。所以,在从外层向内层变换时,要访问TSS(从内层向外层转移时不需要访问TSS,而只需内层栈中保存的栈指针)。实例在进入保护模式下的临时代码段后,通过如下两条指令装载任务状态段寄存器TR,使其指向已预置好的任务的TSS:

mov ax,SelectorTSS

ltr ax


    LTR指令是专门用于装载任务状态段寄存器TR的指令。该指令的操作数是对应TSS段描述符的选择子。LTR指令从GDT中取出相应的TSS段描述符,把TSS段描述符的基地址和界限等信息装入TR的高速缓冲寄存器中。



UD2指令,产生一个中断,该中断使处理器把eflags,cs,ip等压入堆栈。ud2指令的bochs调试地址为:0x30430

离线

页脚