磁盘及文件系统管理详解
目前市场上主流的磁盘是机械式硬盘
u盘,光盘,软盘,硬盘,磁带
机械式硬盘
【硬盘内部由一个个同心圆组成】如下图:
硬盘内部所有盘片都固定在一根“轴”上,所以:所有盘面都是同步运动。如下图
硬盘这里面还有个读写的磁头,用来改变盘面中磁块的磁性变化。从而来存储0或1,
其中0代表磁块没有磁性,1代表磁块有磁性
在硬盘中说以磁盘都是双面可读写的,说以每一个盘面都有一个磁头,一个磁盘中就要两个磁头。每个磁头都悬浮在盘面上,距离盘面非常近几乎只有几微米的距离
图下为硬盘的外部结构:
盘面的结构如图下:
在盘面中有很多磁道,每个磁道由内而外每个磁道的周长都不一样。因此外面的磁道要比里面的磁道能存储更多的数据。为了便于数据管理,在每个磁盘上磁道的空间是划分一个一个的扇区即:Secto
Secto(扇区):用来存储用户的数据并且包含自己扇区的编号已经扇区的位置等信息。
【文章福利】小编推荐自己的Linux内核技术交流群: 【977878001】整理一些个人觉得比较好得学习书籍、视频资料共享在群文件里面,有需要的可以自行添加哦!!!前100进群领取,额外赠送一份 价值699的内核资料包(含视频教程、电子书、实战项目及代码)
内核资料直通车:Linux内核源码技术学习路线+视频教程代码资料
学习直通车:Linux内核源码/内存调优/文件系统/进程管理/设备驱动/网络协议栈
所以对于一个原本有512个字节的扇区可以就只有500个字节可以用来存放数据,还有12个字节是记录扇区自己的信息。这就 为什么我没通常购买的500G的硬盘实际上没有500G的原因。以及购买的16G的u盘也没有16G的原因。
在硬盘运作时,所有盘片的所有盘面都是同时工作的,为了提高存储速度,对于一个文件很有可能在每个盘面,都存储了文件的一部分。并且存储时是按照整个磁道(一个圆)来进行数据存储的
图上鼠标所指的位置,位于不同磁盘相同编号的磁道所组成的一个立体的圆叫做“柱面”(Cylinder)
【柱面(Cylinder)】:不同盘面上相同编号的磁道组成柱面
通常磁盘在使用时都要划分分区,如果不划分分区,就意味着整个磁盘只能存储一个“文件系统”。如果不划分分区,每一个分区都可以是一个独立的文件系统
【分区】:在磁盘中建立起来的逻辑边界
在磁盘刚出厂时,厂商会对磁盘做一次低级格式化:低级格式化就是用来划分磁道的,把整个磁盘按照磁盘的旋转速度,物理属性,等一些信息来划分好磁道,扇区等。但磁盘里面并没有任何分区。
【低级格式化】:用来划分磁道
【分区(Partition)】:把整个磁盘划分成多个不同的逻辑组成结构,每个组成结构里面可以创建不同的“文件系统”。所以分区是用来创建“文件系统”的
每一个磁盘都有个MBR(MasterBoot Record)或者(Main Boot Record)
【MB