操作系统课件os04存储管理课件.ppt

上传人:牧羊曲112 文档编号:6472756 上传时间:2023-11-03 格式:PPT 页数:37 大小:473.50KB
返回 下载 相关 举报
操作系统课件os04存储管理课件.ppt_第1页
第1页 / 共37页
操作系统课件os04存储管理课件.ppt_第2页
第2页 / 共37页
操作系统课件os04存储管理课件.ppt_第3页
第3页 / 共37页
操作系统课件os04存储管理课件.ppt_第4页
第4页 / 共37页
操作系统课件os04存储管理课件.ppt_第5页
第5页 / 共37页
点击查看更多>>
资源描述

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

1、操作系统Operating Systems,4.4基本分页存储管理方式,为什么要引进分页技术?分区管理要求每道程序必须装入到内存连续的存储空间中,当系统空闲区的长度小于用户要求时就无法分配;内存利用率不高。基本分页存储管理(纯分页存储管理)不具备页面对换功能不支持虚拟存储器的功能,页面与页表,页面分页存储管理是将一个进程的逻辑地址空间分成若干个大小相等的片,称为页面或页为各页加以编号,从0开始,如第0页、第1页等。(物理)块或页框(frame)把内存空间分成与页面相同大小的若干个存储块为它们加以编号,如0#块、1#块等等。,进程1逻辑地址空间,内存,由系统而非程序员,分页式存储管理基本原理,以

2、页为单位进行内存分配,并按进程的页数多少来分配。逻辑上相邻的页,物理上不一定相邻。“页内碎片”,0,1,2,3,m,进程1逻辑地址空间,内存,0,1,2,4,页面大小,页面的大小应选择适中页面大小应是2的幂通常为512 B8 KB。页面若太小导致进程的页表过长,占用大量内存;还会降低页面换进换出的效率。如果选择的页面较大会使页内碎片增大,2地址结构,分页地址中的由系统分成的逻辑地址结构如下:每页的大小为212=4 KB地址空间最多允许有1 M页若给定一个逻辑地址空间中的地址为A,页面的大小为L,则页号P和页内地址d可按下式求得:,练习,设一个逻辑地址空间有8个页面,每页大小为1024B,现将它

3、映像到32块物理块的内存上。试问:(1)逻辑地址要用多少位表示:_(2)物理地址要用多少位表示:_,23,210,25,3+10,共13位,5+10,共15位,3页表,页表是操作系统为每个进程建立的,记录了进程页面在主存中对应的物理块号。,练习,一台机器有48 位虚地址(逻辑地址,相对地址)和32 位物理地址,若页长为8KB,问页表共有多少个页表项?内存可分为页框数(块数)?答:逻辑地址48 位-逻辑地址空间大小248,页长8KB-逻辑地址空间可分为页面数:248/213=235-页表共有235个页表项 32 位物理地址-内存空间232 页长8KB=213-内存可分为页框数(块数):232/2

4、13=219,页面的保护,提供附加的保护措施,对存储在块中的内容加以保护。通常的办法是在页表中增加一些标志位,用来指出该页的信息可读/写、只读、只可执行及不可访问等,指令执行时进行核对此信息。例如,要想向只读块写入信息则指令停止执行,产生中断信号。,作业1的页表,作业2的页表,地址变换机构,1基本的地址变换机构,页表始址寄存器,物理地址,逻辑地址,CPU,主存,p,d,d,b,p表项在页表中的位置=页表始址+页号*页表项长度,+,例:设页面大小为1KB,机器的地址长度为16位。,作业2的进程在CPU上运行,执行指令Mov r1,2500,2500()2,()2 7620,页地址转换过程,物理地

5、址,逻辑地址,快表的引入,页表是驻留在内存的某个固定区域中。取一个数据或指令至少要访问内存两次以上:一次访问页表以确定所取数据或指令的物理地址另一次是根据地址取数据或指令这比通常执行指令的速度慢了一倍。解决这个问题的一种方法把页表放在一个特殊高速缓存中快表(“联想寄存器”)用以存放当前访问的那些页表项,2具有快表的地址变换机构,地址越界,页表长度,比较,P=1,页表始址,+,P,d,物理地址,页表寄存器,两级和多级页表,若CPU具有32位地址,规定页面4KB(212)时 使用232逻辑地址空间的分页系统每个进程的逻辑地址空间有1兆 个页组成 232/212=220每个进程页表中的页表项可达1兆

6、若表项占用1个字节,则每个进程需要占用1MB 连续内存空间存放页表。,两级页表,可以采用下述两个方法来解决这一问题:(1)采用离散分配方式来解决难以找到一块连续的大内存空间的问题;(2)只将当前需要的部分页表项调入内存其余的页表项仍驻留在磁盘上,需要时再调入。,页表,0,第0块,内存,第1块,第3块,1,1M,第0页,第1页,外层页表,1两级页表,第1011块,逻辑地址结构,若页表项应有1兆个,在采用两级页表结构时,对页表进行分页,使每页中包含210(即1024)个页表项,最多允许有210个页表分页;,具有两级页表的地址变换机构,物理地址,外部页表寄存器,b,d,外部页号,外部页内地址,页内地

