分页管理与分段管理下的动态链接

1. 动态链接与逻辑地址空间

首先,我们必须理解动态链接做了什么。

2. 动态链接在分段存储管理下的实现

分段管理与动态链接的结合非常自然、直观

优点:


3. 动态链接在页式存储管理下的实现

虽然分页管理的逻辑地址空间是一维、线性的,不像分段那样在结构上“模块化”,但它同样能高效地支持动态链接。

总结与对比:

特性 分段管理下的动态链接 分页管理下的动态链接
逻辑视图 将共享库视为一个新的、独立的段,加入到进程的段集合中。 在进程线性的虚拟地址空间中,找一片连续的空闲区域来映射共享库。
映射单位 。整个库作为一个或多个段进行映射。 。库所占的虚拟地址范围被逐页映射到物理页帧。
实现核心 修改进程的段表 (Segment Table),增加新的段描述符。 修改进程的页表 (Page Table),填充虚拟页到物理帧的映射关系。
共享方式 不同进程的段表项指向同一个物理段基地址 不同进程的页表项指向同一组物理页帧