relocation.py
参数
第一题
问题
用种子 1、2 和 3 运行,并计算进程生成的每个虚拟地址是处于界限内还是界限外?如果在界限内,请计算地址转换。
种子为1时:
种子为2时:
种子为3时:
第二题
问题
使用以下标志运行:-s 0 -n 10。为了确保所有生成的虚拟地址都处于边界内,要将-l(界限寄存器)设置为什么值?
所以界限寄存器最小设置为930
第三题
问题
使用以下标志运行:-s 1 -n 10 -l 100。可以设置基址的最大值是多少,以便地址空间仍然完全放在物理内存中?
16k - 100 = 16 * 1024 - 100 = 16284
第四题
问题
运行和第 3 题相同的操作,但使用较大的地址空间(-a)和物理内存(-p)。
第五题
问题
作为边界寄存器的值的函数,随机生成的虚拟地址的哪一部分是有效的?画一个图,使用不同随机种子运行,限制值从 0 到最大地址空间大小。
虚拟地址必须小于界限寄存器,值才是有效的。