现代微机结构80286保护模式.ppt

上传人:牧羊曲112 文档编号:6590366 上传时间:2023-11-15 格式:PPT 页数:36 大小:240.16KB
返回 下载 相关 举报
现代微机结构80286保护模式.ppt_第1页
第1页 / 共36页
现代微机结构80286保护模式.ppt_第2页
第2页 / 共36页
现代微机结构80286保护模式.ppt_第3页
第3页 / 共36页
现代微机结构80286保护模式.ppt_第4页
第4页 / 共36页
现代微机结构80286保护模式.ppt_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《现代微机结构80286保护模式.ppt》由会员分享,可在线阅读,更多相关《现代微机结构80286保护模式.ppt(36页珍藏版)》请在三一办公上搜索。

1、3、描述子和选择子(1)数据/代码段描述子 描述子是一个数据结构,用于描述所对应的(或所描述的)那个存储段的访问属性。,访问属性包括:,一个存储段可以被哪一特权级的任务访问 该段的大小 该段的读写/可执行权限 该段的基地址,数据/代码段描述子的结构,BASE2316 BASE150:,Limit(段限):,描述子所描述的那个段的段基地址,该段的最后一个字节的偏移量,指明了该段的大小。,A:该段是否被访问,该位与时钟相结合,可进行段淘汰,该段已被访问过,则 A 1,该段未被访问过,则 A 0,S:描述子类型,0 系统描述子(如门描述子/任务状态段描述子),1 数据代码段描述子,TYPE:,由三位

2、构成,即数据段(E,ED,W)或代码段(E,C,R)。,P:,0 该描述子所描述的段不在物理空间1 该描述子所描述的段在物理空间,DPL:,规定可以访问该描述子所描述的那个段的任务的最低特权级。,若该段为代码段,则 E=1,C,R,0 非一致性代码段 访问和被访问代码段特权级相同1 一致性代码段 访问和被访问代码段特权级可以不同,0 代码段只能执行,不能读1 代码段可以执行,也可以读,E=1,若该段为数据段,则 E=0,ED,0:段向上生长,则要求偏移量 段限1:段向下生长,则要偏移量 段限,W,0:数据段只能读,不能写1:数据段可读、可写,E=0,根据描述子中的内容和定义,将保护模式下的寻址

3、过程描述为:,得到描述子,由程序给出,访问描述子表,虚地址(选择子,偏移量),物理地址,系统提供三个寄存器存放描述子表的基地址,称为描述子表基地址寄存器,分别为:,局部描述子表基地址寄存器,全局描述子表基地址寄存器,中断描述子表基地址寄存器,选择子 指明使用该选择子的任务的特权级 指明所要访问的描述子在描述子表中的偏移量 指明访问全局描述子表还是访问局部描述子,RPL:请求特权级,用以表示使用该选择子的任务的特权级,当前运行任务的特权级称为当前特权级CPL。,一般有:RPL=CPL,TI:区分访问全局描述子还是局部描述子:,1 访问局部描述子,TI=,0 访问全局描述子,偏移量D15D3:,所

4、要访问的描述子在描述子表中的偏移量。,描述子和选择子的引出,可将保护模式下存储段的访问过程描述如下:,某一任务,段基地址,段偏移量,LDTR,一个描述子对应一个存贮段,段的最大空间64K,因此可访问的最大存储空间(虚地址空间)为:,虚存空间的计算,可以访问的描述子的数量为213=8K(个描述子),TI位区分了全局描述子或局部描述子,因此可以访问的描述子的总数为:28K=16K(=214),16K64K=1000M,加快访问速度,访问权限 段基地址BASE 段限Limit,隐Cache,隐Cache的内容随着段寄存器的修改而被重新装入,这种装入操作对程序员透明。,关于“数据/代码段描述子”寻址过

5、程例,假设一个32位的虚地址:,选择子 005E=0 0 0 0 0 0 0 0 0 1 0 1 1 1 10,TI=1,访问局部描述子,RPL=2,低位补3个0,为0058H,作为访问LDT的偏移量,为什么低位补3个0?,每个描述子为8个字节,意味着选择子中的偏移量每增减一个单位,应指向另一个描述子(偏移8个字节),因此偏移量的D2D1D0保持为0,增减一个单位均在D3上进行,以保证偏移8字节。,假设 LDTR=100000H第一步:,第二步:,将描述子表基地址LDTR+选择子偏移量=100000H+0058H=100058H,由物理地址100058H访问并得到相应的描述子,检查对该描述子访

