l内存管理练习题.docVIP

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
l内存管理练习题

三、内存管理 一、考试大纲 (一)内存管理基础 1.内存管理概念 程序装入与链接;逻辑地址与物理地址空间;内存保护。 2.交换与覆盖 3.连续分配管理方式 单一连续分配;分区分配。 4.非连续分配管理方式 分页管理方式;分段管理方式;段页式管理方式 (二)虚拟内存管理 1.虚拟内存基本概念 2.请求分页管理方式 3.页面置换算法 最佳置换算法(OPT);先进先出置换算法(FIFO);最近最少使用置换算法(LRU);时钟置换算法。 4.页面分配策略 5.抖动 抖动现象;工作集 6.请求分段管理方式 7.请求段页式管理方式 二、知识点归纳 (一)内存管理基础 1.内存管理概念 内存是指处理器可以直接存取指令和数据的存储器,内存和处理器都是计算机系统的一种重要资源。在多道程序设计技术出现以后,对存储管理提出了更高的要求。内存管理的主要任务是为多道程序的运行提供良好的环境,方便用户使用存储器,提高存储器的利用率以及从逻辑上扩充存储器。 在操作系统中,将一个用户的源程序变为一个可在内存中执行的进程,通常要经过以下几步: 1)编译。由编译程序将用户源代码编译成若干个目标模块; 2)链接。由链接程序将编译后形成的一组目标模块,以及它们所需要的库函数链接在一起,形成一个完整的装入模块; 3)装入。由装入程序将装入模块装入内存。 (1)程序的链接 源程序经过编译后,可得到一组目标模块,这时需要利用系统中链接程序将这组目标模块链接在一起,形成装入模块。根据链接时间的不同,可以分成三种链接方式,即静态链接、装入时的动态链接和运行时的动态链接。 1)静态链接。在程序运行前,先将各目标模块及它们所需的库函数,链接成一个完整的装配模块,以后不再拆开。静态链接方式需要解决两个问题:外部调用符号到相对地址的转换;相对地址到绝对地址的的转换; 2)装入时的动态链接。在将目标模块装入内存时,采用边装入边链接的方式。该方式具有以下优点:便于目标模块的修改和更新;便于实现对目标模块的共享。 3)运行时的动态链接。事先不对各个模块进行链接,而是在程序执行中当需要该模块时,再将该模块调入内存,并进行链接。采用这种方式,凡在执行过程中没有用到的目标模块,都不会被调入内存,这样不仅可加快程序的装入过程,而且可以节省大量的内存空间。 (2)程序的装入 程序的装入方式有三种,它们分别是绝对装入方式、可重定位的装入方式以及动态装入方式,现介绍如下。 1)绝对装入方式 在编译时,如果知道程序将驻留在内存的什么位置,那么编译程序将产生包含有内存绝对地址(也称实际地址)的目标代码。这样装入程序就会按照目标代码中的地址,将程序和数据装入到内存的实际位置。程序中使用的绝对地址,既可以在编译或汇编时给出,也可由程序员直接赋予。但因为需要程序员熟悉当前内存的使用情况,所以要求较高。 2)可重定位的装入方式 在多道程序的环境下,所得到的目标模块的起始地址通常是从0开始的,程序中的其它地址都是相对于起始地址进行计算的。此时应采用重定位装入方式,根据内存的当前情况,将装入模块装入到内存的适当位置。由于装入模块中的所有地址与实际装入内存的物理地址不同,所以需要进行地址变换(在原先相对地址的基础上加上内存装入位置的地址)。如下图所示 通常,把在装入程序时对目标模块中的指令和数据的地址变换过程称为重定位。又因为地址变换是在装入时一次完成的,所以称为静态重定位。 3)动态运行时的装入方式 动态运行时的装入程序,在把装入模块装入内存后,并不立即将其中的相对地址转换为绝对地址,而是把地址转换推迟到程序执行前再进行。因此,装入内存后的所有地址都仍是相对地址。 (3)逻辑地址与物理地址空间; 由编译程序所产生的所有目标模块中,使用的都是相对地址,即其起始地址为0,每个模块中的地址都是相对于起始地址计算的。而物理地址是指内存中的实际的地址空间。 (4)内存保护 保证进入内存的各道作业都在自己的存储空间内运行,互不干扰。既要防止一道作业由于发生错误而破坏其他作业,也要防土破坏系统程序。这种保护一般由硬件和软件配合完成 2.交换与覆盖 交换技术就是把暂时不用的某个程序及数据部分(或全部)从内存移到外存中去,以便腾出必要的内存空间,或把指定的程序或数据从外存读到相应的内存中,并将控制权交给它,使其在系统上运行的一种内存扩充技术。 覆盖技术,就是把一个大的程序划分为一系列覆盖,每个覆盖就是一个相对独立的程序单位,把程序执行时并不要求同时装入内存的覆盖组成一组,称为覆盖段,这个覆盖段分配到同一个存储区域,这个存储区域称为覆盖区,它与覆盖段一一对应。 交换技术不要求程序员给出程序段之间的覆盖结构,而且交换主要是在进程或作业之间进行;而覆盖则主要在同一个作业或进程中进行。另外,覆盖只能覆盖与覆盖程序段无

文档评论(0)

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

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

1亿VIP精品文档

相关文档