2012年11月1日

中断门的DPL [转]

摘要: 由硬件自动实现的中断响应和异常处理的步骤如下: 首先,判断中断向量号要索引的门描述符是否超出IDT的界限。若超出界限,就引起通用保护故障,出错码为中断向量号乘8再加2。 其次,从IDT中取得对应的门描述符,分解出选择子、偏移量和描述符属性类型,并进 行有关检查。描述符只能是任务门、286中断门、286陷阱门、386中断门或386陷阱门,否则就引起通用保护故障,出错码是中断向量号乘8再加2。如果是由INT n指令或INTO指令引起转移,还要检查中断门、陷阱门或任务门描述符中的DPL是否满足CPL<=DPL(对于其它的异常或中断,门中的DPL被 忽略)。这种检查可以避免应用程序执行INT . 阅读全文

posted @ 2012-11-01 23:21 龙豆 阅读(669) 评论(0) 推荐(0) 编辑

进程切换 TSS [转]

摘要: [转] http://www.eefocus.com/article/09-06/74895s.html Intel i386 体系结构包括了一个特殊的段类型,叫任务状态段(TSS),如图5.4所示。每个任务包含有它自己最小长度为104字节的TSS段,在/include/ i386/processor.h 中定义为tss_struct结构: struct tss_struct { unsigned short back_link,__blh; unsigned long esp0; unsigned short ss0,__... 阅读全文

posted @ 2012-11-01 21:35 龙豆 阅读(3620) 评论(0) 推荐(0) 编辑

任务门,调用门,中断门,陷阱门 [转]

摘要: 每个任务有一个任务状态段TSS,用于保存任务的有关信息,在任务内变换特权级和任务切换时,要用到这些信息。为了控制任务内发生特权级变换的转移,为了控制任务切换,一般要通过控制门进行这些转移。本文将介绍任务状态段和控制门。<一>系统段描述符系统段是为了实现存储管理机制所使用的一种特别的段。在80386中,有两种系统段:任务状态段TSS和局部描述符表LDT段。用于描述系统段的描述符称为系统段描述符。1.系统段描述符的格式系统段描述符的一般格式如下表所示。系统段描述符m+7m+6m+5m+4m+3m+2m+1m+0Base(31...24)AttributesSegment Base(23 阅读全文

posted @ 2012-11-01 16:48 龙豆 阅读(891) 评论(0) 推荐(0) 编辑

保护模式特权级别DPL,RPL,CPL 之间的联系和区别 [转]

摘要: 版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://myjfm.blogbus.com/logs/57252310.html---------------------CPL是当前进程的权限级别(Current Privilege Level),是当前正在执行的代码所在的段的特权级,存在于cs寄存器的低两位。 RPL说明的是进程对段访问的请求权限(Request Privilege Level),是对于段选择子而言的,每个段选择子有自己的RPL,它说明的是进程对段访问的请求权限,有点像函数参数。而且RPL对每个段来说不是固定 的,两次访问同一段时... 阅读全文

posted @ 2012-11-01 15:30 龙豆 阅读(1965) 评论(0) 推荐(0) 编辑

导航