磁盘分区
扇区:磁盘的最小存储单位,512bytes
磁道:扇区组成的一个圆
柱面:所有盘面的同一个磁道
簇:相邻的扇区组合
磁盘的第一个扇区很重要,记录了硬盘主引导记录和分区表
- 硬盘主引导记录(MBR):466bytes
是电脑开机后访问硬盘时所必须要读取的首个扇区,它记录着硬盘本身的相关消息以及硬盘各个分区的大小及位置消息,是数据消息的重要入口。
由于近年来磁碟的容量不断扩大,造成读写上的一些困扰, 甚至有些大于2TB 以上的磁盘分区已经让某些操作系统无法存取。 因此后来又多了一个新的磁盘分区格式,称为GPT (GUID partition table)
操作系统无法支持2.2T 以上的磁盘!
MBR 仅有一个区块,若被破坏后,经常无法或很难救援。
MBR 內的存放引导加载程序的区块仅 446bytes,无法容纳更多的引导加载程序。
- 分区表:64bytes
四个分割区,分为主分区(3个)和扩展分区(1个),每个分割区16字节,是因为磁盘分区结构信息加起来共16字节
扩展分区不能格式化,在扩展分区的基础上又分了很多分区,所以由扩展分区分出来的就叫逻辑分区
我们的电脑在读完446个引导加载程序,会继续读64个
BIOS
BIOS是一个写入到主机板上的一个韧体,在开机的时候,电脑系统会主动执行的第一个程序
引导加载程序的功能:
开机菜单
载入内核文件
转交其他引导
MBR还可以安装在每个分区的启动扇区
每个分区都有自己的启动扇区(boot sector)
实际可开机的内核文件是放置到各分区内的
loader只能会认识自己的系统分区的可开机内核文件,以及其他的loader
loader可直接指向或者是间接将管理权转交给另一个引导程序
UEFI
UEFI:统一可扩展固件结构
99%的编码都是由C语言编写的
提供了文件系统的支持
UEFI的模块化设计
新硬件支持
UEFI已具备文件系统的支持,它能够直接读取FAT分区中的文件。
什么是文件系统?
简单说,文件系统是操作系统组织管理文件的一种方法,直白点说就是把硬盘上的数据以文件的形式呈现给用户。Fat32、NTFS都是常见的文件系统类型。
Linux磁盘与文件系统的管理
- 什么是格式化?
格式化分为低级格式化和高级格式化
低级格式化是使硬盘具有存储能力
我们平时所说的格式化是高级格式化
- 为什么要进行格式化?
因为每种操作系统的文件属性的权限并不相同,为了存放这些文件所需的数据,因此需要将分区进行格式化,以成为操作系统能够利用的文件系统格式。
每种操作系统能够使用的文件系统并不相同
- 文件系统是如何运行的?
1.superblock:记录此文件系统的整体信息,包括ionde/block的总量,使用量,剩余量,以及文件系统的格式与相关信息等
2.inode:记录文件的属性,一个文件占一个inode,同时记录此文件的数据所在的block号码
3.block:实际记录文件的内容
Ext2文件系统在格式化的时候基本上分为很多个区块群组
block 大小 1KB 2KB 4KB
最大单一文件限制 16GB 256GB 2TB
最大档案系统总容量 2TB 8TB 16TB
1.原则上,block 的大小与数量在格式化完就不能够再改变了(除非重新格式化);
2.每个block 内最多只能够放置一个文件的数据;
3.承上,如果文件大于block 的大小,则一个文件会占用多个block 数量;
4.承上,若文件小于block ,则该block 的剩余容量就不能够再被使用了(磁盘空间会浪费)。
每个inode 大小均固定为128 bytes (新的ext4 与xfs 可设定到256 bytes);
每个文件都仅会占用一个inode 而已;
承上,因此文件系统能够建立的文件数量与inode 的数量有关;
系统读取文件时需要先找到inode,并分析inode 所记录的权限与使用者是否符合,若符合才能够开始实际读取 block 的内容。