段页式存储结构概述

转自:http://blog.sina.com.cn/s/blog_5f240fc40100cng9.html

段、页式存储都是采用离散分配方式的。离散分配方式:允许一个进程直接分散地装入到许多不相临的分区中,可以更好的提高内存利用率。
一、基本分页存储
1.分页存储方式原则
把逻辑进程分为若干页;把实际内存分为若干块,块大小=页大小,然后把页离散的存放在块中,通过页表进行页到块的转换。分配方式如下图:

《段页式存储结构概述》

2.地址结构(以32位举例)

《段页式存储结构概述》

给定逻辑地址求页号和页内偏移地址方法:
A:逻辑地址,L:页大小
p=INT[A/L](取整)
d=[A]MOD[L](取余)

3.地址变换过程

《段页式存储结构概述》
二、基本分段式存储
同页式存储,不同点是把作业分为若干段,每段都有段号。可以联想c语言程序,有main函数段,子函数段,数据段等,此类似。
由于其地址转换类似分页,如果弄明白分页,则段也容易理解,在此不再叙述。

三、段页式存储
1.基本原理:是分页与分段的结合,即先将拥护程序分为若干段,再把每个段分为若干页,并为每个段赋予一个段名。
2.地址结构:

《段页式存储结构概述》

3.地址变换:

《段页式存储结构概述》

4.一个逻辑地址为:基地址x、段号s、页号p和页内地址d,求物理地址
(((x)+s)+p)*2^(11)+d

    原文作者:unity大话东游
    原文地址: https://blog.csdn.net/wscdylzjy/article/details/45195771
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