资源描述:
《freebsd磁盘标签实例分析》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、FreeBSD磁盘标签实例分析 图2.31为一个FreeBSD的磁盘标签,这个FreeBSD类型DOS分区起始于磁盘的63号扇区,该磁盘标签位于该FreeBSD类型DOS分区的1号扇区,也就是磁盘的64号扇区。 图2.31 FreeBSD磁盘标签 (1)具体分析 1) 0x00~0x03:4个字节,BSD磁盘标签签名57455682,可以通过搜索扇区内偏移0字节处的此十六进制值寻找磁盘标签在磁盘上的位置。另外,我们还可以看到,扇区偏移0x84~0x87字节处也有一个同样的签名标志,也可以通过搜索扇区偏移122字节处的此值定位磁盘标签。 2) 0x08~0x17:16个字节,用
2、来存放驱动器类型名,也就是该BSD类型DOS分区的片名,此处的名字是ad0s1,通过这个名字我们可以得知这是一个FreeBSD类型的DOS分区,它是磁盘上的第一个分区(片)。 3) 0x84~0x87:签名57455682,与0x00字节处的值相同。 4) 0x8A~0x8B:2个字节,该磁盘标签的分区表可容纳的分区表项个数,此处的值为8(0x0008),即分区表最多可以容纳8个分区表项,我们可以看到分区表的前6个表项已经被使用。由于2号表项通常用于描述整个BSD类型DOS分区,所以真正的BSD分区只有5个。 5) 0x8C~0x8F:4个字节,引导区域最大字节数,此处的值为8
3、192(0x2000),即16个扇区。 6) 0x94~0x113:分区表区域,可以容纳8个分区表项,每个表项大小为16个字节,共128个字节。 现在,我们来分析一下第一个表项(0号表项),以该表项的起始位置为相对偏移0: u 0x00~0x03:4个字节,第一个分区大小扇区数,此处的值为1048576(0x100000)。 u 0x04~0x07:4个字节,第一个分区起始扇区号,此处的值为63(0x3F)。 u 注意,这个位置是相对于整个磁盘的0号扇区而言的,而并不是相对于FreeBSD类型DOS分区的起始扇区而言的。 u 0x08~0x0B:4个字
4、节,片段大小字节数,此处的值为2048(0x0800),即4个扇区。 u 0x0C~0x0C:1个字节,分区类型,此处的值为7(0x07),说明第一个分区是一个4.2BSDfastfilesystem(FFS)类型分区。 u 0x0D~0x0D:1个字节,每块片段数,此处的值为8(0x08),即每个块由8个片段组成,因为片段大小为4个扇区,所以块大小为32个扇区。 (2)其它几个分区表项的分析结果 1) 由1号表项可以得知,第二个分区大小为997008个扇区,起始于1048639号扇区,这是一个交换分区(类型值为1)。 2) 2号表项用来描述整个FreeBSD类型
5、DOS分区,大小为16776522个扇区,起始于63号扇区。 3) 由3号表项得知,第3个分区大小为2594816个扇区,起始于2045647号扇区,是一个4.2BSDfastfilesystem(FFS)类型分区。 4) 由4号表项得知,第4个分区大小为1048576个扇区,起始于4640463号扇区,是一个4.2BSDfastfilesystem(FFS)类型分区。 5) 由5号表项得知,第5个分区大小为11087546个扇区,起始于5689039号扇区,是一个4.2BSDfastfilesystem(FFS)类型分区。 为了查看方便,我们将分区表信息进行列表,如表2.1
6、1所示。 表2.11 分区表信息表项分区大小扇区数分区起始扇区号分区类型(十六进制)01,048,576 (0x00100000)63 (0x0000003F)07―4.2BSDfastfilesystem(FFS)1997,008 (0x000F3690)1,048,639 (0x0010003F)01-交换分区216,776,522 (0x00FFFD4A)63 (0x0000003F)整个FreeBSD类型DOS分区32,594,816 (0x00279800)2,045,647 (0x001F36CF)07―4.2BSDfastfilesystem(FFS)41,
7、048,576 (0x00100000)4,640,463 (0x0046CECF)07―4.2BSDfastfilesystem(FFS)511,087,546 (0x00A92EBA)5,689,039 (0x0056CECF)07―4.2BSDfastfilesystem(FFS)60(0x00000000)0(0x00000000)0070(0x00000000)0(0x00000000)00——感谢阅读