




已阅读5页,还剩24页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章存储器管理(内存管理),美国数学家冯诺依曼提出著名的“存储程序控制原理”,CPU不断地从存储器中取出指令和需要的数据,执行指令,并把数据保存到存储器中。,存储器是计算机系统的重要资源,虽然存储器的容量迅速增加,但软件的需求也同样在急剧膨胀,存储器仍然是紧俏资源;虽然存储器的访问速度不断增加,仍然存在着与CPU速度不匹配的矛盾。存储器管理是操作系统的最重要部分。,4.1概述4.1.1存储体系,高速缓存Cache:数百K到数M字节、非常快速、昂贵、易丢失内存RAM:数百M到数G字节、中等速度、中等价格、易丢失磁盘:数G到数百G字节、低速、价廉、断电仍保存,Cache,主存,外存,4.1.2内存的几个基本概念内存空间:是由存储单元(字节或字)组成的连续的地址空间;内存空间用来存放当前正在运行程序的代码及数据,是程序计数器所指的存储器。对内存的要求:能直接存取,访问速度尽量快,应与CPU取指速度相匹配;足够大,能装下保证当前正常运行的程序和数据,否则CPU执行速度就会受到内存速度和容量的影响而得不到充分发挥。内存可以分为:系统区:用于存放操作系统用户区:用于装入并存放用户程序和数据。,物理地址和逻辑地址:物理地址指内存单元的地址,也叫绝对地址或实地址;逻辑地址是在程序中使用的地址,从0开始编址,逻辑地址也叫相对地址,虚地址。地址映射(地址变换):逻辑地址不能直接访问内存单元,必须转换成物理地址,这一转换过程称为地址映射。,4.1.3存储管理的内容,1.内存空间的管理(分配与回收)记录内存的使用情况(内存分配回收的依据)确定分配算法,实施内存分配回收内存分配方式:静态与动态,2.存储共享内存共享:两个或多个进程共用内存中相同区域目的:节省内存空间,提高内存利用率;实现进程通信(数据共享)共享内容:代码数据3.存储保护与安全为多个程序共享内存提供保障,使内存中的各道程序只能访问它自己的区域,避免各道程序间相互干扰,特别是当一道程序发生错误时,不致于影响其他程序的运行。通常由硬件完成保护功能,由软件辅助实现。,4.内存“扩充”通过虚拟存储技术实现用户在编写程序时,不应该考虑内存的容量,所以要采用一定技术来“扩充”内存的容量,使用户能够使用比实际内存容量大的多的内存空间。5.程序的装入创建进程的第一件事,就是将程序和数据装入内存。,4.2程序的装入和链接,对用户程序的处理过程,4.2.1程序的链接,链接的具体工作:(1)对相对地址进行修改(2)变换外部调用符号程序的链接方式静态链接方式:装入前进行链接,将所有模块的相对地址链接起来,形成整个程序的连续的逻辑地址。装入时动态链接:边装入、边链接,各模块独立分开装入内存的不同位置,便于修改,便于共享。运行时动态链接:边运行、边装入,有些模块往往不会运行到(如错误处理),不必装入,效率高节省内存。,模块BJSR“L+M”;Return;,LL+M-1,模块CReturn;,L+ML+M+N-1,绝对装入方式:编译产生的是绝对地址,按此绝对地址装入程序和数据。逻辑地址与物理地址完全相同,不需要任何地址映射。可重定位装入方式:根据内存当前的情况,把装入模块装入到合适位置。地址变换在装入时完成,以后不再改变,叫做静态重定位。动态运行时装入方式:程序运行过程中,在内存中的位置可以改变,因此边运行,边装入,叫做动态重定位。地址变换在运行阶段完成。,4.2.2程序的装入,地址重定位(地址映射),4.2连续分配方式,单一连续分配,固定分区分配系统把内存用户区划分为若干分区,分区大小可以相等,也可以不等。一个进程占据一个分区。,操作系统,分区1,分区2,分区3,分区4,动态分区分配内存不是预先划分好的,而是当作业装入时,根据作业的需求和内存空间的使用情况来决定是否分配。若有足够的空间,则按需要分割一部分分区给该进程;否则令其等待。,动态分区的使用情况,(e),(a)已分配区表(b)未分配区表,1.动态分区分配的数据结构,2.空闲分区链(P108图4-5)将描述分区分配情况的信息附加在分区中。具体地说,是放在每个分区的首尾两个字中。描述信息包括:(1)状态信息:“0”表示该区空闲,“1”表示已分配。(2)该区的大小(以字或块为单位)。(3)指针信息:构成空闲区链。,3.分区分配算法首次适应算法FF:空闲分区按地址排序,找到第一个满足请求的分区,将其分割并分配。特点:简单、快速循环首次适配算法RFF:上次找到的空闲区的下一个找起,若最后一个分区还不满足,返回到头部继续找。特点:空闲分区分布均匀,查找空闲分区更快。最佳适配算法BF(Best-Fit):空闲分区按大小排序,找到第一个满足请求的空闲分区。特点:用最小的空间满足要求。,4.动态分区的实现1)分配内存,从头开始查表,2)回收内存P109,P110自学,可重定位分区分配随着分区不断地分配和回收,内存中会出现许多“碎片”。为了利用这些碎片,可采用“紧凑”的技术把许多分散的小分区(即碎片)拼接成一个可被利用的大分区。这意味着进程在内存中的位置进行了移动(浮动),必须对程序和数据的进行重定位(进行新的地址变换)。,物理地址,重定位寄存器中的地址,+,相对地址,对换当内存空间紧张时,系统将内存中某些进程暂时移到外存,把外存中某些进程换进内存,使用前者所占用的区域。对换技术是提高内存利用率的有效措施,自60年代初期出现以来,现在已被广泛应用于操作系统中。,对换的单位进程对换页面对换(置换)对换空间的管理1.外存的划分:文件区和对换区2.对换区的管
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 纳米流体压裂技术-洞察及研究
- 家居市场2025年线上线下融合模式创新模式下的家居行业智能床垫研究报告
- 2025四川宜宾市高县宇创数字经济产业投资有限责任公司招聘1人考试备考题库及答案解析
- 2025年中国一次性生鲜盘市场调查研究报告
- 2025贵州六盘水市水城区基层农技推广体系改革与建设补助项目特聘农技员招募3人笔试参考题库附答案解析
- 2025新疆昌吉市面向社会招聘编制外社区工作者9人考试参考题库附答案解析
- 2025云南玉溪市红塔区溪汇中学教师招聘6人笔试备考题库及答案解析
- 2025年烟台幼儿师范高等专科学校第二批公开招聘高层次人才(3人)考试模拟试题及答案解析
- 2025重庆綦江区新盛街道办事处招聘3人考试模拟试题及答案解析
- 劳动合同范本与三方协议范例分析
- 小升初分班考必刷题(试题)-2023-2024学年六年级下册数学人教版
- 数据治理与数据中台建设方案
- NBT 33018-2015 电动汽车充换电设施供电系统技术规范
- 全册(教案)人教精通版英语六年级上册
- 《科技英语翻译方法》课件
- DL-T5455-2012火力发电厂热工电源及气源系统设计技术规程
- 公司自行车管理制度
- TSG-T7001-2023电梯监督检验和定期检验规则宣贯解读
- 《剧院魅影:25周年纪念演出》完整中英文对照剧本
- 蒋诗萌小品《谁杀死了周日》台词完整版
- 6G网络中的垂直通信和切片技术
评论
0/150
提交评论