Appearance
题目
下列选项中,文件系统能为温彻斯特硬盘和固态硬盘提供的功能是( )。
错因
A
把"扇区"和"盘块"混为一谈。扇区(sector)是硬件出厂时由制造商划好的物理存储单元——HDD 在低级格式化(出厂前完成)时把磁道切成若干扇区,每扇区典型为 512B 或 4KB;SSD 由控制器把闪存阵列以"页/块"为粒度组织,"扇区"对外只是兼容假象。这一切都早于文件系统介入,文件系统只是接受扇区这个事实,无法去"划分"它。
C
把"磁盘调度算法降低寻道时间"误归到文件系统。寻道时间是 HDD 物理特性——磁头从一个磁道移到另一个磁道的耗时;SSD 根本没有寻道时间(无机械运动)。所以"为两种盘都提供降低寻道"在 SSD 这一端就不成立。即使只看 HDD,磁盘调度(SCAN、电梯算法)通常归属 OS 的 I/O 子系统而不是文件系统层。两个层面都对不上。
D
把"均衡磨损"误归给文件系统。磨损均衡(wear leveling)是 SSD 控制器内部的 FTL(闪存转换层)做的事——FTL 把逻辑块号映射到不同的物理闪存块,把写入分散开避免某些块先寿终正寝。这件事对操作系统是透明的,文件系统看到的永远只是"逻辑块"。HDD 不存在磨损均衡这个概念。所以这项既不属于文件系统,又只对 SSD 有意义,两边都不沾。
总解析
判定原则:题目要找文件系统同时为 HDD 和 SSD 都能提供的功能——意味着这个功能必须与硬件类型无关,是文件系统层的逻辑工作。
逐项分析:
| 选项 | 功能 | 由谁负责 | 对 HDD 是否提供 | 对 SSD 是否提供 |
|---|---|---|---|---|
| A 划分扇区 | 物理存储单元划分 | 硬件(HDD 低级格式化、SSD 控制器) | ✗ | ✗ |
| B 确定盘块大小 | 文件系统的逻辑分配单位 | 文件系统(格式化时设定) | ✓ | ✓ |
| C 降低寻道时间 | 减少磁头机械移动耗时 | I/O 调度(且 SSD 不存在寻道) | △(部分) | ✗ |
| D 实现均衡磨损 | 把写入分散到不同闪存块 | SSD 控制器 FTL(且 HDD 不需要) | ✗ | ✗ |
B 为什么是正确答案:
盘块(block)是文件系统的逻辑分配单位——文件系统把若干个连续扇区合并成一个"块"作为最小分配粒度。比如 ext4 默认块大小是 4KB(对应 8 个 512B 扇区或 1 个 4KB 扇区),格式化时(mkfs.ext4 -b 4096)由用户/管理员选定。
这件事完全独立于硬件:
- 同一块 HDD 可以格式化成块大小 1KB / 2KB / 4KB / 8KB 任选其一
- 同一块 SSD 同样可选——文件系统并不"知道"也不"需要知道"自己跑在 HDD 还是 SSD 上
所以"确定盘块大小"是文件系统层的职责,对 HDD/SSD 一视同仁。
易混点:扇区 vs 盘块
| 概念 | 谁定的 | 何时定 | 典型大小 |
|---|---|---|---|
| 扇区(sector) | 硬件 | 出厂 / 低级格式化 | 512B(旧)、4KB(新) |
| 盘块(block) | 文件系统 | 高级格式化 | 1KB ~ 64KB(4KB 最常见) |
题目故意把 A "划分扇区" 和 B "确定盘块大小" 放一起就是考这个区分——前者硬件做,后者文件系统做。
最终答案是 B。