操作系统原理教程 第3章存储器管理
操作系统原理教程 第3章 存储器管理
本章教学目标 ●熟悉存储管理的基本功能 ●掌握各种存储管理方式下主存分配与回 收、地址转换与存储保护、管理特点 ●熟悉在各种存储管理方式下提高主存利 用率的方法
本章教学目标 ⚫ 熟悉存储管理的基本功能 ⚫ 掌握各种存储管理方式下主存分配与回 收、地址转换与存储保护、管理特点 ⚫ 熟悉在各种存储管理方式下提高主存利 用率的方法
本章主要内容 ●3.1存储器管理概述 ●3,2单用户连续存储管理方式 ●3.3固定分区存储管理方式 ●3.4可变分区存储管理方式 ●3.5页式存储管理方式 ●36段式存储管理方式 ●3.7段页式存储管理方式 ●3.8虚拟存储管理方式
本章主要内容 ⚫ 3.1 存储器管理概述 ⚫ 3.2 单用户连续存储管理方式 ⚫ 3.3 固定分区存储管理方式 ⚫ 3.4 可变分区存储管理方式 ⚫ 3.5 页式存储管理方式 ⚫ 3.6 段式存储管理方式 ⚫ 3.7 段页式存储管理方式 ⚫ 3.8 虚拟存储管理方式
3.1存储器管理概述 ●3.1.1存储器管理的主要任务 ●3.1.,2存储器管理的主要功能 ●3.1.3程序的装入与链接 ●3.1.4存储管理方式
3.1 存储器管理概述 ⚫ 3.1.1 存储器管理的主要任务 ⚫ 3.1.2 存储器管理的主要功能 ⚫ 3.1.3 程序的装入与链接 ⚫ 3.1.4 存储管理方式
3.1.1存储器管理的主要任务 ●存储管理的主要任务是尽可能方便用户 和提高主存储器的使用效率,使主存储 器在成本、速度和规模之间获得较好的 权衡
3.1.1 存储器管理的主要任务 ⚫ 存储管理的主要任务是尽可能方便用户 和提高主存储器的使用效率,使主存储 器在成本、速度和规模之间获得较好的 权衡
3.1.2存储器管理的主要功能 ●1.主存空间的分配和回收 ●2.地址转换 ●3.主存空间的共享与保护 °4.主存空间的扩充
3.1.2 存储器管理的主要功能 ⚫ 1.主存空间的分配和回收 ⚫ 2.地址转换 ⚫ 3.主存空间的共享与保护 ⚫ 4.主存空间的扩充
3.1.3程序的装入与链接 ●1.源程序的执行过程 ●2.程序的链接 ●3.程序的装入
3.1.3 程序的装入与链接 ⚫ 1.源程序的执行过程 ⚫ 2.程序的链接 ⚫ 3.程序的装入
1.源程序的执行过程 ●通常要经过编译、链接和装入几个步骤,其控 制示意如图3-所示 (1)编译。由编译程序将用户源代码编译成 若干个目标模块。 (2)链接。由链接程序将编译后形成的目杉 模块以及它们所需要的库函数,链接在一起, 形成一个装入模块。 (3)装入。由装入程序将装入模块装入主存 的过程
1.源程序的执行过程 ⚫ 通常要经过编译、链接和装入几个步骤,其控 制示意如图3-1所示。 ⚫ (1)编译。由编译程序将用户源代码编译成 若干个目标模块。 ⚫ (2)链接。由链接程序将编译后形成的目标 模块以及它们所需要的库函数,链接在一起, 形成一个装入模块。 ⚫ (3)装入。由装入程序将装入模块装入主存 的过程
2.程序的链接 ●链接程序的功能是将经过编译或汇编后所得到的 组目标模块以及它们所需要的库函数,装配成 一个完整的装入模块 ●实现链接的方法有三种 静态链接:事先进行链接,以后不再拆开的链接方式 装入时动态链接:用户源程序经编译后所得到的目标 模块,是在装入主存时,边装入边链接的 运行时动态链接:可将某些目标模块的链接,推迟到 执行时才进行
2.程序的链接 ⚫ 链接程序的功能是将经过编译或汇编后所得到的 一组目标模块以及它们所需要的库函数,装配成 一个完整的装入模块。 ⚫ 实现链接的方法有三种 – 静态链接:事先进行链接,以后不再拆开的链接方式 – 装入时动态链接:用户源程序经编译后所得到的目标 模块,是在装入主存时,边装入边链接的。 – 运行时动态链接:可将某些目标模块的链接,推迟到 执行时才进行
3.程序的装入 ●程序的装入就是把程序装入内存空间 ●采用三种方式 (1)绝对装入方式:是由装入程序根据装入模块中 的地址,将程序和数据装入主存。 2)可重定位方式:是由装入程序根据主存当前的 实际使用情况,将装入模块装入到主存适当的地方 (3)动态运行时装入方式:动态运行时的装入程序 在把装入模块装入主存后,并不立即把裝入模块中的 相对地址转换为绝对地址,而是把这种地址转换推迟 到程序要真正执行时才进行
3.程序的装入 ⚫ 程序的装入就是把程序装入内存空间。 ⚫ 采用三种方式 – (1)绝对装入方式:是由装入程序根据装入模块中 的地址,将程序和数据装入主存。 – (2)可重定位方式 :是由装入程序根据主存当前的 实际使用情况,将装入模块装入到主存适当的地方。 – (3)动态运行时装入方式:动态运行时的装入程序, 在把装入模块装入主存后,并不立即把装入模块中的 相对地址转换为绝对地址,而是把这种地址转换推迟 到程序要真正执行时才进行