在某计算机中,假设某程序的6个页面如下图所示,其中某指令“COPY A TOB”跨两个页面,且源地址A和目标地址B所涉及的区域也跨两个页面。若地址为A和B的操作数均不在内存,计算机执行该COPY指令时,系统将产生 (27) 次缺页中断;若系统产生3次缺页中断,那么该程序应有 (28) 个页面在内存。
(28)处填()。
A.2
B.3
C.4
D.5
参考答案:B
解析:
(27)、(28)
[分析]: 本题考查操作系统中文件系统内存管理方面的知识。
从题图中可见,程序的COPY指令跨两个页面,且源地址A和目标地址B所涉及的区域也跨两个页面页内地址,这时,如果3、4、5和6号页面不在内存,系统执行“COPY A TOB”指令时,取地址为A的操作数,由于该操作数不在内存且跨两个页面3、4,需要将3、4页面装入内存,所以产生两次缺页中断;同理,取地址为B的操作数,由于该操作数不在内存且跨两个页面 5、6,需要将5、6页面装入内存,所以产生两次缺页中断, * * 生4次缺页中断。故(27)题的正确答案为C。
同理,如果1、3、4号页面不在内存,系统执行“COPY A TOB” 指令时,由于程序的COPY指令跨两个页面,如果取出指令分析是多字节的,那么系统将产生一次缺页中断取指令的后半部分;当取地址为A的操作数时,由于该操作数不在内存,且跨两个页面3、4,需要将3、4页面装入内存,所以产生两次缺页中断, * * 生3次缺页中断。故(28)题的正确答案为B。