一、基本原理
前面介绍的各种存储管理中,供用户使用的逻辑地址都是连续的,用户在编制大型程序时就会感到不方便。一个实际的程序往往是由若干段组成的,例如一个主程序段、若干子程序段、若干数据段和工作区段组成,如图3.22所示。
每个段都具有完整的逻辑意义,因此都可以独立编程,且给每个段一个段名。用户程序可以用符号形式(段名和入口)调用一个段的功能,如图3.21主程序中“调用[X]段入口E”。程序在编译或汇编时再给每个段名再定义一个段号 ,用于内存分配。每一段都可从“0”编址,段与段之间地址不连续,但段内地址是连续的。
分段式存储管理是以段为单位进行内存分配,为此提供逻辑地址的形式如下:
地址结构确定后 ,一个作业中允许的最多 段数及每段最大长度
也就确定了。例如PDP-11/45的段址结构为:段号3位,段内地址(单元号)13位,也就是说一个作业最多8段,每段最长可达8K字节。
分段式存储管理为作业的每一个段分配一个连续的内存区域,用来存放该段信