《鸟哥的linux私房菜》学习笔记 文件系统

我发现我看了Linux后对搞机还挺感兴趣

文件系统 File systems

wiki : 文件系统是数据组织方式,定义数据在磁盘上的保存、读取和更新方法

个人理解:文件系统就是数据在硬盘扇区内储存的规则,好让操作系统去读取相应的扇区内的数据。

Ext2

Ext2 是Linux支持的一种文件系统。

Ext2 讲分区分成若干个分组。每个分组里含有以下这些组成部分:

1.Super block
2.File system Description
3.block bitmap
4.inode bitmap
5.inode table
6.data block

为了了解这个东西,我们需要大致了解一些概念。

block

储存数据的真正位置,比如我们有一个文件里面写着 ‘to be a happy guy' , 那么这些文本信息就会保存在block中。当我们格式化成文件系统后,就会生成若干个block,并且都一一编号(UUid).另外在每个block大小一般是一样的。通常为1K,2K,4K.

inode

在Linux中每一个文件都只对应一个inode,它记录这文件的几乎全部信息(权限,修改时间,指有多少文件名指向这个inode)。最重要的是它记录正文件内容在哪些block中。

当系统要访问一个文件的时候,首先要有文件的inode,查看上面的权限,通过了在通过上面的 block 号码,去获得文件的内容。

回到那个分组

为什么要分组?

了解了 inode 和 block 我们知道分组好像不是太必要。但是当我们结合物理就明白,这是处理物理上inode和block在扇区上分布的一种结局方案。

data block

其实就是连续的blocks。这里需要一提的就是 一个文件最少占用1个block。 所以当有一堆小文件用大block去储存会存在浪费问题。但是大文件用小block去储存就会需要更多block数,inode 就需要记录更多的block号,这影响性能,所以,选择大小需要思考。

inode table

在Ext2中,inode只有128B,很小却需要储存很多信息。
我们来算一下,一个文件400M,每个Block4K,那么inode需要记录10万个Block号码??!!
Ext2的方法是使用空的Block来记录,如 inode 记录一个 Block ,这个Block不记录正真的数据而是记录Block号码,good。记过记录一个Block能记录256个block号码。好像不太够,那就256Block在用来储存Block号码,这就变成了指数级的变化了。
Ext2 中的 inode 记录直接block号码的有 12个,一个间接,一个双间接,一个三间接。

Super block

记录文件系统使用情况,block大小等基本信息。讲道理这个东西只需要一个,所以不是每个分组都有,多个Super block也是做备份用的。

File System Description

记录分组的开始block号码与技术block号码

block bitmap && inode bitmap

分别记录那么block是空的,那么 inode 是未使用的。

Ext3

Ext2 上添加了日志功能
ext2和ext3的格式完全相同,只是在ext3硬盘最后面有一部分空间用来存放Journal的记录。

Ext4

Ext3 的升级版本,相比与Ext3有很多 优点,其有比较好的兼容性,这个就意味着结构上不会有太大的改变。个人认为其结构上比较大的改变是对大文件的处理,其使用了extent概念,就是不会每个Block号码都做记录,只记录开始Block号,连续Block数等信息(思想是这样的,但没有这么简单)来记录大文件。

参考文献

Linux文件系统第一篇—从Ext2到Ext3再到Ext4 - 徐志强
文件系统的两种文件索引模式extent和blockmap

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,222评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,455评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,720评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,568评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,696评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,879评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,028评论 3 409
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,773评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,220评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,550评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,697评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,360评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,002评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,782评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,010评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,433评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,587评论 2 350

推荐阅读更多精彩内容