两个程序访问同一个虚拟地址

两个程序访问同一个虚拟地址

两个程序各有一张表,访问同一个虚拟地址,看它们落在哪儿、会不会撞上。

阅读更多 →
自己写:带权限的翻译

自己写:带权限的翻译

翻译时顺带检查权限:不在表里返回「缺页」,权限不够返回「拒绝」,否则返回物理地址。

阅读更多 →
三种结果各是什么

三种结果各是什么

运行下面这段程序,填写它打印出来的结果。 PAGE = 16 PT = {0: (3, "r"), 1: (0, "rw")} def check(va, w

阅读更多 →
越权访问被拦下来

越权访问被拦下来

运行下面这段程序,填写它打印出来的结果。 PAGE = 16 PT = {0: (3, "r"), 1: (0, "rw")} def check(va, w

阅读更多 →
页表项里的权限位管什么

页表项里的权限位管什么

页表项里除了物理页号,还有几个权限位。它们管的是【0】。

阅读更多 →
隔离是怎么来的

隔离是怎么来的

两个程序之间的内存隔离,靠的是【0】。

阅读更多 →
⚠️ 内存超卖,赌输了会怎样

⚠️ 内存超卖,赌输了会怎样

答应给程序 8 页,实际只有 4 页物理内存。⚠️ 程序真的把 8 页都用上时,缺页会开始反复发生——把「只用 4 页 / 用满 8 页」两种情况的缺页次数打出来。

阅读更多 →
算一算缺页的平均代价

算一算缺页的平均代价

普通访问算 1,缺页算 10000。算出「缺页率 0 / 千分之一」两种情况的平均代价。

阅读更多 →
自己写:按需装入

自己写:按需装入

缺页时把那一页装进内存(分配一个新的物理页),再重试。数出「访问次数 / 缺页次数」。

阅读更多 →
装进来之后就不缺了

装进来之后就不缺了

运行下面这段程序,填写它打印出来的结果。 PAGE = 16 PT = {0: 3, 1: 0, 2: 5} faults = 0 for va in (50, 51, 52): vp = v

阅读更多 →