第四章

内存的定义:

  • 内存也称主存,指CPU能直接存取指令和数据的存储器;
  • 存储器的层次:第四章

用户程序的地址空间

  • 装入程序——其功能是将模块放入内存,并运行重定位,通常与连接程序一起使用
  • 程序装入内存的方式:
      1. 绝对装入方式;
      1. 可重定位装入方式;
      1. 动态运行时装入方式;

重定位概念

  • 逻辑地址空间:由程序中逻辑地址组成的地址范围;
  • 内存空间(物理空间,绝对空间): 由内存中一系列存储单元所限定的地址范围
  • 重定位: 程序和数据装入内存时,需对目标程序中的地址进行修改。即把逻辑地址转换成内存物理地址这个过程称为 重定位
  • 重定位方式:
      1. 静态重定位方式;
      • 目标程序装入内存时进行地址变换;
        • 优点:无需增加硬件地址转换机构;
        • 缺点:位置固定,不便于共享;
        • 静态重定位示意图:第四章
      1. 动态重定位方式;
      • 程序执行期间进行重定位
        • 优点:位置可以改变,不必连续;易于共享;
        • 缺点:需要附加硬件支持;软件算法比较复杂;
        • 动态重定位示意图:第四章

对换技术:

  • 早期的对换技术用于单用户系统;
  • 多道程序环境中也采用对换技术;
    • 优点:利用外存来解决内存不足的问题;
    • 缺点:效率很低;不能保证充分利用内存;

内存管理技术:

1. 分区法:

  • 分区分配时为了支持多道程序设计运行而设计的一种最简单的存储管理方式;
      1. 固定分区法:
      • 分区个数固定不变,各个分区的大小固定不变,不同分区的大小可以不同;
      • 优点:管理方式简单,所需操作系统软件和处理开销小;
      • 缺点:
        • 1.内存空间利用率不高,碎片严重;
        • 2.活动进程数目受限;
        • 3.无法预知所需内存大小;
    • 2 动态分区法
    • 3.动态重定位分区法的优缺点:
      • 优点:可以消除碎片,能够分配更多的分区,有助于多道程序设计,提高内存利用率;
      • 缺点:
        • 1.紧缩花费了大量CPU时间;
        • 2.当进程大于整个空闲区时,仍要浪费一定的内存;
        • 3.进程的存储区内可能放有从未使用的信息;
        • 4.进程之间无法对信息共享;

分页技术