6.22
磁道数 d 与 r - x * r 成正比
设 d = k(r - x * r) = kr(1 - x)
总容量 c = 2πxk(r^2)(1 - x) = 2πk(r^2)(x - x^2)
上式实际上是关于 x 的二次式,其对称轴为 1/2,即当 x = 1/2 时取最大值
6.23
平均旋转延迟:
T_arg_rotation = 1/2 * T_max_rotation = 1/2 * 60s/15000 RPM * 1000ms/s = 2ms
平均传送时间:
T_arg_tranfer = 60s/15000 RPM * 1/800扇区/磁道 * 1000ms/s = 0.005ms
总时间:
T_access = T_arg_rotation + T_arg_tranfer + T_arg_seek = 6.005ms
6.24
和书上6.4一样,但是我不懂为什么 1MB / 512B = 2000,有大佬给我解释一下么?
这儿按照书上的做法 2MB/512B = 4000,即需要 4000 个逻辑块,所以是 4 整圈
T_max_rotation = 60s/15000 RPM * 1000ms/s = 4ms,T_arg_seek = 4ms, T_arg_rotation = 1/2 * T_max_rotation = 2ms
A.
T = T_max_rotation * 4 + T_arg_rotation + T_arg_seek = 22ms
B.
T = 4000(T_arg_rotation + T_arg_seek) = 24000ms
6.25
高速缓存 | m | C | B | E | S | t | s | b |
---|---|---|---|---|---|---|---|---|
1 | 32 | 1024 | 4 | 4 | 64 | 24 | 6 | 2 |
2 | 32 | 1024 | 4 | 256 | 1 | 30 | 0 | 2 |
3 | 32 | 1024 | 8 | 1 | 128 | 22 | 7 | 3 |
4 | 32 | 1024 | 8 | 128 | 1 | 29 | 0 | 3 |
5 | 32 | 1024 | 32 | 1 | 32 | 22 | 5 | 5 |
6 | 32 | 1024 | 32 | 4 | 8 | 24 | 3 | 5 |
6.26
高速缓存 | m | C | B | E | S | t | s | b |
---|---|---|---|---|---|---|---|---|
1 | 32 | 2048 | 8 | 1 | 256 | 21 | 8 | 3 |
2 | 32 | 2048 | 4 | 4 | 128 | 23 | 7 | 2 |
3 | 32 | 1024 | 2 | 8 | 64 | 25 | 6 | 1 |
4 | 32 | 1024 | 32 | 2 | 16 | 23 | 4 | 5 |
6.27
A.
标记位为 45 时:
CT = 01000101 CI = 001 CO = XX
因此地址为 0x08A4 ~ 0x08A7
标记位为 38 时:
CT = 00111000 CI = 001 CO = XX
因此地址为 0x0704 ~ 0x0707
B.
0x1238 ~ 0x123B
6.28
A.
全都不命中
B.
0x18F0 ~ 0x18F3
0x00B0 ~ 0x00B3
C.
0x0E34 ~ 0x 0E37
D.
0x1BDC ~ 0x1BDF
6.29
A.
12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
CT | CT | CT | CT | CT | CT | CT | CT | CT | CI | CI | CO | CO |
B.
操作 | 地址 | 命中? | 读出的值(或者未知) |
---|---|---|---|
读 | 0x834 | 未命中 | 未知 |
写 | 0x836 | 命中 | 未知 |
读 | 0xFFD | 命中 | C0 |