每次总想写点东西,但又懒得打字。先写一下MBR分区表的分析,等有空再写一下构建方法(也就是分区软件的原理)以及GPT分区表的分析与构建,我就不写MBR的定义什么的百科上都有的东西了,来读这篇文章,MBR分区表是什么都不清楚的就出门左转吧。。。MBR分区表分为两种,一种有扩展分区,一种没有。
没有扩展分区的比较简单,最多就支持4个分区,硬盘的第零扇区(也可以叫第一扇区,你开心就好),该扇区的名称也叫MBR(主引导记录),通常每个扇区512字节,这个扇区前446(0x1BE)字节是用来引导系统的代码,在Windows下主要是用来加载系统分区中的Leader程序,然后跳转到Leader去执行,这不是重点。重点是后面这512 - 446 = 66 字节,最后两个字节是0x55、0xAA固件用来判断MBR是否有效的标识。剩下447-510这64个字节就是分区表了,MBR分区表定义每项16个字节,64个字节也就是最多4项,每项的定义如下:
typedef struct tagMBR_PTITEM
{
/*00*/ U