算机 操作系统 第四章存储器管理(3)
第四章 存储器管理(3)
第四章存储器管理 4.9请求分段存储管理方式 4.10段页式存储管理方式 BACK
第四章 存储器管理 4.9 请求分段存储管理方式 4.10 段页式存储管理方式
第四章存储器管理 4.9请求分段存储管理 (虚拟段式存储管理)
第四章 存储器管理 4.9 请求分段存储管理 (虚拟段式存储管理)
请求分段使用的表 扩充段表(每个作业一个) ·现行分段表(整个系统一个) 现行调用表(整个系统一个)
一.请求分段使用的表 • 扩充段表(每个作业一个) • 现行分段表(整个系统一个) • 现行调用表(整个系统一个)
1.扩充段表 段号段长段始址存取控制中断位 访问位改变位扩充位辅存地址 中断位:表示该页在不主存 访问位:表示该页最近是否被访问过 改变位:表示该页内容是否被修改 扩充位(固定长/可扩充)
1.扩充段表 段号 段长 段始址 存取控制 中断位 访问位 改变位 扩充位 辅存地址 • 中断位:表示该页在不主存 • 访问位:表示该页最近是否被访问过 • 改变位:表示该页内容是否被修改 • 扩充位(固定长/可扩充 )
2.现行分段表 记录共享段的状态,包括:当前段 是否在主存,该段在主存的始址,共享的 作业数,每个作业名,作业号以及在该作 业中的段号、允许的存取方式等。每个允 许被共享的段,当其调入主存时,均在此 表上登记。当一共享作业退出系统后,则 应将共享本段作业数减1并将相应的表目 改为“可用”。若共享作业数为0,则请求 系统回收相应的存储空间
2.现行分段表 记录共享段的状态,包括:当前段 是否在主存,该段在主存的始址,共享的 作业数,每个作业名,作业号以及在该作 业中的段号、允许的存取方式等。每个允 许被共享的段,当其调入主存时,均在此 表上登记。当一共享作业退出系统后,则 应将共享本段作业数减1并将相应的表目 改为“可用” 。若共享作业数为0,则请求 系统回收相应的存储空间
现行分段表 段名段长主存始址‖状态 共享本段的作业数 「状态作业名作业号段号存取控制 段名段长「主存始址状态 共享本段的作业数 「状态作业名「作业号段号存取控制
现行分段表
3.现行调用表 实现各分段之间有效的、一致的动态连接。 在动态连接过程中调入一分段时,在表中 登记段名、访问的入口点、段名及段内地 址,系统为之分配一个段号。 段名段好状态访问过的入口点 B Y/120 C/80
3.现行调用表 • 实现各分段之间有效的、一致的动态连接。 在动态连接过程中调入一分段时,在表中 登记段名、访问的入口点、段名及段内地 址,系统为之分配一个段号。 段名 段好 状态 访问过的入口点 1 B 1 Y/120 2 X 1 C/80 … … … …
二.越界中断处理 越界中断处理 进程在执行过程中,有时需要扩大 分段,如数据段。由于要访问的地址超出 原有的段长,所以发越界中断。操作系统 处理中断时,首先判断该段的“扩充 位”,如可扩充,则增加段的长度;否则 按出错处理
1.越界中断处理 进程在执行过程中,有时需要扩大 分段,如数据段。由于要访问的地址超出 原有的段长,所以发越界中断。操作系统 处理中断时 ,首先判断该段的“扩充 位”,如可扩充,则增加段的长度;否则 按出错处理 二.越界中断处理
2.缺段中断处理 检查内存中是否有足够的空闲空间 ①若有,则装入该段,修改有关数 据结构,中断返回 ②若没有,检查内存中空闲区的总 和是否满足要求,是则应采用紧缩技 术,转①;否则,淘汰一(些)段, 转①
检查内存中是否有足够的空闲空间 ①若有,则装入该段,修改有关数 据结构,中断返回 ②若没有,检查内存中空闲区的总 和是否满足要求,是则应采用紧缩技 术,转 ① ;否则,淘汰一(些)段, 转① 2. 缺段中断处理