版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
河北科技师范学院大专课程
操作系统第十八讲主讲人:曾晓宁2023/2/6第4章内存管理4.1内存管理功能4.2分区管理4.3页式管理4.4段式管理4.5段页式管理2023/2/64.2.3可变分区内存不事先进行划分,而是在装入程序时,根据装入程序的实际需要来分配内存空间,这样,内存分区的个数、各分区的大小、在内存中活动的内存个数都是随时间变化的。2023/2/64、分区的回收回忆复习回收区不与任何空闲区相邻;回收区与后空闲区相邻;回收区与前空闲区相邻;回收区与前后两个空闲区相邻;2023/2/64.2.4碎片问题及其解决办法这种不能被任何用户使用的极小的空闲区称为碎片。碎片的出现造成了存储空间的浪费。采用移动技术,把在内存中的所有进程移动到内存的一端,同时修改每个进程的基址、限长值,从而把内存中分散的碎片集中在一起,形成一个较大的空闲分区,以便装入较大的程序。2023/2/64.2.5覆盖技术与交换技术把程序划分为若干个功能上相对独立的程序段,并规定好它们的执行和覆盖次序,然后让那些不会同时执行的程序段共享同一块内存分区;并把这些程序段组成一组,称为覆盖段,而把共享的内存分区称为覆盖区。覆盖段与覆盖区一一对应;交换是指把主存中暂时不能运行的进程,或暂时不用的程序和数据,换出到外存上,把已具备运行条件的进程,或进程所需要的程序或数据,换入主存的技术。2023/2/64.3页式管理
页式管理允许将程序分散地装入到内存中若干个不连续的空闲分区中,可以全部装入,也可以部分装入。即有效地解决了碎片问题,又能充分利用内存空间,提高了内存利用率。2023/2/61、页面(用户程序划分)
把用户进程的逻辑地址空间划分成若干个大小相等的区域,每个区域称为一个页面。简称页。程序的各页面从0开始依次编号,称为页号。页内地址:每个页面从0开始依次编址,称为页内地址。2、物理块系统将内存空间按页面大小划分为大小相等的若干个存储块,称为块或物理块(块,页框);内存的所有物理块也从0开始依次编号,称为块号;每个块从0开始依次编址,称为块内地址。2023/2/6装入方法:在装入程序时,内存以块为单位进行分配,程序的任一页可以装入内存的任一块中,实现了离散分配。但由于程序的最后一页经常装不满一块,会形成不可利用的碎片,称为“页内碎片”,每个页内碎片的大小不会超过一页。2023/2/63、逻辑地址结构设逻辑地址为n位页内地址为m位则每页大小为2m最多包含2n-m页mn-mn2023/2/6计算时要注意:若给出的地址为16进制,则将其转换为二进制,然后,根据页长及逻辑地址的长度,分别取出逻辑地址的高几位和低几位就得到页号及页内地址。如页长为2K,逻辑地址为16位,则高5位为页号,低11位为页内地址。若给出的地址为10进制,则用公式:
逻辑/页长商为页号,余数为页内地址。如程序地址为8457,
页长为4KB,则8457/4096可得:商为2,余数为256。回忆结束2023/2/6思想:要求程序全部装入内存后,才能开始运行。在装入程序时,首先把程序划分成若干个大小相等的页面,然后系统按块为单位,将程序的每一页分散地装入到内存的物理块中;一个程序有多少页,就给它分配多少物理块,且这些物理块可以不连续。4.3.2静态页式管理2023/2/61、页表页面系统为了能在内存中找到每个页面对应的物理块而为进程建立一张页面映像表,简称页表。页表作用:实现从页号到物理块号的地址映射。记录了页面与内存物理块之间的对应关系。包含页号和块号两项内容。2023/2/6页表的特点系统为每个用户进程建立一张页表,页表的长度随用户程序的大小而定;每个页面在页表中占一个表项;页表大多驻留在内存中,其长度和首地址存放在该程序对应进程的PCB中。2023/2/60页1页0页1页2页02150017230123456789程序A程序B程序A页表程序B页表内存空间静态页式管理2023/2/62、静态页式管理的内存分配与回收为了实现页式存储管理方式,系统设置了主存分配表、位示图和页表,记录主存空间的使用情况和每个作业的分配情况。2023/2/62023/2/6(1)位示图位示图由内存中的若个字节组成,位示图的每一位对应内存中的一个块,当其值为0时,表示对应的物理块空闲;为1时,表示已分配。见书P151例11101001101010102023/2/6主存空间的分配过程为:首先,系统要初始化位示图,即把位示图中的标志位全部置为“0”,空闲块数置为主存的块数。其次,在进行主存分配时,从作业队列中取出队首作业,计算该作业的页数,然后,与位示图中的空闲块数比较;若不能满足作业的要求,则作业不能装入,显示主存不足的信息,把该作业放到队尾或删除该作业;若能满足作业的空间要求,则为该作业建立页表,并根据位示图中主存块的状态标志,找出标志为“0”的那些位,置上占用标志“1”,2023/2/6把作业页装入对应的主存块,并在页表中填入对应的块号。直到所有作业页全部装入。最后,修改位示图中空闲块数,即原有空闲块数减去本次占用的块数(页数)。2023/2/6(2)空闲块链将所有空闲块链接成一个空闲块链。每次分配时,从链首开始,根据程序的大小依次摘下若干个空闲块进行分配。回收空闲块时,将其插入空闲块链的末尾。2023/2/6(3)内存分块表包含块号、进程号、页号和状态等信息,用于记录内存中所有块的使用情况。当状态为0时,表示该块空闲,当状态为1时,表示该块已分配,并记录了该块是由哪个进程的哪一页所占用。内存中的每一块在内存分块表中都有一个表项。2023/2/6在进行内存分配时,首先要看空闲块数是否能满足程序的要求,若不能,则不进行分配;否则在内存分块表中找出状态为“0”的若干块,将其中状态置为1,填写每块中装入的页号,以及该页所属的进程号;并把当前空闲块减去本次分配的块数。分配2023/2/6回收当进程结束时,应回收其占用的物理块。根据进程号检索内存分块表,将匹配表项的状态修改为0;并把回收的块数加到当前空闲块数中。2023/2/63、地址转换分页中的地址映射其实与通常的地址映射的概念是一样的,即把程序地址转换成内存地址,这个转换过程是在程序执行过程中完成的,是动态地址映射。在现代计算机系统中,由系统提供的地址映射硬件来完成地址映射工作。2023/2/6实现从逻辑地址到物理地址的转换。实际上是把逻辑地址中的页号,转换为内存中的物理块号。地址变化任务是借助于页表来完成的。基本任务2023/2/6页表由一组专门的寄存器来实现,一个页表专用一个寄存器。页表大多驻留在内存中。系统中只设置一个页表寄存器,存放页表在内存的起始地址和页表的长度。进程未执行时,页表的始值和页表长度存放在本进程PCB中。当调度到进程时装入页表寄存器中。2023/2/6地址转换过程:当进程要访问某个逻辑地址中的数据时,由系统自动将逻辑地址分为页号和页内地址两部分;将页号与页表寄存器中的页表长度进行比较,如果页号大于等于页表长度,则表示本次所访问的地址已超越作业的地址空间。这一错误将被系统发现并产生“地址越界”中断。若未出现越界错误,则将页表始址+页号×页表项长度,便得到该表项在页表中的位置,可以从中得到该页的物理块号;2023/2/6将块号装入物理地址寄存器中。与此同时,再将逻辑地址寄存器中的页内地址,直接送入物理地址寄存器的块内地址字段中。经过硬件机制,把物理地址寄存器中的块号和块内地址,转换成物理地址。这样,便完成了从逻辑地址到物理地址的变换。页式地址转换过程如图3-18所示。2023/2/6越界中断页表始址页表长度页表寄存器页号块号逻辑地址页号P块号P’页号P页内地址W物理地址块号P’块内地址W>页表2023/2/6例1设有8页的逻辑空间,每页有1024字节,它们被映射到32块的物理存储区中,那么,逻辑地址的有效位是多少位?物理地址至少多少位?2023/2/6例2在一分页存储管理系统中,逻辑地址长度为16位,页面大小为2048B,对应的页表如表所示,现有两逻辑地址为0A5CH和2F6AH,经过地址变换后所对应的物理地址各是多少?页号块号0511024372023/2/6解:由题设条件可知,分页存储管理系统的逻辑地址结构为:页号P页内位移W0101115PWBW逻辑地址0A5CH的页号为1,从表中右知此页对应的物理块号B为10,所以,将二进制表示的页号换为块号得:01010010010111000000101001011100逻辑地址0A5CH的二进制表示如下:用16进制表示即为525CH。2023/2/6PW0010111101101010逻辑地址2F6AH的二进制表示如下:也即,逻辑地址2F6A的页号为5,查表已超过页表长度,故产生越界中断。2023/2/6例3在某个采用页式存储管理的系统中,现有J1、J2和J3共3个作业同驻主存,其中J2有4个页面,被分别装入到主存的第3、4、6、8块中。假定页面和存储块的大小均为1024字节,主存容量为10KB字节。(1)写出J2的页面映像表;(2)当J2在CPU上运行时,执行到其地址空间第500号处遇到一条传送指令:
MOV2100,3100请用地址变换图计算MOV指令中两个操作数的物理地址。2023/2/6(1)J2的页表如表所示:页号块号031426382023/2/6(2)已知页面大小为1024字节,可知页内位移为10位;P=[A/L]d=AmodL则逻辑地址2100的页号为2,页内位移为2100-2048=52;则逻辑地址3100的页号为3,页内位移为3100-3072=28;逻辑地址2100的地址变换过程如下图所示:2023/2/6越界中断页表始址页表长度页表寄存器页号块号逻辑地址
0
3
1
4
6252物理地址
6
52>页表
3
8
26196主存6×1024+522023/2/6越界中断页表始址页表长度页表寄存器页号块号逻辑地址
0
3
1
4
6328物理地址
8
28>页表
3
8
28220主存8×1024+282023/2/6根据上图可得出逻辑地址2100所对应的物理地址为6196,同理,逻辑地址3100所对应的物理地址为8220。2023/2/6练习若某页式管理系统的主存容量为64KB,被分成1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 注意心脏病防范
- 《大学生的人格心理》课件
- 2019年黑龙江公务员考试行测真题及答案(省直)
- 三年级下册语文园地一课件
- 带压封堵培训课件
- 研发中心发展规划
- 2024年教师师德师风学期考核总结
- 月嫂产妇的产后护理
- 保安培训需求分析
- 二零二四年劳动合同模板(正式工)3篇
- 道法认识生命(作业)【后附答案解析】2024-2025学年七年级道德与法治上册(统编版2024)
- 9知法守法 依法维权 第2课时 守法不违法 (教学设计)-部编版道德与法治六年级上册
- 三方代付工程款协议书范本2024年
- 【道法】爱护身体 课件-2024-2025学年统编版道德与法治七年级上册
- 第二次月考测评卷(5-6单元)(试题)-2024-2025学年六年级数学上册人教版
- 医学课件抗痉挛体位摆放
- 2024年统编版七年级上册道德与法治 第三单元 珍爱我们的生命 第八课 生命可贵 第2课时 敬畏生命 教学课件
- IATF16949组织环境因素识别表
- 《积极心理学(第3版)》 课件 第11章 宽容、篇终 积极心理学的应用与展望
- 职业素质养成(吉林交通职业技术学院)智慧树知到答案2024年吉林交通职业技术学院
- 5.5《方程的意义》(课件)-2024-2025学年人教版数学五年级上册
评论
0/150
提交评论