综合题

有一个虚存系统, 按行存储矩阵的元素。 一进程要为矩阵进行清零操作, 系统为该进程分配物理主存共3 页。 系统用其中一页存放程序, 且已经调入, 其余两页空闲, 按需调入矩阵数据。 若进程按如下两种方式进行编程:

问答题

若每页可存放 200 个整数, 问采用程序 A 和程序 B 方式时, 各个执行过程分别会发生多少次缺页?

【正确答案】

若每页可存放 200 个整数, 即每 2 行产生一次中断, 程序 A 在执行过程中会发生 50 次缺页中断;程序 B 运行时, 每一页存放 2 列元素, 内层循环每 2 次产生一次中断, 完成内层循环需要 50 次中断, 外层循环是每列产生一次, 完成外层循环需要 100 次中断, 这个循环完, 共产生 5000 次缺页中断。

【答案解析】
问答题

若每页只能存放 100 个整数时, 会是什么情况?

【正确答案】

若每页只能存放 100 个整数, 程序 A 的执行过程中会发生 100 次缺页; 而程序 B 的执行过程中内、 外关语言手册, 了解数组的数据存放方式。 同样也可看出, 页面的大小对缺页次数的影响, 页面越大, 缺页次数越少。

【答案解析】