操作系统学习笔记(十一):非连续内存分配——段式存储管理

这篇博客介绍了段式存储管理的基本概念,包括段的定义,逻辑地址与物理地址的映射关系,以及硬件实现的段访问过程。段表示属性相同的地址空间,逻辑地址由段号和段内偏移量组成,通过段表进行地址转换,确保内存访问的安全性。
摘要由CSDN通过智能技术生成

段式存储管理中,将程序的逻辑地址空间内容分为不同的段进行管理,逻辑地址空间与物理地址空间之间的映射关系图可以如下所示:每个段内部是连续的,但是不同的段在物理内存上是不连续的。

段的概念:

  • 段表示访问方式和存储数据等属性相同的一段地址空间;
  • 一个段对应一个连续的内存块;
  • 若干个段共同组成进程的逻辑地址空间。

段访问:

逻辑地址由二元组 (s, addr) 表示。其中 s 表示段号,addr 表示段内偏移量。如下图:

硬件实现:

如下图所示:在程序P运行过程中,CPU要访问逻辑地址中的某个位置,已经知道段号与偏移。操作系统中维护段表,段表记录段号对应的基址与长度,首先MMU比对偏移量与段号对应的长度,如果偏移量大于长度说明操作不合法内存异常,否则是合法的,此时将段基址与偏移相加得到真实物理地址,然后进行访问。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值