文章

24

粉丝

0

获赞

0

访问

2.1k

头像
2025 年 9 月第 1 次 408 月考试卷 - 第45题回答
操作系统
发布于2025年9月22日 23:14
阅读数 137

(1) 虚拟页号及 TLB 划分

  • 虚拟页号计算:页大小为 \(4KB = 2^{12}B\),虚拟地址为 32 位,所以虚拟页号占 \(32 - 12 = 20\) 位。第 14 条指令jl的虚拟地址为00401038h,将其右移 12 位(去掉页内偏移),得到虚拟页号为00401h(十六进制)。
  • TLB 划分方式:TLB 共 16 组(\(2^4 = 16\)),所以组号占 4 位。虚拟页号共 20 位,其中低位 4 位为 TLB 组号,剩下的 \(20 - 4 = 16\) 位为 TLB 标记。

(2) 虚拟页面数量计算

  • 指令代码的虚拟页面:指令代码的虚拟地址范围从00401000h00401038h左右。页大小为 \(4KB = 4096B = 0001000h\)(十六进制),00401000h00401FFFh为一个虚拟页面,指令代码都在这个页面内,所以指令代码至少占 1 个虚拟页面。
  • 数组A的虚拟页面:数组A大小为 2048 个int元素,每个int占 4 字节,所以数组A总大小为 \(2048×4 = 8192B = 2×4KB\),需要 2 个虚拟页面。
  • 总虚拟页面数:指令代码至少 1 个虚拟页面,数组A至少 2 个虚拟页面,所以至少需要 \(1 + 2 = 3\) 个虚拟页面。

(3) 内存策略组合及最大物理页面数

  • 策略组合:内存分配策略是按需分配(请求分页)(初始分配少量页面,缺页时根据规则分配新页),置换策略是随机置换(缺页时从已分配页面中随机选一页换出)。
  • 最大物理页面数:初始分配 2 个空物理页面,若连续两次缺页,第二次缺页后会再分配 1 个新空页,之后若再缺页,最多再分配页面直到满足需求。但题目中程序访问的虚拟页面数最多为 3 个(指令 + 数组),所以该进程执行完成后,系统为该进程分配的物理页面数量最多是 3 个(因为虚拟页面最多 3 个,物理页面数不会超过虚拟页面数)。

评分及理由

(1)得分及理由(满分2分)

学生正确计算了虚拟页号为00401H,并正确划分了TLB标记(高16位)和TLB组号(低4位)。答案与标...

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发