Skip to content

2013年 408 操作系统 第 24 题

操作系统2013年选择题2分

题目

为支持 CD-ROM 中视频文件的快速随机播放,播放性能最好的文件数据块组织方式是( )。

错因

B

链式结构里每块靠指针指向下一块——要访问第 N 块必须从头逐链遍历,不支持随机访问。视频跳到第 30 分钟时如果用链式,要从第 1 块开始顺着链跳 30 分钟的块数才到,明显不行。把"链式连续"和"物理连续"混了:链式只是逻辑上有序,物理上块在磁盘上分散。

C

直接索引(每个 inode 直接保存所有数据块的指针)能做随机访问,但比连续结构慢:访问第 N 块要先读 inode 拿到第 N 个指针,再读数据块——多了一次索引查询的 I/O。CD-ROM 是只读介质且文件大小已知,连续结构既能跳着读又免去索引查询,更快。

D

多级索引(inode 直接 + 一级 + 二级间接)支持大文件,但访问开销最大——每多一级就多一次磁盘读。对于"随机播放"这种要快速跳转的场景,多级索引最不利。把"能存大文件"误以为是"播放快",是把容量优势和速度优势搞混了。

总解析

CD-ROM + 视频文件 + 快速随机播放,三个约束指向连续结构:

约束含义哪种结构最合适
CD-ROM 只读文件不会增长、不需要动态扩展连续结构没问题(缺点是不能扩,但只读不需要扩)
视频文件大文件,且按时间顺序访问为主连续结构顺序读最快(无寻道)
快速随机播放跳到某个时间点要快速定位连续结构:起址 + 块号偏移 → 直接算出物理位置,0 次索引查询

各结构对比

结构顺序访问随机访问是否需额外 I/O
连续最快最快(直接算偏移)0
链式顺着链走不支持(要遍历)
直接索引较快较快1(读 inode)
多级索引较快较慢2~3(多级索引块)

速记:随机访问的"零额外 I/O"只有连续结构能做到——给出文件起址 + 块大小,第 k 块的位置 = 起址 + k × 块大小,一次寻道就到。

CD-ROM 的只读特性正好规避了连续结构的弱点(不能扩展、需预知大小),让它成为视频文件的最优组织方式。

最终答案是 A

最后更新:

🎬 可视化演示
加载中...

提示:可在可视化区直接操作播放、步进、修改参数