《存储器管理传》PPT课件.ppt

上传人:小飞机 文档编号:5491729 上传时间:2023-07-12 格式:PPT 页数:45 大小:369.50KB
返回 下载 相关 举报
《存储器管理传》PPT课件.ppt_第1页
第1页 / 共45页
《存储器管理传》PPT课件.ppt_第2页
第2页 / 共45页
《存储器管理传》PPT课件.ppt_第3页
第3页 / 共45页
《存储器管理传》PPT课件.ppt_第4页
第4页 / 共45页
《存储器管理传》PPT课件.ppt_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《《存储器管理传》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《存储器管理传》PPT课件.ppt(45页珍藏版)》请在三一办公上搜索。

1、2023/7/12,基本分页存储管理模式,作业地址空间划分成连续的大小相同的页面,内存划分成连续的大小相等的块(也称为页框),作业进入内存时其不同的页面对应于内存中不同的块,连续页面可以对应不连续的块。,2023/7/12,地址结构 用户程序的划分是由系统自动完成的,对用户是透明的。一般,一页的大小为2的整数次幂,因此,地址的高位部分为页号,低位部分为页内地址,2023/7/12,页表,将页号和页内地址转换成内存地址,必须要有一个数据结构,用来登记页号和块的对应关系和有关信息。这样的数据结构称为页表。页表的作用就是实现从页号到物理块号的地址映射。,2023/7/12,地址变换过程,2023/7

2、/12,计算时要注意:若给出的地址字为16进制,则将其转换为二进制,然后,根据页长及程序地址字的长度,分别取出程序地址字的高几位和低几位就得到页号及页内地址。如页长为2K,程序地址字为16位,则高5位为页号,低11位为页内地址。,2023/7/12,若给出的地址字为10进制,则用公式:程序地址字/页长 商为页号,余数为页内地址。如程序地址为8457,页长为4KB,则8457/4096可得:商为2,余数为256。,2023/7/12,分页存储管理中的信息保护,分页存储管理中的存储信息保护从两个方面来实现。一、在分离程序地址字的页号和页内地址时判别访问是否合法,若产生的页号满足下式为合法:0=页号

3、程序地址空间的页数上述判断由硬件自动做,若不合法,硬件产生越界中断,由操作系统的越界中断处理程序进行处理。,2023/7/12,二、在页表中增加用于存取控制和存储保护的信息,当要访问某页时系统要根据该页的存取控制和存储保护信息检查访问是否合法。(主要用来判断访问是否越权),2023/7/12,2、快表和联想存储器,在前述的页地址变换过程中有一个严重的问题,那就是每一次对内存的访问都要访问页表,页表是放在内存中的,也就是说每一次访问内存的指令至少要访问两次内存,运行速度要下降一半。第一次访问内存中的页表,从中找到指定页的物理块号,再将块号与页内偏移量W拼接,形成物理地址第二次访问内存时,才是从第

4、一次所得地址中获得所需数据(获向此地址中写入数据),2023/7/12,解决这个问题的一种方法是把页表放在一组快速存储器中(Cache),从而加快访问内存的速度。我们把这种快速存储器组成的页表称为快表,把存放在内存中的页表称为慢表。快表又叫联想存储器(associative memory)或 TLB(Translation lookaside buffers)用以存放当前访问的那些页表项,2023/7/12,地址变换过程:在CPU给出有效地址后,由地址变换机构自动将页号P送入高速缓冲寄存器,并将此页号与高速缓存中的所有页号进行比较,若其中有与此相匹配的页号,便表示所要访问的页表项在快表中,可直

5、接从快表中读出该页所对应的物理块号,并送到物理地址寄存器中如果未找到对应的页表项,则还须再访问内存中的页表,找到后,把从页表项中读出的物理块号送地址寄存器;同时将此页表项存入快表的一个寄存器单元中。如果联想寄存器已满,则OS必须找到一个老的且已被认为不再需要的页表项,将它换出。,2023/7/12,2023/7/12,两级页表和多级页表,当页表项很多时,仅采用一级页表需要大片连续空间,可将页表也分页,并对页表所占的空间进行索引形成外层页表。由此构成二级页表。更进一步可形成多级页表。,2023/7/12,二级页表结构及地址映射,逻辑地址结构可描述如下:,2023/7/12,二级页表结构及地址映射

6、,2023/7/12,具有两级页表的地址变换机构,2023/7/12,页式存储管理方案小结,某计算机采用二级页表的分页存储管理方式,按字节编制,页大小为210字节,页表项大小为2字节,逻辑地址结构为 逻辑地址空间大小为216页,则表示整个逻辑地址空间的页目录表中包含表项的个数至少是()A、64B、128C、256D、512,2023/7/12,逻辑地址转物理地址:,2023/7/12,在分页存储管理系统中,有一作业大小为4页,页长为2K,页表如下:试借助地址变换图(即要求画出地址变换图)求出逻辑地址4635所对应的物理地址。,2023/7/12,2023/7/12,有一页式系统,其页表存放在主

7、存中。(1)如果对主存的一次存取要3us,问实现一次页面访问要多长时间。(2)如系统有快表,平均命中率为97%,假设访问快表的时间忽略为0,问此时一次页面访问要多长时间。,2023/7/12,1、2*3=6us2、0.97*3+0.03*6=3.09us,2023/7/12,页式存储管理方案小结,优点:解决了碎片问题 便于管理可以使程序和数据存放在不连续的主存空间缺点:不易实现共享 不便于动态连接 页表都有可能占用较大的存储空间。要求有相应的硬件支持,从而增加了系统成本,也增加了系统开销,2023/7/12,4.5 分段存储管理,4.5.1 分段存储管理方式的引入 4.5.2 分段系统的基本原

