linux文件系统

今天我们来聊一聊linux文件系统的具体细节

那什么是文件系统呢?

一.首先 我们要先来介绍一下文件系统

1.笼统的文件系统概念:一种把数据组织成文件和目录的存储方式,提供了基于文件的存取接口,并通过文件权限控制访问。

2.直观的文件系统概念: (一幅图就行了)

    1)目录项区 - 存放目录下文件的列表信息

    2)数据区   - 存放文件数据

    3)inode区(inode table) - 存放inode所包含的信息

其实 文件系统前面的文章中我们都是陆陆续续的接触的,只是今天我们总体的来介绍一下

我们来举个例子: 比如说 我现在 通过 find 命令找一个文件  那 它的过程就是 先是遍历目录项 (树型结构的),然后根据目录项中提供的inode号 ,根据inode号 去查找本文件系统的 inode结点信息(不同的文件系统的inode号是会重复的),最后通过 inode结点提供的信息 去 寻找存放数据的数据块 。

 

二.我们来介绍一下文件系统的接口(下一篇在详细讲一讲文件的IO细节)

这些函数都是比较常用的, 我就不一一介绍了,大家只需要查一些函数手册之类的 就可以 详细的了解 ,这里就是 给大家混个眼熟。

 

三.我们来介绍一下文件系统的缓存

怎么说呢 缓存机制 其实非常的常见, 无论是文件系统中的缓存  网卡中的缓存  还是 nginx中的缓存 还是 app应用程序提供的缓存  还是什么的,其实 都 一些相同的特点

比如  大家看这个黄色的箭头  如果 用户需要的 数据 在这个 文件系统缓冲区中(并没有 因为缓冲区 大小之类的 缘故 被 踢出去),后面就直接 把缓存中的数据 通过 这条线路 反馈给用户,不用在启动一次或者是 n次磁盘大大提高了效率

(有时候我们看小电影看第二次的时候 就加载的比较快,就是因为有缓存的缘故, 反之如果没有在缓存区中就要到磁盘去拿数据,就比较慢,我们看电影就容易产生哪种迫不及待,又无可奈何的心情,就很不爽 对不对)。

好把 这篇文章就 介绍到这里 后面还会陆续更新 很多有价值的东西

 

 

 

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值