🏷️ 知识点:位图
某系统采用页式存储管理,用位图管理空闲页框。若页大小为 4 KB,物理内存大小为 16 GB,则位图所占空间的大小是( )。
A. 128 B B. 128 KB C. 512 KB D. 4 MB
[tag_link]
正确答案:C
物理内存大小为16GB,每页大小为4KB,因此物理内存总共包含的页框数为(16GB)/(4KB)=234/212=222。 位图 需要管理每个页框的空闲状态,因此位图的位数应该等于物理 内存中页框的数量。每个位表示一个页框的空闲状态,所以位图所占空间大小应为(位图所占位数)/8=(222)/8=219bytes=512KB,因此,位图所占空间的大小为512KB,选项C为[tag_link]正确答案。
假设计算机系统采用 CSCAN(循环扫描)磁盘调度策略,使用 2KB 的内存空间记录 16384 个磁盘块的空闲状态。
(1) 请说明在上述条件如何进行磁盘块空闲状态的管理。
(2) 设某单面磁盘的旋转速度为 6000rpm,每个磁道有 100 个扇区,相邻磁道间的平均移动的时间为 1ms。若在某时刻,磁头位于 100 号磁道处,并沿着磁道号增大的方向移动(见下图),磁道号的请求队列为 50, 90, 30, 120,对请求队列中的每个磁道需读取 1 个随机分布的扇区,则读完这个扇区点共需要多少时间?需要给出计算过程。
(3) 如果将磁盘替换为随机访问的 Flash 半导体存储器(如 U 盘、SSD 等),是否有比 CSCAN 更高效的磁盘调度策略?若有,给出磁盘调度策略的名称并说明理由;若无,说明理由。
[tag_link]
1)用 位图 表示磁盘的空闲状态。每位表示一个磁盘块的空闲状态,共需要 16384/32 = 512字 = 512×4字节 = 2KB,正好可放在系统提供的内存中。
2)采用 C-SCAN 调度算法,访问磁道的顺序和移动的磁道数见下表。
| 被访问的下一个磁道号 | 移动距离(磁道数) |
|---|---|
| 120 | 20 |
| 30 | 90 |
| 50 | 20 |
| 90 | 40 |
移动的磁道数为 20+90+20+40 = 170,故总的移动磁道时间为 170ms。由于转速为 6000rpm,则平均旋转延迟为 5ms,总的旋转延迟时间 = 20ms。由于转速为 6000rpm,则读取一个磁道上一个扇区的平均读取时间为 0.1ms,总的读取扇区的时间为 0.4ms。综上,读取上述磁道上 所有扇区所花的总时间为 190.4ms。
3)采用 FCFS 调度策略更高效。因为 Flash 半导体存储器的物理结构不需要考虑寻道时间和旋转延迟,可直接按 I/O 请求的先后顺序服务。