欢迎来到天天文库
浏览记录
ID:70704615
大小:1.68 MB
页数:85页
时间:2021-11-24
《最新张惠娟副教授hjzhangseiecnueducnPPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、张惠娟副教授hjzhangseiecnueducn内容i386存储管理单元Linux存储管理思想物理内存空间管理进程虚拟空间管理请页机制交换空间管理缓冲机制2描述符表在分段机制中,系统维护三种段表,称为描述符表,即全局描述符表、局部描述符表和中断描述符表。描述符表本身占据的字节数为8的倍数,空间大小在8个字节(至少含一个描述符)到64K字节(至多含8K个描述符)之间。i386的存储管理单元9全局描述符表(GDT)全局描述符表包含着系统中所有任务都可用的那些描述符。局部描述符表(LDT)局部描述符
2、表LDT包含了与一个给定任务有关的描述符,每一个任务都有一个各自LDT。i386的存储管理单元10选择器实模式下,段寄存器存储的是真实段地址保护模式下,16位段寄存器无法访问32位段地址,因此,被称为选择器,即段寄存器是用来选择描述符的。i386的存储管理单元11索引TI特权级别15321013位索引段选择器结构12上图说明:TI是选择域,TI=1,从局部描述符表中选择相应描述符,TI=0,从全局描述符表中选择描述符。索引域给出该选择符在GDT或LDT中的入口偏移量,选择符高14位将虚拟地址空间
3、分为16K个独立段,其中8K个全局段和8K个局部段。第1、0位是特权级,表示选择器特权级,称为请求者特权级RPL。只有请求者特权级RPL高于或等于相应描述符特权级DPL,描述符才能被存取,可以实现一定程度的保护。i386的存储管理单元13描述符寄存器全局描述符表寄存器GDTR是一个48位的寄存器。低16位保持全局描述符表GDT大小,最大为64K字节,高32位保持GDT的段基地址。局部描述符表寄存器LDTR可见部分(即程序员可以操作的部分)只有16位,不可见部分有48位,放置局部描述符表的段基地址
4、和界限。i386的存储管理单元14分段方式下,寻址过程如下:在段选择器中装入16位数,同时给出32位地址偏移量(比如在ESI、EDI中等等)。根据段选择器中的索引值、TI及RPL值,再根据相应描述符表寄存器中的段基地址和段界限,进行一系列合法性检查(如特权级检查、界限检查)若无异常,取出相应描述符放入段描述符高速缓冲寄存器中。将描述符中的32位段基地址和放在ESI、EDI等中的32位有效地址相加,就形成了32位物理地址。i386的存储管理单元15i386的存储管理单元16linux分段机制lin
5、ux分页机制Linux内存管理实现Linux的存储管理思想17Linux分段机制linux只定义了四种段寄存器的取值内核代码段0x10内核数据段0x18用户代码段0x23用户数据段0x28Linux的存储管理思想18Linux的存储管理思想19将上表和段选择寄存器对比可知:表明:使用的都是GDT表运行级别分为两级:0和3Linux的存储管理思想20GDT初始化信息在arch
此文档下载收益归作者所有