1782 字
5 分钟
索引结点管理模式 — 知识点详解
索引结点管理模式 — 知识点详解
🎯 核心公式速查表
| 项目 | 公式 |
|---|---|
| 索引块地址数 | 地址数 = 物理块大小 ÷ 地址项大小 |
| 直接地址容量 | 直接块数 × 块大小 |
| 一级间接容量 | 一级索引项数 × (块大小/地址项大小) × 块大小 |
| 二级间接容量 | 二级索引项数 × (块大小/地址项大小)² × 块大小 |
| 三级间接容量 | 三级索引项数 × (块大小/地址项大小)³ × 块大小 |
一、基本概念
1.1 物理块大小
- 物理块:磁盘存储的基本单位
- 本题中:物理块大小 = 1KB = 1024 字节
1.2 地址项大小
- 地址项:存放物理块号的地方
- 本题中:每个地址项占 4 字节
1.3 每个索引块能存放的地址数
每个索引块的地址数 = 物理块大小 ÷ 地址项大小 = 1KB ÷ 4B = 1024B ÷ 4B = 256 个地址二、索引结点结构
题目中索引结点有 32KB 存储空间,结构如下:
| 索引项 | 类型 | 说明 |
|---|---|---|
| 0 - 4 | 直接地址索引 | 共 5 个,直接指向数据块 |
| 5 - 6 | 一级间接地址索引 | 共 2 个,指向一级索引块 |
| 7 | 二级间接地址索引 | 共 1 个,指向二级索引块 |
图示结构:
索引结点 (32KB)├── 0 → 数据块├── 1 → 数据块├── 2 → 数据块├── 3 → 数据块├── 4 → 数据块├── 5 → 一级索引块 → [256个地址] → 数据块├── 6 → 一级索引块 → [256个地址] → 数据块└── 7 → 二级索引块 → [256个地址] → 一级索引块 → [256个地址] → 数据块三、逻辑块号位置查找
3.1 逻辑块号范围划分
首先计算每种索引方式能覆盖的逻辑块号范围:
| 索引类型 | 索引项 | 逻辑块号范围 | 覆盖块数 |
|---|---|---|---|
| 直接地址 | 0-4 | 0 - 4 | 5 块 |
| 一级间接 | 5 | 5 - 260 | 256 块 |
| 一级间接 | 6 | 261 - 516 | 256 块 |
| 二级间接 | 7 | 517 - 66052 | 256×256=65536 块 |
3.2 例题解答
问题1:逻辑块号为 5 的物理块号在哪里?
分析:
- 逻辑块号 5 落在 第一个一级间接索引(索引项 5) 的范围内
- 范围:5 - 260
答案: 在索引结点的第 5 项(一级间接索引)所指向的一级索引块中, 位置 = 逻辑块号 - 直接索引块数 = 5 - 5 = 0 即:一级索引块的第 0 个地址项
问题2:逻辑块号为 261 的物理块号在哪里?
分析:
- 逻辑块号 261 落在 第二个一级间接索引(索引项 6) 的范围内
- 范围:261 - 516
计算:
基础块号 = 直接索引块数 + 第一个一级间接覆盖块数 = 5 + 256 = 261
位置 = 逻辑块号 - 基础块号 = 261 - 261 = 0答案: 在索引结点的第 6 项(一级间接索引)所指向的一级索引块中, 即:一级索引块的第 0 个地址项
四、最大文件大小计算
4.1 分步计算
(1)直接地址索引部分
直接地址块数 = 5 块直接地址容量 = 5 × 1KB = 5KB(2)一级间接地址索引部分
每个一级索引块地址数 = 256 个一级间接索引项数 = 2 个(索引项 5、6)一级间接总块数 = 2 × 256 = 512 块一级间接容量 = 512 × 1KB = 512KB(3)二级间接地址索引部分
二级索引块地址数 = 256 个每个二级索引指向的一级索引块数 = 256 个二级间接总块数 = 256 × 256 = 65536 块二级间接容量 = 65536 × 1KB = 65536KB = 64MB4.2 总计
最大文件大小 = 直接地址 + 一级间接 + 二级间接 = 5KB + 512KB + 65536KB = 66053KB = 64.51MB(约)或者精确计算:
66053 KB ÷ 1024 = 64.5048828125 MB五、通用解题步骤
步骤1:计算每个索引块能存放的地址数
地址数 = 物理块大小 ÷ 地址项大小步骤2:划分逻辑块号范围
- 直接地址:0 ~ (直接块数-1)- 一级间接1:直接块数 ~ (直接块数+地址数-1)- 一级间接2:(直接块数+地址数) ~ (直接块数+2×地址数-1)- 二级间接:(直接块数+2×地址数) ~ ...步骤3:定位逻辑块号
判断逻辑块号落在哪个区间,然后计算在该区间内的偏移量步骤4:计算最大文件大小
分别计算各部分容量然后相加六、原题完整解答
题目回顾:
现有一个文件系统采用索引结点管理模式,物理块大小为 1KB。 每个索引结点有 32KB 的存储空间,每个地址项占 4 字节,磁盘索引块和磁盘数据块大小均为 1KB。 其中 0 - 4 用直接地址索引,5 - 6 用一级间接地址索引,7 用二级间接地址索引。
问题:
- 逻辑块号为 5 的物理块号在哪里?
- 逻辑块号为 261 的物理块号在哪里?
- 最大文件大小是多少?
完整解答:
(1)预备计算
每个索引块的地址数 = 1KB ÷ 4B = 256 个地址
(2)逻辑块号范围表
| 索引类型 | 索引项 | 逻辑块号范围 | 说明 |
|---|---|---|---|
| 直接地址 | 0-4 | 0 - 4 | 共 5 块 |
| 一级间接1 | 5 | 5 - 260 | 5 + 256 = 261 |
| 一级间接2 | 6 | 261 - 516 | 261 + 256 = 517 |
| 二级间接 | 7 | 517 - 66052 | 517 + 65536 = 66053 |
(3)问题1解答:逻辑块号 5
- 位置: 索引项 5(一级间接1)→ 索引块的第 0 个地址
- 计算: 5 - 5 = 0
(4)问题2解答:逻辑块号 261
- 位置: 索引项 6(一级间接2)→ 索引块的第 0 个地址
- 计算: 261 - (5 + 256) = 0
(5)问题3解答:最大文件大小
- 直接地址:5 × 1KB = 5KB
- 一级间接:2 × 256 × 1KB = 512KB
- 二级间接:1 × 256 × 256 × 1KB = 65536KB = 64MB
- 总计: 5KB + 512KB + 65536KB = 66053KB = 64.51MB
七、扩展练习
练习题1(基础)
如果物理块大小为 4KB,地址项占 4 字节,索引结点结构:
- 0-9:直接地址(10个)
- 10-11:一级间接(2个)
- 12:二级间接(1个)
问:
- 每个索引块能存放多少个地址?
- 逻辑块号 100 在哪里?
- 最大文件大小是多少?
练习题2(进阶)
某文件系统物理块大小 2KB,地址项 4 字节:
- 0-7:直接地址(8个)
- 8-9:一级间接(2个)
- 10:二级间接(1个)
- 11:三级间接(1个)
求最大文件大小。
八、练习题答案
练习题1答案
- 每个索引块地址数 = 4KB ÷ 4B = 1024 个
- 逻辑块号 100:在第10项(第一个一级间接)的第 100-10 = 90 个地址
- 最大文件大小:
- 直接:10 × 4KB = 40KB
- 一级间接:2 × 1024 × 4KB = 8192KB = 8MB
- 二级间接:1 × 1024 × 1024 × 4KB = 4194304KB = 4GB
- 总计:约 4GB + 8MB + 40KB
练习题2答案
- 地址数 = 2KB ÷ 4B = 512 个
- 直接:8 × 2KB = 16KB
- 一级间接:2 × 512 × 2KB = 2048KB = 2MB
- 二级间接:1 × 512 × 512 × 2KB = 524288KB = 512MB
- 三级间接:1 × 512 × 512 × 512 × 2KB = 268435456KB = 256GB
- 总计:约 256.5GB
九、常见陷阱与注意事项
⚠️ 注意1:单位换算
- KB 和 B 的换算:1KB = 1024B
- 不要混淆十进制和二进制
⚠️ 注意2:逻辑块号从0开始
- 第一个逻辑块号是 0,不是 1
- 计算偏移时要注意
⚠️ 注意3:区分”索引块”和”数据块”
- 索引块:存放地址的块
- 数据块:存放实际文件内容的块
- 计算文件大小时只算数据块,不算索引块
⚠️ 注意4:多级索引的层次
- 一级间接:索引结点 → 索引块 → 数据块
- 二级间接:索引结点 → 索引块 → 索引块 → 数据块
- 三级间接:多一层索引块
十、总结
索引结点管理模式是文件系统的重要考点,掌握以下几点即可:
✅ 记住:地址数 = 物理块大小 ÷ 地址项大小 ✅ 会画:索引结构示意图 ✅ 能算:逻辑块号位置和最大文件大小 ✅ 理解:多级索引的层次关系
希望这份详解对你有帮助!加油!
分享
如果这篇文章对你有帮助,欢迎分享给更多人!
索引结点管理模式 — 知识点详解
https://www.rumin.top/posts/索引结点管理模式_知识点详解/ 部分信息可能已经过时
相关文章 智能推荐
1
结构化设计中包含、扩展、泛化的含义
学习笔记 在结构化设计(尤其 UML 建模)中,这三种关系用于描述用例或类之间的交互与层次,核心区别在于依赖性质与复用逻辑。
2
UML知识点完整整理速查表
学习笔记 UML图分类、关系类型及记忆口诀完整整理速查表
3
软考中级软件设计师 · 数据库知识点
学习笔记 软考数据库知识点整理,包含事务日志、故障恢复、UNDO/REDO等核心考点,适用于考前冲刺快速回忆。
4
每日新闻汇总(2026年5月25日-26日)
新闻 2026年5月25日-26日重要新闻汇总,涵盖动漫、游戏、科技、电影、生活及时事等领域
5
每日新闻汇总 - 2026年5月27日
新闻 2026年5月27日重要新闻汇总,涵盖动漫、游戏、科技、电影、生活、军事、民生、时事等领域






