磁盘结构与fat文件系统
fat 文件系统的组织结构
1. 软盘数据的逻辑存储
软盘无须低级格式化和分区操作,只需用format 命令做高级格式化即可。经过格式化操作之
后,系统将在软磁盘上建立以下的数据结构:
(1) 引导记录(dbr):位于0 面0 道1 扇区,说明磁盘结构信息。
(2) 文件分配表(fat):用于记录磁盘空间的分配情况,指示硬盘数据信息存
放的柱面及扇区的信息指针。其表项可以是以下四种表示方式之一:
a.一个数字,代表指向另一个簇的指针。
b.数字0,表示一个未使用的簇
c.一个坏扇区标记
d.文件结束标记符eof
(3) 文件根目录表fdt:一个指示以存入数据信息的索引。记录磁盘上存储文
件的大小,位置,日期和时间等数据。
(4) 数据区:存放数据信息。
2. 硬盘中的数据组织
刚刚从厂商处购来的新硬盘既无任何数据,也不能写入任何数据,必须先进行低级格
式化,fdisk 分区,format 高级格式化后方可使用。对硬盘的这一系列初始化工作,称之为
硬盘准备。过程如下:
低级格式化---------------fdisk 分区-------------------format 高级格式化
(1)低级格式化:对硬盘划分磁道和扇区,在扇区的地址域上标注地址信息,并剔出坏磁
道。
(2)fdisk:允许整个物理硬盘在逻辑上划分成多个分区(最多4 个),以实现多个操作系
统共享硬盘空间。如果将整个物理盘全部划归dos/windows 管理,则fdisk 分区的作用是将一
个物理盘划分一个主分区和一个扩展分区,然后再将扩展分区划分成一个或多个逻辑盘。在
硬盘上建立分区表的同时,fdisk 把主引导记录mbr 写到硬盘的主引导记录(柱面0,磁头0,
扇区1),并激活一个用户指定的分区。
(3)format:在dos 分区空间划分逻辑扇区,生成dos 引导扇区(即逻辑0 扇区)dbr,文件
分配表fat 和根文件目录表fdt。
硬盘在dos/windows 的管理下,数据信息由mbr,dbr,fat,fdt 和数据区5
个部分组成。与软盘的数据结构相比较,硬盘多了一个数据区mbr(master bootrecord)。
mbr 称为硬盘主引导记录。它是由fdisk 建立在硬盘柱面0,磁头0,扇区1 的硬盘引导记录数
据区,用于硬盘启动时将系统控制权转给用户指定的,并在分区表中登记了的某个操作系统
区。
mbr dbr fat1 fat2 根目录 数据区
mbr 位于0 柱,0 头,1 扇区 dbr 从逻辑0 扇区开始
fat1 从逻辑1 扇区开始
硬盘fat32 文件系统的数据组织结构:
mbr dbr dbr 副本 保留扇区 fat1 fat2 根目录fdt 数据区
mbr 位于0 柱,0 头,1 扇区 dbr 从逻辑0 扇区开始
dbr 副本从逻辑6 扇区开始 fat1 从逻辑32 扇区开始
硬盘的数据区结构与软盘相比较有两点主要区别:
(1) 多了一个独立于操作系统的mbr
(2) 硬盘的fat1,fat2 和根目录fdt 的大小及起止扇区并不固定,它于逻辑盘的容量有
关。
虽然硬盘的fat1,fat2 和根目录fdt 表的大小与起始扇区号和逻辑盘的容量有关。但是,根
目录fdt 的大小总为32 个扇区。;
二、硬盘主引导记录(dbr)及其结构
硬盘的0 柱面,0 磁头,1 扇区称为主引导扇区,fdisk 程序写到该扇区的内容称为主引导记录
(mbr)。该记录占用512 个字节,它用于硬盘启动时将系统控制权转给用户指定的,并在分
区表中登记了某个操作系统分区。
主引导记录记录磁盘最重要的结构信息。主引导记录是硬磁盘作分区时建立的(fdisk)。主
引导记录包括一小段执行代码(主引导代码)、磁盘特征和硬盘分区表。主引导记录(以及后
面介绍的引导扇区)结束的两个字节必须是引导自举标记0x55aa。
磁盘特征位于0x01b8, 指定磁盘操作系统。
软盘无主引导记录。软盘的第一个扇区是引导扇区。虽然每个硬盘包含一个主引导记录, 只
有其拥有活动主分区时才用主引导代码。
主引导代码实现下列功能:
* 扫描分区表查找活动分区;
* 寻找活动分区的起始扇区;
* 将活动分区的引导扇区读到内存;
* 执行引导扇区的运行代码。
* 如果主引导代码未完成这些功能, 系统显示下列错误信息:
* invalid partition table
* error loading operating system
* missing operating system
1. mbr 的读取
硬盘的引导记录(mbr)是不属于任何一个操作系统,也不能用操作系统提供的磁盘操作命
令来读取它。
2. mbr 的组成
一个扇区的硬盘主引导记录mbr 由4 个部分组成:
(1)主引导程序(偏移地址0000h~0088h),它负责从活动分区中装载并运行系统引导程
序。
(2)出错信息数据区偏移地址(0089~00e1 为出错信息,10e2h~10bd 全为0 字节)
(3)分区表(dpt,disk partition table).含4 个分区项偏移地址01beh~01fdh,每个
分区表项长16 个字节,共64 字节为分区项1,分区项2,分区项3,分区项4).其中,加下划线的16
100米±2mm高精度激光测距仪,附开发全流程
高清混合矩阵助力电力应急指挥中心建设
关于本田公司新款燃料电池车的性能分析
苏州同元发布亚洲唯一自主可控新一代数字化设计验证平台MWorks2018
智能照明在推动LED工业照明行业发展中的应用
磁盘结构与FAT文件系统
大神们发现了联想旗下摩托罗拉的新折叠屏手
喜报 | 瑞萨电子荣获2022 IIC全球电子成就奖双奖项
空气制水机设计的工作原理是怎样的
Mouser备货意法半导体NFC应用解决方案
上海将成为中国电信的首个5G试用城市
遥控开关应用
开创手机历史的摩托罗拉能靠折叠手机扭转市场局面吗?
光伏发电+储能系统,尝试搭建社区微电网
研发人员利用液晶弹性体设计了一种自动折叠机器人
Nao头灯升级回归——Nao+
紫光集团确认出售法国芯片商Linxens 具体细节尚在谈判
Apple Pencil 拆解:主板折叠,电池无法更换
GD32330C-START开发板试用体验:软件配置及程序烧写调试
iphone8什么时候上市?iphone8最新消息:iPhone8的黑科技汇总,十周年iPhone8值得期待