IA-32任务管理概述
IA-32提供了一套机制,用以保存任务的状态、调试执行任务和任务切换。
处理器所有执行都发生在一个任务内,这个任务可以是一个程序、一个进
程、一个操作系统服务例程、一个中断或异常处理例程等。
IA-32任务结构
任务由任务执行空间和任务状态段TSS组成。任务执行空间由代码段、栈段、
一个或多个数据段。在使用了处理器的特权级保护的机制下,每一个特权级
分别提供了一个独立的栈。TSS指定组成任务执行空间的各个段并提供任务
的状态信息。多任务系统中,TSS提供任务的链接机制。
IA-32任务怎么加载
当任务被加载进处理器执行时,则把它的TSS的段选择子、基地址、界限以及
段描述符的属性等加载到任务寄存器中TR。
IA-32任务怎么运行
1:用call显示调用任务。
2:用jmp显示地跳转到任务。
3:处理器隐式地调用中断处理程序任务。
4:隐式地调用异常处理程序任务。
5:EFLAGS寄存器的NT标志时的任务返回(IRET)
IA-32任务管理数据结构
1:TSS
2:任务门描述符
3:TSS描述符
4:任务寄存器TR
5:EFLAGS的NT标志
详解参见:x86内存管理数据结构文章
任务的线性地址到物理地址空间的映射
当分页机制打开时,每个任务有它自己的映射到物理地址空间的线性地址空间,
通过每个任务使用一个不同的页目录表可以达到这种映射。两个任务通过使用共
享的LDT来共享数据。