4离散分配存储管理方式.pptVIP

  • 48
  • 0
  • 约1.08万字
  • 约 55页
  • 2021-03-16 发布于天津
  • 举报
* 访问时间是指从启动一次存储器操作到完成该操作所经历的时间 有效访问时间:访问到一个有用数据所经历的时间 * 访问时间是指从启动一次存储器操作到完成该操作所经历的时间 有效访问时间:访问到一个有用数据所经历的时间 Associative Lookup: 快表访问时间 Memory cycle time:内存访问时间 * 访问时间是指从启动一次存储器操作到完成该操作所经历的时间 有效访问时间:访问到一个又用数据所经历的时间 * 访问时间是指从启动一次存储器操作到完成该操作所经历的时间 有效访问时间:访问到一个又用数据所经历的时间 * 访问时间是指从启动一次存储器操作到完成该操作所经历的时间 有效访问时间:访问到一个又用数据所经历的时间 * 访问时间是指从启动一次存储器操作到完成该操作所经历的时间 有效访问时间:访问到一个又用数据所经历的时间 * ???? * 还需知道逻辑空间的大小 * 查找时,用页号和进程标识匹配每一项,找到物理地址,顺序查找 * * subroutine子程序 每个为一段 * 为了提高内存利用率:存储管理方式从固定分区发展到动态分区,进而又发展到分页存储管理方式。 为了满足用户、程序员在编程和使用上多方面的要求:引入分段存储管理方式。 分页的作业地址空间是一维的,通过运算即可分解.但分段则必须给出二维. * 分页式多一个页号*页面大小(找到内存基地址)的过程 Limit 段的边界(最长是多少) 需要;段内地址〈limit * 可重入代码才有共享的问题. 数据有的可共享,有的需是各个进程专用.如P138例 * 可重入代码才有共享的问题. 数据有的可共享,有的需是各个进程专用.如P138例 * 引入快表, 段号和页号一起查找快表,找到了则一次访问内存, 否则,三次访问内存. * BBAB 4.4.4 两级和多级页表 计算机技术的发展,机器字长达32、64位,造成逻辑空间非常大:232~264,进一步造成页表庞大。 页表占用连续内存空间。 以页面大小为4KB为例: P142 急需解决页表所需的大空间的问题: 对页表所需要的内存空间,采用离散分配方式。 只将当前需要的部分页表项调入内存。其余的驻留在外存,需要时才调入。 两级页表(Two-Level Table Scheme) Windows: 采用两级页表 Linux: 采用三级页表 外层页表 外层页内地址 页内地址 P143 Address-Translation Scheme for a two-level 32-bit paging architecture 4.4.5 反置页表(Inverted Page Table) 一般页表:每个页对应一个页表项,按页号排序,页表项内容为物理块号。 反置页表:每个物理块号对应一个页表项(entry ),按物理块号排序,页表项内容为页号及其隶属进程标识符。 整个系统一张反置页表 0 1 2 3 页号 物理块号 0 1 2 3 物理块号 页号 进程PID 一般页表 反置页表 Inverted Page Table 检索效率问题 普通页表的检索是有序的, 可快速定位. 反置页表的检索必须按进程Id顺序检索, 效率低下. Hash表 反置页表只记录了装入内存的页面.未装入的需要记录在外部页表中. 外部页表:为每个进程建立一个外部页表:记录各个页在外存中的物理位置. 4.5.1分段的基本思想 程序的用户视图 作业由若干具有完整 逻辑意义的信息段组成 以页为内存分配单位 矛盾 以段为内存分配单位 优点: 1、方便用户设计——模块化 2、便于内存共享、保护、动态装入 4.5分段存储管理方式 分段的思想(离散分配) 分段存储管理的实现(地址空间的映射,地址的变换) 1、分段的实现 作业空间按逻辑信息分成若干段,段由段名和段号标志 每段从0开始编址,各段长度不等 分段的作业地址空间是二维的: 相对地址= 段名(基地址),段内地址 系统为每个分段分配一个连续空间,多个分段之间不一定连续 4.5.2分段存储管理的基本原理 Since segments vary in length, memory allocation is a dynamic storage-allocation problem——first fit/best fit (External fragmentation) 段表:每进程一个,记录进程内段与内存实际段存放基地址 的映射关系。 段号 段长 主存始址 0

文档评论(0)

1亿VIP精品文档

相关文档