1.理解硬盘
1-1 磁盘、服务器、机柜、机房
机械磁盘是计算机中唯⼀的⼀个机械设备
磁盘--- 外设
慢
容量⼤,价格便宜

1-2 磁盘物理结构

1-3 磁盘的存储结构

扇区:是磁盘存储数据的基本单位,512字节,块设备



如何定位⼀个扇区呢?
可以先去定位一个磁头然后确认磁头的时候再去决定要去访问那个磁道然后就能确定一个扇区
采用 CHS地位定址
⽂件 = 内容+属性 都是数据,⽆⾮就是占据那⼏个扇区的问题!能定位⼀个扇区了,能不能定位多个扇 区呢?
扇区是从磁盘读出和写⼊信息的最⼩单位,通常⼤⼩为 512 字节。
磁头(head)数:每个盘⽚⼀般有上下两⾯,分别对应1个磁头,共2个磁头
磁道(track)数:磁道是从盘⽚外圈往内圈编号0磁道,1磁道...,靠近主轴的同⼼圆⽤于停靠磁
头,不存储数据
柱⾯(cylinder)数:磁道构成柱⾯,数量上等同于磁道个数
扇区(sector)数:每个磁道都被切分成很多扇形区域,每道的扇区数量相同
圆盘(platter)数:就是盘⽚的数量
磁盘容量=磁头数 × 磁道(柱⾯)数 × 每道扇区数 × 每扇区字节数
细节:传动臂上的磁头是共进退的(这点⽐较重要,后⾯会说明)
柱⾯(cylinder),磁头(head),扇区(sector),显然可以定位数据了,这就是数据定位(寻址)⽅ 式之⼀,CHS寻址⽅式
📌 CHS寻址
对早期的磁盘⾮常有效,知道⽤哪个磁头,读取哪个柱⾯上的第⼏扇区就可以读到数据了。
但是CHS模式⽀持的硬盘容量有限,因为系统⽤8bit来存储磁头地址,⽤10bit来存储柱⾯地
址,⽤6bit来存储扇区地址,⽽⼀个扇区共有512Byte,这样使⽤CHS寻址⼀块硬盘最⼤容量
为256 * 1024 * 63 * 512B = 8064 MB(1MB = 1048576B)(若按1MB=1000000B来算就是
8.4GB
1-4 磁盘的逻辑结构
1-4-1 理解过程

磁带上⾯可以存储数据,我们可以把磁带“拉直”,形成线性结构

那么磁盘本质上虽然是硬质的,但是逻辑上我们可以把磁盘想象成为卷在⼀起的磁带,那么磁盘的逻 辑存储结构我们也可以类似于:

这样每⼀个扇区,就有了⼀个线性地址(其实就是数组下标),这种地址叫做LBA

2 文件系统概念
2-1 引入块概念
大家都知道一个扇区是512个字节但是操作系统在读取文件的时候不回去一个扇区一个扇区的去读取这样效率会太低了而这个时候操作系统会以块为单位一块一块的去读取而一个块就等于8个扇区也就是4kb
每个扇区都有lba这样的话每个块的地址我们也能算出来
知道LBA:块号 = LBA/8
知道块号:LAB=块号*8 + n. (n是块内第⼏个扇区)

2-2 引入分区概念
其实磁盘也可以被分成许多区的就比如我们日常生活中常见的windos中我们也给磁盘分成c盘和d盘,那个本质上就是分区,分区实质上说就是对磁盘的格式化。
柱⾯是分区的最⼩单位,我们可以利⽤参考柱⾯号码的⽅式来进⾏分区,其本质就是设置每个区的起 始柱⾯和结束柱⾯号码。 此时我们可以将硬盘上的柱⾯(分区)进⾏平铺,将其想象成⼀个⼤的平 ⾯,如下图所⽰

📌 注意:
柱⾯⼤⼩⼀致,扇区个位⼀致,那么其实只要知道每个分区的起始和结束柱⾯号,知道每
⼀个柱⾯多少个扇区,那么该分区多⼤,其实和解释LBA是多少也就清楚了.
2-3 引入inode概念
Inode(Index Node) 是类 Unix 文件系统(如 ext4、XFS)中用于描述 文件元数据的数据结构,其核心特性如下:
唯一标识:每个文件/目录对应一个唯一的 inode 编号(类似身份证号)。
非易失性:inode 信息持久化存储在硬盘中。
与文件名解耦:文件名只是 inode 的“别名”,删除文件实际上是删除 inode 与文件名的链接。
个典型的 inode 包含以下元数据(以 ext4 为例):
字段 描述 大小(字节) 文件类型 普通文件、目录、符号链接等 2 权限模式 rwx 权限(用户/组/其他) 2 所有者 UID 文件所属用户 ID 4 所属组 GID 文件所属组 ID 4 大小 文件实际字节数 8 时间戳 创建、修改、访问时间 12 链接计数 硬链接数量 4 数据块指针 直接/间接/二次间接指针(见第3节) 60 其他扩展属性 如 ACL、加密信息等 可变 注:不同文件系统的 inode 结构可能略有差异。