查:堆有多大

场景:同一个只读工具,看 heap 段多大。 任务:跑 python3 ~/lab/mem.py --heap,读它报的 堆大小 = N(KB),到 ~/对照表.txt 查 N 填进来。 (判分只看你在受控容器里的真机产物,纯本机、纯 Py

开始练习 →

修:页大小配错了

场景:~/lab/vm.py 的 PAGE = 8192,本机 4096。 任务:把它改成 PAGE = 4096,让 python3 ~/lab/vm.py --run 报 页大小 = 4096。改好运行 ~/check。 (判分只看你在

开始练习 →

修:对齐配错了

场景:~/lab/vm.py 的 ALIGN = 8,本条按 16 对齐。 任务:把它改成 ALIGN = 16,让 --run 报 对齐 = 16。改好运行 ~/check。 (判分只看你在受控容器里的真机产物,纯本机、纯 Python,

开始练习 →

修:栈方向反了

场景:~/lab/vm.py 的 STACKDIR = "up",本机栈向下长。 任务:把它改成 STACKDIR = "down",让 --run 报 栈方向 = down。改好运行 ~/check

开始练习 →

交付:页大小和对齐都修好

场景:~/lab/vm.py 两处:PAGE = 8192、ALIGN = 8。 任务:两处都改对(4096、16),让 --run 报 页大小 = 4096、对齐 = 16。改好运行 ~/check。 (判分只看你在受控容器里的真机产物,

开始练习 →

缓存到底在解决什么麻烦

CPU 和内存之间加一层缓存,是为了对付【0】。

开始练习 →

缓存里放的是什么

手边有,还是得跑一趟 手边有 得去取 缓存里存的是【0】。

开始练习 →

命中和未命中

手边有,还是得跑一趟 手边有 得去取 CPU 要的数据正好在缓存里,叫「命中」;不在,叫「未命中」。未命中时【0】。

开始练习 →

缓存归谁管

手边有,还是得跑一趟 手边有 得去取 往缓存里放什么、什么时候换出去,是【0】管的。

开始练习 →

缓存为什么不做大一点

手边有,还是得跑一趟 手边有 得去取 既然缓存这么有用,为什么不把它做得和内存一样大?【0】

开始练习 →