段和页区别

来源:互联网 发布:无尽战区mac可以玩吗 编辑:程序博客网 时间:2024/05/29 03:08

 

1、页是信息的物理单位,分页是为实现离散分配方式,以消减内存的外零头,提高内存的利用率;或者说,分页仅仅是由于系统管理的需要,而不是用户的需要。段是信息的逻辑单位,它含有一组其意义相对完整的信息。分段的目的是为了能更好的满足用户的需要
分页的作业地址空间是维一的,即单一的线性空间,程序员只须利用一个记忆符,即可表示一地址。
2、 分段的作业地址空间是二维的,程序员在标识一个地址时,既需给出段名,又需给出段内地址。细言之:段式 分段由用户设计划分,每段对应一个相应的的程序模块,有完整的逻辑意义。
页式 分页用户看不见,由操作系统为内存管理划分。
段式 段面是信息的逻辑单位;便于段的共享,执行时按需动态链接装入。
页式 页面是信息的物理单位;页一般不能共享

段式 段长不等,可动态增长,有利于新数据增长;二维地址空间:段名、段中地址;段号、段内单元号
页式 页面大小相同,位置不能动态增长; 一维地址空间

段式 管理形式上象页式,但概念不同
页式 往往需要多次缺页中断才能把所需信息完整地调入内存


实现页(段)的共享是指某些作业的逻辑页号(段号)对应同一物理页号(内存中该段的起始地址)。页(段)的保护往往需要对共享的页面(段)加上某种访问权限的限制,如不能修改等;或设置地址越界检查,对于页内地址(段内地址)大于页长(段长)的存取,产生保护中断。
、页的大小固定且由系统确定,把逻辑地址划分为页号和页内地址两部分,是由机器硬件实现的,因而一个系统只能有一种大小的页面。段的长度却不固定,决定于用户所编写的程序,通常由编辑程序在对源程序进行编辑时,根据信息的性质来划分。

段式
页式

分段由用户设计划分,每段对应一个相应的的程序模块,有完整的逻辑意义。
分页用户看不见,由操作系统为内存管理划分。

段面是信息的逻辑单位
页面是信息的物理单位

便于段的共享,执行时按需动态链接装入。
页一般不能共享

段长不等,可动态增长,有利于新数据增长。
页面大小相同,位置不能动态增长。

二维地址空间:段名、段中地址;段号、段内单元号
一维地址空间

管理形式上象页式,但概念不同
往往需要多次缺页中断才能把所需信息完整地调入内存


实现页(段)的共享是指某些作业的逻辑页号(段号)对应同一物理页号(内存中该段的起始地址)。页(段)的保护往往需要对共享的页面(段)加上某种访问权限的限制,如不能修改等;或设置地址越界检查,对于页内地址(段内地址)大于页长(段长)的存取,产生保护中断。

在段式存储管理下,每个用户程序被由若干段组成,每段对应于一个过程、一个程序模块或一个数据集合,段间的地址是不连续的,但每一段内的地址是连续的。并一个用户程序的所有逻辑段从0开始编号,称为段号,每一段内的所有单元从0开始编址,称为段内地址。用户程序地址空间的每一个单元就必须用二维地址表示,即逻辑地址由段号和段内地址两部分组成:以便一个过程,一个模块或一个数据集合完成后能准确的找到下一个过程,下一个模块或下一个数据集合。

好处:
可以实现程序段在逻辑上连续而物理上不连续,方便便一个过程,一个模块或一个数据集合完成后能准确的找到下一个过程,下一个模块或下一个数据集合。总的来说段式存储管理的优点是:没有内碎片,外碎片可以通过内存紧缩来消除;便于实现内存共享。缺点与页式存储管理的缺点相同,进程必须全部装入内存。

原创粉丝点击