控制器通过总线向主存发送在物理地址的内存内容的请求
确保访问的内存地址合法
通过下面的步骤进行检查
连续内存分配
内存的碎片问题
空闲内存不能被利用
外部碎片 ( 在分配单元之间的未使用内存)
内部碎片.../ .data 等
分段 : 更好的分离和共享
程序的分段地址空间如下图所示 :
分段寻址方案
逻辑地址空间连续,但是物理地址空间不连续,使用映射机制进行关联....(如何根据页号找到帧号)
在需要在反向页表中搜索想要的页号
方案二 :基于关联内存的方案
硬件设计复杂, 容量不大, 需要放置在CPU中
如果帧数较少, 页寄存器可以被放置在关联内存中
在关联内存中查找逻辑页号...)的方案
哈希函数 : h(PID, p) 从 PID 标号获得页号
在反向页表中通过哈希算法来搜索一个页对应的帧号
对页号做哈希计算, 为了在帧表中获取对应的帧号
页 i 被放置在表 f(i) 位置..., 其中 f 是设定的哈希函数
为了查找页 i , 执行下列操作 :
计算哈希函数 f(i) 并且使用它作为页寄存器表的索引, 获取对应的页寄存器
检查寄存器标签是否包含 i, 如果包含, 则代表成功