




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第3章 存储管理1、了解存储管理的目的和功能;了解虚拟存储器、地址重定位等概念;2、分区存储管理:了解分区存储的各种方式(固定、可变、浮动、多重分区);存储“扩充”技术:覆盖与交换;3、页式存储管理:掌握分页管理的原理,利用pmt实现地址变换;掌握请求式分页机制、页面淘汰算法;4、了解段式存储管理的特点;了解段页式存储管理的优点。 2第3章 存储管理3.1 存储管理的功能3.1.1 分级存储结构高速缓存 (一级缓存 二级缓存 cache) | bus v主存 ram rom | bus v外存 光磁盘等cpu直接访问3.1.2 存储管理的功能1.存储分配与管理 多进程, 包括os, 动态2.地
2、址重定位静态, 动态 逻辑地址物理地址3.存储保护互不干预 软硬结合, 空指针4.存储扩充硬盘内存 时间换取空间内存有限, 小内存运行多作业,大作业43.2 地址重定位系统区 os 用户区1 名空间 地址空间 存储空间符号逻辑地址 物理地址源程序目标模块 绝对地址 相对地址重定位 map2 静态重定位绝对地址 = 相对地址 + 起始地址程序执行之前 地址重定位 dos程序3 动态重定位 运行期间 硬件支持 进程的代码数据在内存外存中移动, 动态装入73.3 分区存储管理3.3.1 单一连续区管理dos 单任务 os 将所有空闲内存分配给程序83.3.2 分区存储管理 多任务 多道内存分区, 每
3、一任务占一个分区1 静态(固定)分区l内存分成大小不同的区域, 可运行不同大小的作业l简单, 浪费l内碎片2 动态(可变)分区a.利用表格记录已分配区和空闲分区查空闲分区表-分配内存-运行-结束-释放内存, 放入空闲分区表, 相邻空闲分区合并b.空闲分区分配算法i) 最佳适应算法空闲分区从小到大排序, 保留大空闲区ii) 最差适应算法分割最大空闲区, 比较一次, 剩余空间任可运行作业iii) 首次适应算法 地址由低到高找, 保留高地址空间 三种算法都会产生不能运行任何程序的小空闲区, 不连续, 即碎片 fragmentation,外碎片。 最小粒度g:内存分配单位c.动态重定位式分区分配进程地
4、址空间可移动, 使空闲区可合并从而消除外碎片进程结束时合并或分区不够大时合并d.多重分区作业分段, 代码段 数据段 堆栈段 动态加载, 物理地址空间可不连续,消除碎片, 便于共享进一步发展成虚拟存储管理技术143.4 覆盖和交换3.4.1 覆盖 overlay 小内存运行大作业l将作业分成模块(程序段), 按功能引用关系形成一种树型结构, 同层为覆盖段.l同层取最大设置分区大小dos command.com即采用了覆盖技术低端常驻, 高端暂驻,可覆盖同层可互相覆盖则此作业需20+40+60+40=160k3.4.2 交换 swappingl不运行的作业( 如时间片用完或其他原因), 映象调至硬
5、盘的交换文件区, 文件, 让出内存供其他作业使用. l当os再次调度该进程运行时, 再从交换区调入内存, 换进换出 (roll-in, roll-out)现代oslwin9x - win386.swplwinnt, 2k, xp - pagefile.syslunix - 交换区ldos + bc.exe - tc0001.swp信息交换量大, 开销大18虚拟存储管理动态地址映象, 交换技术软件+硬件 虚地址实地址虚地址大小限制:1 cpu寻址机构80386 232=4gb, 地址变换分段246=64tb2 外存大小193.5 分页存储管理请求式页面存储管理1 原理a 分配方式内存分块, 作业
6、分页, 块页大小相同b 建立页面映象表(pmt)页号 块号 状态页是否在内存及在哪一块c 地址转换虚地址重定位(动态), 可不连续页号和偏移量 块号和偏移量缺页处理20分页系统基本的地址变换机构页表寄存器页表始址页表长度页号(3)页内地址逻辑地址l越界中断1块号b页表页号012物理地址321具有快表(tlb)的地址变换机构页表寄存器页表始址页表长度页号页内地址逻辑地址l越界中断块号b页表页号页号输入寄存器块号bb快表d物理地址232 页面淘汰算法l内存有限, 存放作业的活动页.l当发生一条不在活动页的指令时, 则需硬件机构及服务程序实现物理页的调入调出操作.l无空闲块时, 淘汰某页, 采用算法
7、.l算法不合理时, 某些页会在内外存间频繁调入调出, 即抖动(thrashing).l进程越多, 抖动越严重a.最佳淘汰算法永远不再使用的页 实现困难b.先进先出fifo算法顺序访问地址效率高, 若有循环效率低c.最近最少使用lru(least recently used)程序局部性原理d.最少使用lfu(least frequently used) 假定系统为某进程分配了三个物理块, 并考虑有以下的页面号引用串:7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1 进程运行时, 先将7,0,1三个页面装入内存。 以后, 当进程要访问页面2时, 将会产生缺页中断。此时
8、os根据最佳置换算法, 将选择页面7予以淘汰。 利用最佳页面置换算法时的置换图利用fifo置换算法时的置换图最近最久未使用lru(least recently used)置换算法273.6 分段存储管理1 原理a.分配方式: 作业按模块分段, 段长不同代码段, 数据段, 堆栈段按段分配内存, 段间可不连续b.建立段表 段号, 段长, 基址, 状态, 权限等c.地址转换作业段号s, 偏移d 物理地址硬件支持2 共享和保护 例:两个作业进程共享一个sort过程,内存中只有一个付本2 共享和保护a. 段表限制, 越界保护 长度b. 访问权限控制 共享c. 特权级 root用户任务权力大, 可访问低权力段, 缓冲区溢出攻击3 优点: 长度可变, 便于共享, 虚拟内存缺点: 碎片, 段长度受内存大小限制, 缺段处理323.7 段页式存储管理页式内存利用率,无
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论