操作系统教程第4版.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
笫四章 存储管理 4.1 存储器 4.2 连续存储空间管理 4.3 分页式存储管理 4.4 分段式存储管理 4.5 虚拟存储管理 4.6 Intel x86分段和分页存储结构 4.7 Linux虚拟存储管理 4.8Windows2003虚拟存储管理 存储管理的功能 分配和去配:主存区的请求和释放 抽象和映射:支持进程从逻辑地址到物理单元的映射,实现地址转换 隔离和共享:隔离分配给进程的主存区,互不干扰免遭破坏;并允许多个进程共享主存区 存储扩充:允许用户的虚拟地址空间大于实际物理地址空间。 4.1 存储器 4.1.1存储器的层次 4.1.2地址转换与存储保护 4.1.1 存储器的层次 4.1.2 地址转换与存储保护(1) 程序的编译、链接、装入和执行 地址转换与存储保护(2) 地址变换的功能:完成虚拟地址到物理地址的转换 地址变换的两种技术: 静态重定位:在程序执行之前由装配程序完成由虚拟地址到物理地址的转换过程 动态重定位:在程序的执行过程中,在CPU访问内存时所进行的由虚拟地址到物理地址的转换过程。 动态重定位必须依靠硬件地址变换机构的支持 动态重定位 4.2 连续存储空间管理 4.2.1 固定分区存储管理 4.2.2 可变分区存储管理 4.2.3 伙伴系统 4.2.4 主存不足的存储管理技术 4.2.2 固定分区存储管理 固定分区存储管理的基本思想:主存空间被划分成数目固定不变的分区,各分区的大小可以不等,每个分区只装入一个作业。主存划分成几个分区,便允许几道作业并发执行。 固定分区存储管理的数据结构:主存分配表记录主存划分的分区及使用情况。主存分配表指出各分区的起始地址和长度 作业进入固定分区排队策略:一是每个分区有单独的作业等待队列;二是所有等待处理的作业排成一个等待队列 优缺点: 优点:管理简单,系统开销小,需要硬件少,只需要一对界址寄存器 缺点:分区大小固定,分区中总会有空闲的部分,所以存储空间的浪费大,无法实现存储共享,也无法实现存储扩充。我们把浪费掉的内存空间称作碎片。(内零头) 固定分区存储管理的地址转换和存储保护 4.2.2 可变分区存储管理 可变分区:存储管理是按作业的实际大小来划分分区,且分区个数也是随机的,实现多个作业对主存的共享,进一步提高主存资源利用率。 数据结构:已分配区表和未分配区表 可变分区方式主存分配示例 ? 可变分区回收算法 可变分区分配算法 然后按作业的大小,从该分区中划出一块空间分给请求者,余下的部分仍留在空闲链或空闲表中。它要求空闲分区表或自由链按分区大小递增的次序排列。 从表面看,该算法是最节省空间的,但由于每次分配后剩下的部分,也是最小的,这样会产生许多难以利用的小空闲区。(外零头) 最坏适应法 它要求找到一个长度大于等于所要求内存长度,且最大的分区,然后按作业的大小,从该分区中划出一块空间分给请求者,余下的部分仍留在空闲链或空闲表中。它要求可用表或自由链按分区大小递减的次序排列。 孤立的看,该算法最浪费内存空间,但由于每次分配后剩下的部分是最大的,这样会为以后的大作业留下空间。 链表空闲区管理方法 空闲区开头单元存放本空闲区长度及下个空闲区起始地址,把所有空闲区都链接起来,设置第一块空闲区地址指针,让它指向第一块空闲区地址。 申请空闲区; 归还空闲区。 可变分区地址转换与存储保护 多对基址/限长寄存器 4.2.3 伙伴系统(1) 伙伴原理 两个伙伴的大小必须相同,物理地址必须连续假定伙伴的大小为b,那么第一个伙伴的物理地址必须是2×b×4KB对齐 伙伴通过对大块的物理主存划分而获得 假如从第0个页面开始到第3个页面结束的主存 每次都对半划分,那么第一次划分获得大小为2页的伙伴,如0、1和2、3 进一步划分,可以获得大小为1页的伙伴,例如0和1,2和3 伙伴系统(2) 1伙伴系统原理 2 Linux伙伴系统 1) 以page结构为数组元素的mem_map[ ]数组 2) 以free_area_struct结构为数组元素的free_area数组 3) 位图数组(bitmap) 3 Linux基于伙伴的slab分配器(1) 为什么要使用slab分配器? slab的结构 slab的操作 Slab举例 Linux基于伙伴的slab分配器(2) 4.2.4 主存不足的存储管理技术 有关移动问题讨论 移动条件 移动时机 移动算法 2 对换技术 对换的作用 对换进程的选择 UNIX对换

文档评论(0)

iris + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档