TSS描述符表的作用

任务状态描述符表TSS用来记录当前进程执行时所对应的寄存器的数据,这些数据主要在进程切换时发挥作用,比如,现在要由当前进程"进程A"切换到进程B,那么系统就要将此时各个寄存器的数值,保存在进程A的任务状态描述符表中,以便将来进程A再次执行时接着使用而不至于出现混乱;之后,再用进程B中TSS里面的寄存器值,来设置相应的寄存器,以此支持进程B接下来的执行。
局部数据描述符表LDT中,记录着当前进程对应程序的代码段和数据段信息,比如代码的基地址等,这些信息将在进程程序执行时提供支持。
系统将来就是通过GDT表中挂接的TSS描述符合LDT描述符,来与当前进程建立关系的,这里将TSS和LDT挂接在全局描述符表GDT中,标志着系统从此具备操作进程1的能力

set_tss_desc(gdt+(nr<<1)+FIRST_TSS_ENTRY, &(p->tss)) ;
set_ldt_desc(gdt+(nr<<1)+FIRST_LDT_ENTRY, &(p->ldt)) ;


  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值