网站大量收购独家精品文档,联系QQ:2885784924

第4课存储管理内容提要.ppt

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4课存储管理内容提要

第4章存储管理内容提要 任务:合理调配可利用的存储资源(Cache、主存、外存),以满足用户对存储空间和存储速度的要求。 基本存储管理 交换 虚拟存储:分页管理 页面置换算法 分页系统的设计问题 分段:包括段页式存储管理 MINIX存储管理概述 MINIX中的MM的实现(略) 习题 基本存储管理 没有交换和分页的单道程序:适用于整个内存只有一个用户的情况。p.232 固定分区的多道程序: 两种固定分区方案:p.233 重定位和保护 产生重定位要求的原因:程序的位置是由分区的当前状况动态决定的。静/动态重定位。 重定位的工作:指令位置的变化;指令内部若涉及地址,则该地址也要变化。 保护(防止对OS和其他进程的破坏):PSW保护(每个block有与相应进程的PSW中存放的密钥对应的“数字锁”;base和limit寄存器。) 交换 在分时系统中才需要交换:多进程留驻和变化着的内存需求。解决方案有交换和虚拟存储(各运行进程可部分进内存)两种。 交换系统中内存分配的变化情况:p.234 外零头和内存紧缩:紧缩的cost很大。 进程在运行中的扩展:后有空洞(p.235);后无空洞(换地方/等待/被杀) 使用bit map (p.236)的内存管理: 问题(unit大小、找长度合适的0字串所需的cost) 使用已分配和空闲内存linked list (p.236)的内存管理: 当一个进程运行结束时,如何收回它占的内存:对不同的当前分配现状,list的变化不同。 为方便增、删list中的项,采用双链接更好。 分配内存的算法:首次、下次、最佳、最差适配 为提高性能,可在数据结构上想办法。如分开忙空内存的链表;空洞自连;按空洞规模分几条链等。 虚拟存储:分页管理(1) 覆盖技术:调用—OS;编程—应用程序 引出的思路:把上述的麻烦事全交由OS来完成;运行程序无须全部进入内存(从而更加有利于执行多道程序)。 分页 虚地址空间:由MMU完成虚实地址转换 分页虚存中虚地址和实地址之间的转换示例:p.240的图和p.239, L-10开始的地址转换例子 如果虚地址的页没有相应的页框与之对应怎么办? 缺页故障(页面的滚入和滚出):p.240, L6 虚地址到实地址的转换原理:p.241(注意page table的概念) 虚拟存储:分页管理(2) 页表的用法(p.241):虚地址的分段、页表、页号用作页表的索引、在/不在位。 应用程序和页表的空间位置 页式地址映射时遇到的问题: 页表占用的空间大小:例如地址32位,页长4k时,页表的项数为220 ,约为1M 映射的速度:两个极端—页表全部放在高速存储器中;页表全部放在普通内存中 多级页表(p.243):例p.242, L.-5;典型的页表项及其主要组成部分的用途p.244 虚拟存储:分页管理(3) TLB(Translation Lookaside Buffer)—快表 读取页表的速度严重影响系统性能 在一段时间内被访问到的内存区域的局部性 TLB的内容和用法(命中/不命中、不命中时利用硬件/软件置换TLB的内容):p.245 用好TLB的其他措施:预装;在cache的固定位置存放TLB条目内容,对cache的这部分空间的页号永存于TLB中。 反向页表 问题的提出:当地址长度变成64位时,对于4k的页面,页表长度将是252 项 反向页表中每项对应一个页框 访问过程:虚页号 (搜索反向页表) 页框号。性能极差 补救方法:TLB+TLB不命中时通过hash(页号)搜索页表项 反向页表 应用程序在存储空间中的位置,以及操作系统管理的页表的位置 MMU所在的位置和作用 页面置换算法 页面置换的原因、过程和效率(防颠簸) 最优页面置换算法 最近未使用页面置换算法NRU:对页表项中的访问位R和修改位M的使用p.248 先进先出置换算法FIFO 二次机会页面置换算法p.249 时钟页面置换算法p.250 最久未使用页面置换算法LRU :方法一—p250 L13;方法二—p.251,图4-15 用软件模拟LRU算法 时钟中断时根据每个页面的R位决定是否要使该页面的计数器加1。该方法的问题是“不忘过去”。 老化算法:可解决“不忘过去”问题。p.252 分页系统的设计问题(1) 除了地址映射和页面置换外的深层问题 工作集模型 “请求”装入/预装入 工作集概念的产生、定义和意义 访问的局部性导致一段时间只访问部分页面组成的集合 一个进程当前使用的页面的集合即为这个进程的工作集—W (t, ?t)即它是当前时间t和时间窗口?t的函数 实现:用上节的老化算法(p.252)动态跟踪运行进程的工作集。(取高n位不为0的页面)。因此,可以在进程下次运行前,根据工作集预先调入工作集中的页面。还可改进时钟算法:如果页面的R为0,但该页属工作集,

文档评论(0)

zhuwo + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档