一、分页存储管理
1、分页存储管理介绍
1.1 分页原理
页:将一个进程的地址空间划分为若干个大小相等的区域称为页。
块、页框:主存空间划分成与页相同的若干个物理块。
1.2 地址结构
分页系统地址结构:前一部分为页号;后一部分为页内地址。
1.3 页表
记录系统进程要访问的页面对应的物理块和页面的映射关系。
地址变换机构的基本任务是利用 页表把用户程序中的逻辑地址变换成主存的物理地址,也就是将用户程序中的页号变换成主存中的物理号。
2、块表
在地址映射机构中增加一个小容量的联想存储器,联想存储器由一组高速存储器组成称为快表,用来保存当前访问频率高的少数活动页的页号及相关信息。
3、两级页表机制
80386的逻辑地址有2^32个,若页面大小为4KB,则页表项达1MB个,每个页表占用4B,故每个进程的页表占用4MB主存空间,并且还是要连续的,为了减少页表所占用的连续的主存空间,在80386中采用两级页表机制。
原理:将页表进行分页,每个页面的大小与主存物理块大小相同,并给它们进行编号,这样可以离散地将各个页面分别存放在不同的物理块中。
外层页表(页目录表):存放的是某个页表的物理地址。
页表:每个表所存放的是页的物理块号。
优点:分页过程由操作系统完成,对用户是透明的,用户不用关心分页的过程。
缺点:不太容易实现共享。
二、分段存储管理
分段存储管理方式中,作业的地址空间被划分为若干个片段,每个片段都是一组完整的逻辑信息比如主程序段、数据段等,每个片段都有自己的编号名称,都是从0开始编址的一段连续空间,每个的长度是不相等的。逻辑地址由段号和段内地址组成。
段表实现了逻辑段到物理主存区的映射。
优点:容易实现段共享,允许若干个进程共享一个或多个段、对段的保护也比较容易。
缺点:对用户是不透明的,用户需要考虑分段的过程。
三、段页式存储管理
1、段页式存储管理介绍
段页式存储管理综合了分段和分页存储方式的优点既能有效的提高主存利用率也可以采用分段模式很好的满足用户的共享。
2、段页式存储管理原理
先将整个主存划分成大小相等的存储块,将用户程序按照程序的逻辑关系分为若干个段,并且每段都赋予编号信息,再将每个段划分成若干页,以页框的单位离散分配。
段页式管理地址结构:段号s、段内页号p、页内地址w
段页式系统实现了从逻辑地址到物理地址的转换,系统必须同时配置段表和页表。由于将段中的页进行离散分配,段表的内容是页表的开始地址和页表长度。
3、逻辑地址到物理地址的变换过程
1、根据段号S查段表,得到页表的开始地址
2、根据页号P查页表,得到物理块号b
3、将物理块号b拼页内地址W得到物理地址