假定一个索引结点为128字节,指针为4个字节,而状态信息占68个字节,且每块大小为8kB...

背景:今天在考试的时候忘记,乱写一通后,考后重新学习
问题如图:
在这里插入图片描述
分析:
前提知识:
索引节点,简称为 inode,用来记录文件的元数据,比如 inode 编号、文件大小、访问
权限、修改日期、数据的位置等。索引节点和文件一一对应,它跟文件内容一样,都会
被持久化存储到磁盘中。所以记住,索引节点同样占用磁盘空间

由于索引结点为128字节,指针为4个字节,而状态信息占68个字节,且每块大小为8kB

用于指针的空间大小为:
索引节点字节数-状态信息字节数=60字节

一次间接指针、二次间接指针和三次间接指针将占用索引节点中的三个指针项,
因此直接指针项数为: 60/4-3=12(个)

“且每块大小为8kB”
这里题目让我这钻牛角尖的人思考太多,其实说的就是指针指向的盘块大小为8KB,
8kB=8*1024B = 8192 B
(网上有一个博主写了这个同一个题的,但是没有解释作用且写错答案,具体就不说了)
奔主题:

 直接指针有12个,一个指向的盘块的字节数是8192B,
 所以 使用直接指针可以表示的文件大小是
 12 * 8192B =98304 B
 所以大小不超过98304字节的文件使用直接指针即可表示。
一次间接指针指向的磁盘块大小是8192B,
全是指针,所以一块磁盘块内的指针的指针项数量为8192B/4B=2048(个)
2048个指针指向的总磁盘大小是2048*8192B =16777216B = 16384KB=16MB
一次间接指针 表示的文件大小为16MB
一次间接指针提供了对附加16M字节信息的寻址能力。
一次间接指针指向文件存放的总磁盘大小是2048*8192B =16777216B = 16384KB=16MB
二次间接指针 可以提供的指针项为 16MB /4B  =4M个
4M个指针指向的总磁盘大小是4M*8192B = 32GB
二次间接指针 表示的文件大小为 4M*8192B = 32GB 
二次间接指针提供了对附加32G字节信息的寻址能力。
二次间接指针 指向文件存放的总磁盘大小是 4M*8192B = 32GB 
三次间接指针 可以提供的指针项为 32GB/4B=8G个
8G个指针指向的总磁盘大小是8G*8192B =  65536GB = 64TB
三次间接指针 表示的文件大小为8G*8192B =  65536GB = 64TB
三次间接指针提供了对附加64T字节信息的寻址能力。
  • 16
    点赞
  • 51
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 12
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

广大菜鸟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值