8、理 4.5.3 信息共享4.5.4 段页式存储管理方式,2023/7/12,4.5.1 分段存储管理方式的引入,引入:主要是为了满足用户和程序员的需要方便用户:用户希望逻辑分段信息共享信息保护动态增长动态连接,2023/7/12,4.5.2 分段系统基本原理,1、分段用户程序划分 按程序自身的逻辑关系划分为若干个程序段,每个程序段都有一个段名,且有一个段号。段号从0开始,每一段段内也从0开始编址,段内地址是连续的。段的长度由相应的逻辑信息组的长度决定,因而各段长度不等。逻辑地址:由段号和段内地址组成,2023/7/12,0,116,N,2023/7/12,内存划分 内存空间被动态的划分为若干个

9、长度不相同的区域,称为物理段,每个物理段由起始地址和长度确定内存分配 以段为单位分配内存,每一个段在内存中占据连续空间(内存随机分割,需要多少分配多少),但各段之间可以不连续存放,2023/7/12,操作系统,操作系统,2023/7/12,2、段表 段映射表。每个程序有一个段表 程序的每个段在表中占有一个表项,其中记录了该段在内存中的起始地址和段的长度。可放在内存中,也可放在寄存器中。段表是用于实现从逻辑段到物理内存区的映射。,2023/7/12,3、地址变换机构,段地址映射过程为:系统中设置了段表寄存器,用于存放段表始址和段表长度TL。取出段号S和段内位移W。若STL,段号太大越界。根据段表

10、始址找到段表,查找段号为S的表目,得到该段在内存的起始地址。检查段内地址d是否起过该段的段长SL。若超过越界。把段首地址与段内位移相加,形成内存物理地址。,2023/7/12,3、地址变换机构,2023/7/12,同页地址变换一样,在段地址变换过程中,也有两次访问内存的问题。为了加快访问内存的速度也可采用快速存储器组成快表。,2023/7/12,Cl,Cb,+,段号S 段内地址d,比较,比较,b+d,段表,S=Cl,快表,物理地址,段表始址寄存器,段表长度寄存器,逻辑地址,L,b,.,.,.,S,L,b,地址越界,d=L,d=L,地址映射及存储保护机制,地址越界,地址越界,比较,2023/7/

11、12,4、分页与分段的主要区别,两者都采用离散分配方式,且都要通过地址变换机构来实现地址变换。分段与分页主要有以下差别:页是信息的物理单位,分页是为实现离散分配方式,以消减内存的外零头,提高内存的利用率。或者说,分页仅仅是由于系统管理的需要而不是用户的需要。段则是信息的逻辑单位,它含有一组其意义相对完整的信息。分段的目的是为了能更好地满足用户的需要。,2023/7/12,4、分页与分段的主要区别,页的大小固定且由系统决定,由系统把逻辑地址划分为页号和页内地址两部分,是由机器硬件实现的,因而在系统中只能有一种大小的页面;而段的长度却不固定,决定于用户所编写的程序,通常由编译程序在对源程序进行编译

12、时,根据信息的性质来划分。分页的作业地址空间是一维的,即单一的线性地址空间,程序员只需利用一个记忆符,即可表示一个地址;而分段的作业地址空间则是二维的,程序员在标识一个地址时,既需给出段名,又需给出段内地址。,2023/7/12,段式存储管理方案小结,优点:便于动态申请内存 管理和使用统一化 便于共享 便于动态链接缺点:产生碎片,2023/7/12,练习,基本分段系统中,给出如下段表,请求出逻辑地址(0,137),(1,4000),(2,3600),(5,230)转换成物理地址。,2023/7/12,4.5.4 段页式存储管理方式,产生背景:结合页式段式优点,克服二者的缺点基本原理地址变换过程

13、,2023/7/12,基本原理,用户程序划分按段式划分(对用户来讲,按段的逻辑关系进行划分;对系统讲,按页划分每一段)逻辑地址内存划分按页式存储管理方案内存分配以页为单位进行分配,2023/7/12,段表:记录了每一段的页表始址和页表长度页表:记录了逻辑页号与内存块号的对应关系(每一段有一个,一个程序可能有多个页表)内存分配管理:同页式管理,地址变换过程,2023/7/12,图 4-21 利用段表和页表实现地址映射,2023/7/12,地址变换过程,图 4-22 段页式系统中的地址变换机构,2023/7/12,在段页式系统中,为了获得一条指令数据,须三次访问内存。1、访问内存中的段表,从中取得页表始址2、访问内存中的页表,从中取出该页所在的物理块号,将该块号与页内地址一起形成指令或数据的物理地址3、从物理地址中取出指令或数据。快表,地址变换过程,2023/7/12,练习,在没有快表的情况下,分页系统每访问一次数据,要访问()次内存;分段系统每访问一次数据,要访问()次内存;段页式系统每访问一次数据,要访问()次内存。页是信息的()单位,其大小是()(固定/可变)的,进行分页是出于()的需要;段是信息的()单位,其大小(),分段是出于()的需要。,

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

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


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号