分段存储管理的地址转换

本文介绍了分段存储管理的地址结构,其中每个作业最多64K个段,每段最大64KB。地址转换过程涉及段表寄存器,通过逻辑地址的段号与段表长度比较来防止越界。同时,给出了几个逻辑地址到物理地址的转换实例,展示了合法和越界的转换情况。

分段存储管理的地址结构

 

在该地址结构中,允许一个作业最长有64K个段,每个段的最大长度为64KB。

访问次数

每访问一个数据,需要访问内存两次

段表展示

 

逻辑地址转化为物理地址

为了实现进程从逻辑地址到物理地址的变换功能,在系统中设置了段表寄存器,用于存放段表起始地址和段表长度TL。在进行地址变换时,系统将逻辑地址中的段号S与段表长度TL进行比较。若S>TL,则表示段号太大,访问越界,于是产生越界中断信号。若未越界,则根据段表起始址和该段的段号,计算出该段对应段表项的位置,从中读出该段在内存中的起始地址。然后再检查段内地址d是否超过该段的段长SL。若超过,即d>SL,则同样产生越界中断信号。若未越界,则将该段的起始地址d与段内地址相加,即可得到要访问的内存物理地址。

例题

如以下段表所示,请将逻辑地址(0,125),(1,4096),(2,3800),(6,350)转换成物理地址

段号内存始址段长
050K10K
160K3K
270K5K
3120K8K
4150K4K

(0,125) : 0<=4 125<=10K,所以物理地址为:50*1024+125

(1,4096) : 1<=4,但4096>3k,越界中断

(2,3800) : 2<=4,3600<=5k ,所以物理地址为:70*1024+3800

(6,350) : 因为6>4,越界中断

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值