欢迎来到天天文库
浏览记录
ID:34761518
大小:87.13 KB
页数:4页
时间:2019-03-10
《实验描述符及描述符表实验》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验2:全局描述符及描述符表实验一、实验目的1、熟悉保护模式的编程格式和描述符的声明方法。2、掌握使用选择符访问段的寻址方法。二、实验原理分析1、分段存储管理机制32位微处理器有两种工作模式:实模式和保护模式。实模式下:段寄存器中保存段基地址,逻辑地址空间中存储单元的地址是由段基地址和段偏移地址构成,即:16位段基地址×16+16位段偏移地址=20位地址物理地址的寻址空间为220=1MB段最大长度为216=64KB例如:逻辑地址为2345H:1100H段基地址2345H段内偏移地址1100H对应的物理地址为:2345H×16(
2、23450H)+1100H=24550H一般:用CS:IP(或CS:EIP)定位微处理器执行的下一条指令。用SS:SP(或SS:ESP)寻址存储器堆栈段中的数据。用DS(或ES)寻址储存器的数据段中的数据。保护模式下:微处理器支持多任务运行环境,对各个任务进行隔离和保护,进行虚拟存储管理,以充分发挥32位微处理器的性能。所以,保护模式中的保护就是对多任务中的各个正在执行的任务进行保护。保护模式采用分段管理机制和分页管理机制对内存进行管理,逻辑地址空间的存储单元地址由段选择符和段偏移地址构成。地址构成示意图如下所示:(见实验指导
3、书P9,图1-3-1保护模式下的地址转换)若无分页管理机制时,线性地址就直接映射为物理地址分段管理机制:将逻辑地址(虚拟地址)转换成线性地址。在32位微处理器中,该机制必须具有。段寄存器中保存的是16位段选择符,通过该选择符选择对应段中的段信息(如段起始地址、段长和段属性等),段信息由其对应的描述符来描述,并存放在描述符表中。所有描述符组成描述符表,并由CPU伴随选择符装入段寄存器而对应装入描述符寄存器中(对程序员不可见)。一但某个段寄存器中装入了某段的选择符,则该段对应的描述符也就装入描述符寄存器中,以供微处理器使用。分段管
4、理机制示意图如下所示:(见实验指导书P9,图1-3-2保护模式下分段管理)(分段管理机制的实现过程…)保护模式中,段寄存器里保存的是16位段选择符,而段基地址是通过16位的选择符索引描述符表后才能得到的。分页管理机制:将线性地址映射成物理地址。(该机制可有可无,本实验不作分析)2、段选择符与段描述符(1)段选择符(子)32位微机保护模式下,段选择符用来在描述符表中查找相对应的段描述符,其格式如下图所示:描述符索引TIRPL153210描述符类型“0”:GDT“1”:LDT特权级“00”:0级“01”:1级“10”:2级“11”
5、:3级13位索引值段选择符为16位长,可索引214(16K)个描述符(包括全局和局部)。每个描述符定义的段基地址为32位,所以,段存储管理的虚拟地址空间为214×232=64TB。例如:第1个GDT选择符为“0000000000001000”,即0008H;第2个GDT选择符为“0000000000010000”,即0010H;第3个GDT选择符为“0000000000011000”,即0018H;……(2)描述符及描述符表描述符:保护模式下,每个段由一个描述符来定义,并规定了段基地址(32位)、段界限长(20位)和段属性(1
6、2位),描述符格式如下图所示:(见实验指导书P10-11,图1-3-3—图1-3-5)段描述符分为存储段描述符、系统段描述符和门描述符,格式详见实验指导书P10-11。其中,存储段描述符包含代码段和数据段描述符。描述符表:为了管理方便,把描述符组织成线性表而进行的管理。32位微处理器共可支持三种描述符表即:全局描述符表(GDT)、局部描述符表(LDT)和中断描述符表(IDT)。(详细解释见实验指导书P12)在GDT中,第一个描述符为空描述符(即:所有值为0)3、基于TDDEBUG的32位保护模式的程序设计问题(解释详见实验指导
7、书P15-16)为了使实验程序能够正确的装入实验调试系统,编写实验程序应遵守以下基本约定:(1)描述符的声明顺序实验程序中需要将在程序中使用的所有描述符定义在程序的最前端,首先,使用一个全“F”的描述符作为定义的开始,其后要声明在全局描述符表GDT中出现的描述符。即,第一个全“F”为GDT的开始。其次,再使用一个全“F”的描述符作为区分GDT和LDT的分界。即,第二个全“F”作为GDT的结束或LDT的开始。最后,使用一个全“F”的描述符作为定义的结尾。即,第三个全“F”作为结尾标志。全“F”描述符的格式如下:16位段界限0~1
8、50FFFFH,0FFFFH,0FFH,0FFH,0FFH,0FFH段基地址0~15段基地址16~23段访属问性权低限8位段4属位性段高限4长位16~19段基地址24~31(结合实验指导书P10,图1-3-5进行分析)(2)选择符定义实验程序中选择符由用户定义,实验调试系统在
此文档下载收益归作者所有