一道分页存储和缺页中断题

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
分析:
1)按字节编址,意味着一个地址存放一个字节,即1 Byte,8位。一个内存地址,也称为一个内存单元。

2)页面大小为1K(2^10B),则一页存放1024个地址,即1024个单元。

3)虚拟页式存储,则系统需要建立页面映射表,即虚拟内存(逻辑内存)中的页号与物理内存页号的对照表,称为页表。页表存放于内存,进程执行过程时,首先查找页表,根据索引结果,取指或取数据。

由于一个地址(单元)是1Byte,而题目中的指令和数据都为16位,则占据2Byte,分为高字节和低字节。所以无论是取指令或取数据,都需要读2次页表,取2次值,即访问4次内存。现在指令 1 条,数据 2 个,合共访问内存 4 * (1 + 2) = 4 * 3 = 12 次。

为什么取指或取数据,要查页表?页表只不过是逻辑页号和物理页号的对照表而已。是因为系统执行的时候,要按照逻辑地址,最终从内存中拿到内容进行处理。题干中指令和数据为16位,则在系统作业中,它们每个都有高字节和低字节2个逻辑地址。按地址拿东西,所以要查页表。

第2问,如上分析,1页有1024个地址单元,根据题干描述,指令、数据,都跨页,因为地址从0开始,1023是第一页的最后一个单元,3071是第3页最后一个单元,5119是第五页最后一个单元。也就是说,指令、数据占据了6页。难道会产生6次页面中断?由于要执行指令,前提就是已经读到这条指令,因此指令的第一页不算,只算后面的5次页面中断。

为什么会产生页面中断呢?因为指令和数据事先并没有在内存中,所以要调入内存,才能被CPU读取、执行。

答:
1、应该访问 4 * 3 = 12 次内存。

2、产生5次页面中断。


2021.02.24
按字节编址,意味着一个地址存放8bit的内容;按字编址,一个地址存放16bit内容。内存容量最小单位为bit,地址不是内存的容量单位。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值