「学习笔记」操作系统-内存管理考点整理

内存管理-命题重点 程序装入的过程与原理 , 编译与链接 , 逻辑地址与物理地址 。 连续分配方式的原理与特点 , 动态分区分配算法的原理 。 分页存储管理的页表机制 , 分段存储管理的段表机制 , 分页与分...
内存管理-命题重点

  1. 程序装入的过程与原理 , 编译与链接 , 逻辑地址与物理地址 。
  2. 连续分配方式的原理与特点 , 动态分区分配算法的原理 。
  3. 分页存储管理的页表机制 , 分段存储管理的段表机制 , 分页与分段的比较
  4. 虚拟存储器的原理、特征 , 缺页中断的处理过程和特点 , 虚拟地址和物理地址的变换 , 引入快表后的页氏虚拟存储器的地址变换过程 , 各种页面置换算法的原理 , 页面分配策略 , 工作集的定义 , 抖动产生的原因和解决方法 。
内存管理的概念程序运行的基本原理【考点笔记1】将用户源程序变为可在内存中执行的程序 , 通常需要与下几个步骤:
  • 编译 , 由编译程序将用户源代码编译成若干个目标模块 , 每个模块具有各自的逻辑地址空间 。
  • 链接 , 由链接程序将上述目标模块 , 以及所需库函数链接 , 形成具有完整的逻辑地址空间的装入模块 。
  • 装入 , 由装入程序将装入模块装入内存 。

「学习笔记」操作系统-内存管理考点整理文章插图
连续分配管理方式连续分配方式【考点笔记2】内部碎片: 是指已分配给作业 , 但不能被利用的存储空间 。 eg. 某个作业所占用的内存区域 , 如果没有装满 , 就是内部碎片
外部碎片: 系统中还没有分配给作业 , 但由于碎片太小而无法分配给申请内存空间的新进程的存储块 。 eg.作业与作业之间 , 如果有内存区域没有分配给某个作业 , 但又不能分配给任何作业 , 就是外部碎片
分配方式单一连续分配固定分区分配动态分区分配说明分为系统区和用户区 。 系统区仅提供给操作系统使用 , 通常在低地址部分 。 用户区是为用户提供的除了系统外的内存空间将内存用户空间划分为若干个固定大小的区域 , 每个分区只装入一道作业 。 当有空闲分区时 , 便可以再从外存的后备作业队列中选择适当大小的作业装入该分区 , 如此循环是一种动态划分内存的分区方法 。 不预先将内存划分 , 而是在进程装入内存时 , 根据进程的大小动态地建立分区 , 并使分区的大小正好适合进程的需要 。 因此系统中分区的大小和数目是可变的碎片内部碎片内部碎片外部碎片作业道数1<=N(用户空间划分为N块)不确定硬件界地址寄存器、越界检查机构上下界寄存器、越界检查机构、基地址寄存器、长度寄存器、动态地址转换机构上下界寄存器、越界检查机构、基地址寄存器、长度寄存器、动态地址转换机构解决空间不足覆盖覆盖/交换交换特点采用静态分配;只适用于单用户、单任务的操作系统;内存只装入一道作业运行 , 从而导致各类资源的利用率都很低;产生内部碎片;作业一旦装入内存 , 要等到其运行结束才能释放内存采用静态重定位方式;适用于一台计算机控制多个相同对象的场合;产生内部碎片采用动态重定位技术 , 实现了多道程序共用主存;管理方案相对简单 , 不需要更多开销;实现存储保护的手段比较简单;主存利用不充分 , 产生外部碎片;无法实现多进程共享存储器信息
动态分区分配算法【考点笔记3】算法说明特点首次适应算法空闲分区以地址递增的顺序链接 。 分配内存时 , 从链首开始顺序查找 , 直至找到大小能满足要求的第一个空闲分区实现方法简单;查找速度快 , 平均性能最好;碎片多出现于低地址空间循环首次适应算法空闲分区与地址递增的次序链接 。 分配内存时 , 从上次查找结束的位置开始继续查找 , 直到找到第一个满足要求的空闲分区平均性能比首次适应算法差;碎片多出现于高地址空间最佳适应算法空闲分区以容量递增的次序链接 。 分配内存时 , 从链首开始顺序查找 , 直到找到第一个满足要求的空闲分区需要对分区排序 , 开销大;形成许多难以利用的小碎片最差适应算法空闲分区以容量递减的次序链接 。 分配内存时 , 从链首开始顺序查找 , 直到找到第一个能满足要求的空闲分区 , 也就是挑选出最大的分区需要对分区进行排序 , 开销大;使系统缺少大的连续空闲地址空间