TSS 描述符
来源:互联网 发布:如何表示主机域名 编辑:程序博客网 时间:2024/05/22 09:50
与所有其他段一样,任务状态段TSS通过一个段描述符来定义,图5.2给出了一个TSS描述符的格式,TSS描述符只能位于GDT中,而不能存在于LDT和IDT中,企图通过一个标志位TI设置的段选择子来访问一个TSS将产生一个常规保护异常#GP。如果企图将TSS中段选择子装载到一个段寄存器,也将产生常规保护异常。TSS描述符只能通过任务寄存器TR在GDT中检索,即:只有TR可作为TSS的段选择器。
类型域中的忙标志位B说明任务是否正在执行,一个忙任务就是当前正在执行或挂起的任务。例如,类型域的值为1001B说明是一个不忙的任务,值1011B则说明是一个忙的任务。任务不能递归,处理器通过忙标志位来检测并阻止任务的递归调用,为了保证一个任务只有唯一的忙标志位相对应,每个TSS应该只有一个TSS描述符来描述,从而使该任务忙/闲状态一致。
描述符中的基地址、段界限、DPL域、密度位G和存在标志P所具有的功能与数据段描述符类似。段界限域必须有一个等于或大于67H的值(对于32位的TSS),即TSS大小的最小值(104)减1。企图切换到一个TSS描述符段界限小于67H的任务将产生一个无效TSS异常#TS。如果操作系统将额外的数据存储在TSS中,则要求该值大于67H。任务切换时,处理器并不检查大于67H的段界限,然而,当访问I/O允许位映射副本或中断重定向位映射副本时,处理器则要对段界限进行检查。AVL域主要供系统软件使用。
若CPL阈值等于或小于TSS描述符中DPL阈值,访问TSS描述符的程序或过程都能够通过调用或跳转来派遣任务。在大多数系统中,TSS描述符中的DPL阈值应该设置成小于3的值,以便只有具有一定特权的软件才能执行任务的切换。然而,在多任务应用程序中一些TSS描述符的DPL能够设置为3,以允许用户特权级的应用程序执行任务切换。
- TSS描述符
- TSS 描述符
- TSS描述符表的作用
- TSS(任务状态段) TSS描述符 任务寄存器(TR) 任务门描述符 学习总结
- linux对TSS(任务状态描述符)的使用---Linux内核笔记
- 在winxp环境下,用windbg查看GDT表、IDT表、TSS描述符
- tss
- 有关TSS
- TSS TR
- 使用TSS API test suite检测TSS
- 描述符
- 描述符
- 描述符
- 描述符
- 描述符
- 描述符
- 描述符
- 描述符
- 白领的一天:旅游问路实用口语
- 转贴:解释不错的,关于OO
- 用qemu-nbd实现mount虚拟硬盘到Host上的功能
- c运算符优先级(转)
- 白领的一天:日常聊天卡壳了怎么办
- TSS 描述符
- 白领的一天:接听国外客人的来电
- Modeling Our World笔记
- 经典代码--js身份证验证
- vs2010 字体:fixedsys在选项字体设置里面找不到,勉强凑合的解决方法
- MFC中单文档创建两个视图类,左右分开
- 【预告】TUP Masters 对话大师系列UML、RUP、用例与组件之父 Ivar Jacobson 8月26日登陆中国!免费参会名额火热申请中
- 关于页表
- 计算机研究生考试科目