6、问的合法性(比较CPL和DPL),假设DPL=3,则CPL=RPL=2DPL(数值上),访问是合法的。,第三步:,第四步:,由描述子中的访问权字段(TYPE)检查本次访问的访问权限,假设通过检查,将虚地址中的偏移量(即0100H)与描述子中的段限Limit进行比较,以确定访问是否越界,假设描述子中给出的段基地址位046000H,Limit=2000H,有偏移量0100段限2000H,未越界。,形成物理地址046000+0100=046100H,以此访问存储单元的物理地址,得到所需要的数据。,(2)系统描述子之一:门描述子 用途 用于代码段之间的转移控制和保护,以及任务之间的切换(不用于描述某个

7、存储段的属性):,第一:控制同一个任务内不同代码段之间的转移,第二:用于控制任务之间的切换,类别及格式,四种类型:,控制同一个任务内不同代码段之间的转移,控制任务之间的切换,调用门、中断门、自陷门、任务门,调用门 中断门 自陷门,主程序调用子程序、转移指令,中断引起的代码段转移,自陷引起的代码段转移,区别仅在于调用中断门时要将IF置0,调用自陷门则不管IF标志,调用门/中断门/自陷门的应用范围,若是任务门,则表示TSS描述子的选择子,仅调用门使用,该偏移量对任务门无效,门描述子的格式,P,0 该描述子内容无效1 该描述子内容有效,TYPE,4:调用门5:任务门6:中断门7:自陷门,对任务门,任

8、务门与任务状态段描述子一起,控制任务之间的切换。,通过中断门/自陷门实现代码段转移调用的过程:,由中断门或自陷门,由该选择子,得到,服务程序入口地址,通过调用门实现代码段调用的过程,由该选择子,转移到,目标代码段,1 流程中的地址转换过程,只要访问描述子,都需要作的保护性检查,比如仅当CPLDPL时转换过程才能继续往下进行。,说明:,在保护模式下,同一任务的不同代码段,也有不同的特权级,意味着主调代码段与被调代码段可能处于不同的特权级,因此需要指明目标代码段特权级,并由此实现这种同一任务特权级的改变。,2 为什么需要两次访问描述子(第一次是访问门描述子,第二次是访问目标代码段描述子),为实现特

9、权级的改变,通过“门”这样一个描述子中提供目标代码段描述子的选择子,该选择子的低2位(RPL)指明目标代码段的特权级。,假设:,源代码段的特权级为CPL1;,转换过程如下图所示:,目标代码段的特权级为CPL2;,CPL1与“门”中的DPL比较,判明是否满足CPL1DPL,D1D0(RPL)即为CPL2,与目标代码段描述子中的DPL比较,如果满足CPL2DPL,目标代码段2 CPL2,3 中断/自陷/调用门的使用场合:,同级特权级之间转移,可以使用也可以不使用“门”。不使用“门”意味着在指令中直接引用目标代码段描述子的选择子来访问目标代码段描述子。即:,选择子,描述子,任务门可在LDT、GDT和

10、IDT任何一个表中。,4 任务门的存放位置,如果将任务门放在IDT表中,即可以通过访问IDT表来访问任务门,则可以达到由于中断而发生任务切换的目的。,向更低特权级转移,可以使用也可以不使用调用门,但不管使用与否,都只能发生在RET或IRET两种情况。可以直接引用目标代码段描述子的选择子,此时,该选择子中的RPL将成为新的CPL2。,向更高级转移,向更高特权级转移,必须“门”来实现。,(3)系统描述子之二:任务状态段描述子,任务状态段,多个任务运行过程例(按优先级剥夺方式),Task2,Task1,Task3,t0,t5,t1,t2,t3,t4,任务状态段(Task State Segment

11、简称TSS):用于存放在任务被切换时刻的处理器现场的一个存储段。每个任务都有一个TSS。,优先级,高,低,TSS中的内容随着任务的执行不断发生变化。,TSS的内容主要包括:,任务状态段描述子,与“门”的P位含义相同,任务切换可由JMP、CALL指令或中断(INT)指令,异常或外部中断引起。JMP、CALL指令可以直接引用一个任务状态段,也可以先引用一个GDT或LDT中的任务门,再由任务门的选择子引用任务状态段描述子访问任务状态段而实现任务转换。中断类的指令则必须先从IDT中引用任务门,再由任务门的选择子引用状态任务段而实现任务转换。IRET指令通过引用IDT中的任务门而返回到原任务中去。,任务

12、切换的引起,直接切换 直接引用目标任务状态段描述子的选择子 间接切换 从引用任务门开始,由任务门提供目标任务状态段描述子的选择子,任务切换方式,直接切换,同特权级之间或向更低的特权级切换,可采用直接切换。,直接切换不使用任务门,直接引用任务状态段描述子的选择子来访问TSS,以实现任务切换。,如下图所示:,TSS2描述子,TSS2,任务2,间接切换则可以向任何特权级切换。需要使用任务门。,间接切换,切换过程如下图所示:,任务门,保护处理器现场 TSS1,TSS2描述子的选择子,访问,TSS2描述子,得到,若直接切换,则从此处开始,TSS2,任务2,访问,按TSS2布置处理器现场,小结,虚地址保护:保证复杂多任务系统的可靠的运行。,各种私用和公用数据段,各种系统任务和库函数,实现:系统任务与应用任务之间隔离与保护 应用任务与应用任务之间隔离与保护 任务与数据之间的隔离与保护,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号