3、存储器管理

存储器管理

程序的装入和链接

在这里插入图片描述

程序的装入:

  • 绝对装入方式:用户程序经编译后,将产生绝对地址(物理地址)的目标代码。
  • 可重定位装入方式:对于用户程序编译所形成的若干个目标模块,它们的起始地址通常都是从0开始的,程序中的其他地址都是相对于起始地址计算的。在采用可重定位装入程序将装入模块装入内存后,会使装入模块中的所有逻辑地址与实际装入内存后的物理地址不同。通常,把在装入时对目标程序中指令和数据地址的修改过程称为重定位。又因为地址变换通常是在进程装入时一次完成的,以后不再改变,故称为静态重定位。
  • 动态运行时的装入方式:可重定位装入方式可将装入模块装入到内存中任何允许的位置,但不允许程序运行时在内存中移动位置。动态运行时的装入程序在把装入模块装入内存后,并不立即把装入模块中的逻辑地址转换为物理地址,而是把这种地址转换推迟到程序真正要执行时才进行。

程序的链接:

  • 静态链接方式
  • 装入时动态链接
  • 运行时动态链接

连续分配存储管理方式

1、单一连续分配

在这里插入图片描述

2、固定分区分配

在这里插入图片描述

在这里插入图片描述

3、动态分区分配

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

动态分区分配算法

1、基于顺序搜索的动态分区分配算法

  • 首次适应算法:倾向于优先利用内存中低址部分的空闲分区;
  • 循环首次适应算法:
  • 最佳适应算法:避免"大材小用"
  • 最坏适应算法:总是挑选一个最大的空闲区;

2、基于索引搜索的动态分区分配算法

  • 快速适应算法
  • 伙伴系统
  • 哈希算法

分页存储管理方式

连续分配方式会形成很多碎片,虽然可通过"紧凑"方法将许多碎片拼接成可用的大块空间,但须为之付出很大开销。

如果允许将一个进程直接分散地装入到许多不相邻的分区中,便可充分利用内存空间,而无须再进行"紧凑",基于这一思想而产生了离散分配方式,根据在离散分配时所分配地址空间的基本单位的不同,又可将离散分配分为以下三种:

  • 分页存储管理方式:将用户程序的地址空间分为若干个固定大小的区域,称为页或页面。典型的页面大小是1KB,相应的,也将内存空间分为若干个物理块,页和块的大小相同,这样可将用户程序的任一页放入任一物理块中;
  • 分段存储管理方式:把用户程序的地址空间分为若干个大小不同的段,每段可定义一组相对完整的信息,在存储器分配时,以段为单位;
  • 段页式存储管理方式

在为进程分配内存时,以块为单位,将进程中的若干个页分别装入到多个可以不相邻接的物理块中。

在这里插入图片描述

地址变换机构

1、基本的地址变换机构

在这里插入图片描述

2、具有快表的地址变换机构

局部性原理:

  • 时间局部性:如果执行了程序中的某条指令,那么不久后,这条指令会再次执行,如果某个数据被访问过,不久之后该数据会再次被访问;
  • 空间局部性:一旦程序访问了某个存储单元,在不久之后,其附近的存储单元也会被访问。

快表,又称联想寄存器(TLB),是一种访问速度比内存快很多的高速缓冲存储器,用来存放当前访问的若干页表项,以加速地址变换过程。与此对应,内存中的页表常称为慢表。

在这里插入图片描述

分段存储管理方式

在这里插入图片描述

段表

在这里插入图片描述

分段系统的地址变换过程

在这里插入图片描述

分页和分段的区别:

  • 页是信息的物理单位,段是信息的逻辑单位;
  • 页的大小固定且由系统决定,段的长度不固定,决定于用户所编写的程序;
  • 分页的用户程序地址空间是一维的,分段系统中,用户程序的地址空间是二维的。

段页式存储管理方式

段页式系统的基本原理是分段和分页原理的结合,即先将用户程序分成若干个段,再把每个段分成若干个页,并为每一个段赋予一个段名。

在段页式系统中,地址结构由段号、段内页号和页内地址三部分组成。

在这里插入图片描述

关键:从段表项中得到该段的页表始址。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值