|
|
发表于 2005-4-3 17:00:57
|
显示全部楼层
分区表只能有4个主分区,你的2003中c盘占了一个hda1,扩展分区整体占了一个hda2,linux分区根文件系统占了一个hda3,swap占了一个hda4,这就正好四个主分区了,再装上的系统肯定不是主分区,因此不是活动分区,这样极容易搞坏系统,看看下面这段或许对你有帮助:
系统引导过程简介
系统引导过程主要由以下几个步骤组成(以硬盘启动为例)
(1) 开机;
(2) BIOS加电自检(POST---Power On Self Test),内存地址为0fff:0000;
(3) 将硬盘第一个扇区(0头0道1扇区,也就是Boot Sector)读入内存地址0000:7c00处;
(4) 检查(WORD)0000:7dfe是否等于0xaa55.若不等于则转去尝试其他介质;如果没有其他启动介质,则显示 ”No ROM BASIC” ,然后死机;
(5) 跳转到0000:7c00处执行MBR中的程序;
(6) MBR先将自己复制到0000:0600处,然后继续执行;
(7) 在主分区表中搜索标志为活动的分区.如果发现没有活动分区或者不止一个活动分区,则停止;
(8) 将活动分区的第一个扇区读入内存地址0000:7c00处;
(9) 检查(WORD)0000:7dfe是否等于0xaa55,若不等于则显示 “Missing Operating System”,然后停止,或尝试软盘启动;
(10) 跳转到0000:7c00处继续执行特定系统的启动程序;
(11) 启动系统.
以上步骤中(2),(3),(4),(5)步由BIOS的引导程序完成;(6),(7),(8),(9),(10)步由MBR中的引导程序完成.
一般多系统引导程序(如Smart Boot Manager, BootStar, PQBoot等)都是将标准主引导记录替换成自己的引导程序,在运行系统启动程序之前让用户选择想要启动的分区.而某些系统自带的多系统引导程序(如LILO,NT Loader等)则可以将自己的引导程序放在系统所处分区的第一个扇区中,在Linux中即为两个扇区的SuperBlock.
注:以上步骤中使用的是标准的MBR,多系统引导程序的引导过程与此不同.
硬盘结构
硬盘参数
3D参数(Disk Geometry):CHS(Cylinder/Head/Sector) C-Cylinder柱面数表示硬盘每面盘片上有几条磁道,最大为1024(用10个二进制位存储);H-Head磁头数表示硬盘总共有几个磁头,也就是几面盘片,最大为256(用8个二进制位存储);S-Sector扇区数表示每条磁道上有几个扇区,最大为63(用6个二进制位存储).
引导扇区
Boot Sector组成
Boot Sector也就是硬盘的第一个扇区,它由MBR(Master Boot Record), DPT(Disk Partition Table) 和 Boot Record ID三部分组成. MBR又称为主引导记录,占用Boot Sector的前446个字节(0~0x1BD),存放系统主引导程序(它负责从活动分区中装载并且运行系统引导程序). DPT即主分区表占用64个字节(0x1BE~0x1FD),记录磁盘的基本分区信息.主分区表分为四个分区项,每项16个字节,分别记录每个主分区的信息(因此最多可以有四个主分区). Boot Record ID即引导区标记占用两个字节(0x1FE~0x1FF),对于合法引导区,它等于0xaa55,这是判别引导区是否合法的标志). |
|