如下程序实现为100×100的矩阵初始化为0,假定矩阵按列存放,开始时内存为空,程序和相关变量常驻内存,若分配给矩阵a的内存块为1页,页面大小为每页100个整数字。程序如下; int I,j,a[100][100]; for(j=0;j<100

admin2010-05-13  40

问题 如下程序实现为100×100的矩阵初始化为0,假定矩阵按列存放,开始时内存为空,程序和相关变量常驻内存,若分配给矩阵a的内存块为1页,页面大小为每页100个整数字。程序如下;    int I,j,a[100][100];    for(j=0;j<100;j++)    for  (I=0;I<100;I++)      a[1][j]=0;    则程序运行完毕发生的缺页中断次数为(    )。

选项 A、99
B、100
C、100*100
D、不能确定

答案2

解析 由于分配给矩阵的内存块为1页,.而每页大小为100个整数字,在此题环境中,由于程序及变量已经在内存中并常驻内存,不会发生缺页中断,只有当程序需要的数据所在页面不在内存中时,才会引起缺页中断,因为页面大小为100个整数字,每次缺页中断调取100个整数字进入内存,刚好为数组的一列程序,所以当以上程序运行完毕时,共需要调取100列数据,共发生100次缺页中断。
转载请注明原文地址:https://kaotiyun.com/show/5JSZ777K
0

最新回复(0)