7、址,4.5基本分段存储管理方式,分段存储管理方式的引入1)方便编程用户程序划分:按程序自身的逻辑关系划分为若干个程序段,每个程序段都有一个段名和长度,且有一个段号。段号从0开始,每一段段内也从0开始编址段内地址是连续的。LOAD 1,A|D;STORE 1,B|C;,分段存储管理方式的引入,2)信息共享分页系统中的“页”只是存放信息的物理单位(块)并无完整的意义,不便于实现共享;段却是信息的逻辑单位。由此可知,为了实现段的共享,希望存储管理能与用户程序分段的组织方式相适应。3)信息保护对信息的逻辑单位进行保护,分段存储管理方式的引入,4)动态增长特别是数据段,在使用过程中会不断地增长事先又无法

8、确切地知道数据段会增长到多大与动态分区不同的是:分段方案中,一个程序可以占据多个分区这些分区不要求是连续的5)动态链接当运行过程中需要调用某段时,才将该段(目标程序)调入内存并进行链接。动态链接也要求以段作为管理的单位。,分段系统的基本原理,1 分段作业的地址空间被划分为若干个段每个段定义了一组逻辑信息。,子程序段X,数组段D,call X(调用X段的入口E)call Y(调用Y段的入口F)load 1,D(调用数组段DG),主程序段,E:,F:,子程序段Y,G:,栈段,0,30K,0,10K,0,20K,0,15K,逻辑地址结构,在该地址结构中,允许一个作业最长有216=64 K个段,每个段

9、的最大长度为64 KB。内存分配:以段为单位分配内存,每一个段在内存中占据连续空间内存随机分割,需要多少分配多少,但各段之间可以不连续存放。,2段表,段表是操作系统为每个进程建立的。,3地址变换机构,控制寄存器,段表始址 段表长度,2 100,段号 段长 基址,物理地址8292,越界?,段表,逻辑地址,0,1,2 500 8K,段号,位移,练习,给定地址为段号和位移:1)0,430、2)2,500,试求出对应的内存物理地址。答:0,430:219+430=649 2,500:越界,4分页和分段的主要区别,页是信息的物理单位分页是为实现离散分配方式以消减内存的外零头,提高内存的利用率。没有外部碎

10、片页框中有内部碎片,(1)段是信息的逻辑单位含有一组其意义相对完整的信息。目的是为了能更好地满足用户的需要。没有内部碎片有外部碎片,4分页和分段的主要区别,(2)页的大小固定且由系统决定由系统把逻辑地址划分为页号和页内地址两部分由机器硬件实现的,在系统中只能有一种大小的页面,(2)段的长度却不固定决定于用户所编写的程序通常由编译程序在对源程序进行编译时,根据信息的性质来划分。,4分页和分段的主要区别,(3)分页的作业地址空间是一维的单一的线性地址空间,程序员只需利用一个记忆符,即可表示一个地址;,(3)分段的作业地址空间是二维的程序员在标识一个地址时,既需给出段名,又需给出段内地址。,作业,1

11、、某用户空间共32个页面,每页1KB,主存16KB。试问:(1)逻辑地址的有效位是多少位;物理地址需要多少位?(2)假定某时刻系统为用户的第0,1,2,3页分别分配的物理块号为5,10,4,7,试将逻辑地址0A5CH变换为物理地址。2、在一分页存储管理系统中,逻辑地址长度为16 位,页面大小为4096 字节,现有一逻辑地址为2F6AH,且第0、1、2 页依次存在物理块10、12、14 号中,问相应的物理地址为多少?,作业,3、某基本分段存储管理中采用如下表所示的段表。请计算 1,10,2,500,3,400,4,20,5,100的内存地址,其中方括号内的第一元素是段号,第二元素是段内地址。,3

12、虚拟存储器的定义,仅须将那些当前要运行的少数页面(段)先装入内存便可运行。程序在运行时,如果它所要访问的页(段)已调入内存,便可继续执行下去;如果程序所要访问的页(段)尚未调入内存,则利用请求调页(段)功能,将它们调入内存。如果此时内存已满,无法再装入新的页(段),则还须再利用页(段)的置换功能。,虚拟存储器的定义,虚拟存储器是指具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器系统。其逻辑容量由内存容量和外存容量之和所决定虚拟存储技术是被广泛地应用于大、中、小型机器和微型机中。,虚拟存储器的实现方法,1请求分页系统在分页系统的基础上,增加了请求调页功能和页面置换功能所形成的页式虚拟存储系统。2.请求分段系统在分段系统的基础上,增加了请求调段和分段置换功能后所形成的段式虚拟存储系统。3.段页式虚拟存储管理,虚拟存储器的特征,1多次性指一个作业被分成多次调入内存运行2对换性对换性是指允许在作业的运行过程中进行换进、换出3虚拟性虚拟性是指能够从逻辑上扩充内存容量,使用户所看到的内存容量远大于实际内存容量虚拟性是以多次性和对换性为基础的;多次性和对换性又必须建立在离散分配的基础上。,

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

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


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号