开启成长之旅!这是我参加「日新计划 12 月更文挑战」的第21天,点击查看活动概况

前面咱们已经学过根本分段存储办理方式,今日咱们学习恳求分段存储办理方式,与前者相比又有些不同,恳求分段存储办理方式是在根本分段基础上,添加了部分段装入恳求调段分段置换功用。

一、恳求分段存储办理中的硬件支持

1 段表机制

恳求分段体系中的段表是为了实现缺段中止,恳求调段,分段置换功用,对根本分段中的段表内容进行扩充,添加某些表项而设计的。

请求分段存储管理方式

(1)存取方式:用于标识分段的存取特点,如执行、只读、读/写等;

(2)拜访位(A):用于记载分段被拜访的状况,如多久未拜访、拜访次数等;

(3)修正位(M):用于符号分段是否被修正过;

(4)存在位(P):用于指示本段是否已经调入内存;

5)补充位:这是恳求分段存储办理方式中特有的字段,用于表明分段在运转进程中,是否做过动态添加;

(6)外存始址:用于记载分段在外存中的起始地址;

2 缺段中止机构

当进程要拜访的段不在内存时,发生缺段中止,由缺段中止处理程序将所需段调入内存。缺段中止比缺页中止少,但因为段长的不一致,使得将段调入内存的进程要复杂一些。

查看内存中是否有满足的空闲空间

1、有:则装入该段,修正有关数据结构,中止回来

2、无:查看内存中空闲区的总和是否满足要求,

是:紧凑,转1;

否:淘汰一些段,转1;

请求分段存储管理方式

3 地址改换机构

在由逻辑地址到物理地址的转化中,仍是运用段表。还可考虑段的维护和缺段。

越界中止处理:

进程在执行进程中,有时需要扩大分段,如数据段。

因为要拜访的地址超出原有段长,所以发生越界中止。

操作体系处理中止时,首先判别该段的“扩充位”,如可扩充,则添加段的长度;否则按出错处理。

请求分段存储管理方式

二、分段同享和维护

1 同享段表

在体系中设置一张段表,各同享段都在段表中占有一表项,表项中可有:段号、段长、内存始址、存在位等信息。并记载同享此段的进程的状况。

1)同享进程记数count:记载有多少个进程同享该段。

2)存取操控字段:不同进程对同一段有不同的权限。

3)段号:不同进程可用不同段号来标识该同享段,是由段的动态链接功用作保证。

2 同享段的分配、收回

1)分配:当第一个进程申请该段时,将其调入内存,填写进程段表、体系的同享段表,设count=1;再有进程申请该段时,只需在调用进程中填写进程段表(该同享段的物理地址)、同享段表(调用进程名、存取操控等),count+1等。

2)收回:某进程释放段后,执行count-1。若成果为0,则收回物理块,撤销同享段表中该段的表项,撤销该进程段表中同享段对应的表项;不为0,则不用收回物理块。

3 分段维护(Segment Protection)

1)越界查看(段表维护):段表长度和段号比较;段长和段内地址比较。

2)存取操控查看(段表中的存取操控字段)。

3)环维护机构:低编号的环具有高优先权。

一个程序能够拜访驻留在相同环或较低特权环中的数据。

一个程序能够调用驻留在相同环或较高特权环中的服务。

学到这儿咱们就把关于恳求分段存储办理方式的相关内容学习完了。