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

操作系统-Read.ppt

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

第四章 存储管理 4.1 程序的装入和连接 4.2 连续分配方式 4.3 基本分页存储管理方式 4.4 基本分段存储管理方式 4.5 虚拟存储器的基本概念 4.6 请求分页存储管理方式 4.7 页面置换算法 4.8 请求分段式存储管理 存储管理是指存储器资源(主要指内存并涉及外存)的管理。 内存分配 内存保护 地址映射 内存扩充 4.1程序的装入和连接 4.1.1 存储组织 4.1.2 存储管理的功能 4.1.3 重定位方法 4.1.4 链接 返回 4.1.1 存储组织 存储器的功能是保存数据,存储器的发展方向是高速、大容量和小体积。 内存在访问速度方面的发展:DRAM、SDRAM、SRAM等; 硬盘技术在大容量方面的发展:接口标准、存储密度等; 存储组织是指在存储技术和CPU寻址技术许可的范围内组织合理的存储结构。 其依据是访问速度匹配关系、容量要求和价格。 “寄存器-内存-外存”结构 “寄存器-缓存-内存-外存”结构; 微机中的存储层次组织: 访问速度越慢,容量越大,价格越便宜; 最佳状态应是各层次的存储器都处于均衡的繁忙状态(如:缓存命中率正好使主存读写保持繁忙); 返回 存储层次结构 快速缓存: Data Cache TLB(Translation Lookaside Buffer) 内存:DRAM, SDRAM等; 外存:软盘、硬盘、光盘、磁带等; 4.1.2 存储管理的功能 存储分配和回收:分配和回收算法及相应的数据结构。 地址变换: 可执行文件生成中的链接技术 程序加载(装入)时的重定位技术 进程运行时硬件和软件的地址变换技术和机构 存储共享和保护: 代码和数据共享 地址空间访问权限(读、写、执行) 存储器扩充:存储器的逻辑组织和物理组织; 由应用程序控制:覆盖; 由OS控制:交换(整个进程空间),虚拟存储的请求调入和预调入(部分进程空间) 返回 4.1.3 重定位方法 重定位:在可执行文件装入时需要解决可执行文件中地址(指令和数据)和内存地址的对应。由操作系统中的装入程序loader来完成。 程序在成为进程前的准备工作 编辑:形成源文件(符号地址) 编译:形成目标模块(模块内符号地址解析) 链接:由多个目标模块或程序库生成可执行文件(模块间符号地址解析) 装入:构造PCB,形成进程(使用物理地址) 重定位方法: 绝对装入 可重定位装入 动态装入 返回 1. 逻辑地址、物理地址和地址映射 逻辑地址(相对地址,虚地址):用户的程序经过汇编或编译后形成目标代码,目标代码通常采用相对地址的形式。 其首地址为0,其余指令中的地址都相对于首地址来编址。 不能用逻辑地址在内存中读取信息。 物理地址(绝对地址,实地址):内存中存储单元的地址。物理地址可直接寻址。 地址映射:将用户程序中的逻辑地址转换为运行时由机器直接寻址的物理地址。 当程序装入内存时, 操作系统要为该程序分配一个合适的内存空间,由于程序的逻辑地址与分配到内存物理地址不一致, 而CPU执行指令时,是按物理地址进行的,所以要进行地址转换。 逻辑地址、物理地址和地址映射 地址映射 2. 绝对装入(absolute loading) 优点:装入过程简单。 缺点:过于依赖于硬件结构,不适于多道程序系统。 在可执行文件中记录内存地址,装入时直接定位在上述(即文件中记录的地址)内存地址。 3. 可重定位装入(relocatable loading) 优点:不需硬件支持,可以装入有限多道程序(如MS DOS中的TSR)。 缺点:一个程序通常需要占用连续的内存空间,程序装入内存后不能移动。不易实现共享。 在可执行文件中,列出各个需要重定位的地址单元和相对地址值。当用户程序被装入内存时,一次性实现逻辑地址到物理地址的转换,以后不再转换(一般在装入内存时由软件完成)。即:装入时根据所定位的内存地址去修改每个重定位地址项,添加相应偏移量。 可执行文件在内存中的重定位 说明:重定位表中列出所有修改的位置。如:重定位表的150表示相对地址150处的内容为相对地址(即100为从0起头的相对位置)。在装入时,要依据重定位后的起头位置(2000)修改相对地址。 重定位修改:重定位表中的150-绝对地址2150(=2000+150) 内容修改:内容100变成2100(=100+2000))。 4. 动态装入(dynamic run-time loading) 优点: OS可以将一个程序分散存放于不连续的内存空间,可以移动程序,有利用实现共享。 能够支持程序执行中产生的地址引用,如指针变量(而不仅是生成可执行文件时的地址引用)。 缺点:需要硬件支持(通常是CPU),OS实现较复杂。它是虚拟存储的基础。 在可执行文件中记录虚拟内存地址,装入和执行时通过硬件地址变换机构

文档评论(0)

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

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

1亿VIP精品文档

相关文档