您的位置:首页 > 其它

硬盘分区、系统引导等基本问题的总结

2011-08-14 19:32 148 查看
转载自:http://damon007.blogbus.com/logs/75809017.html

一直以来对主分区、扩展分区、逻辑分区、活动分区、引导程序以及它们之间的联系都只是一知半解,没有好好去研究过,为了想熟悉下在linux下的开发环境,想装个linux,为此重新搜集下资料整理下我对上面一些概念的理解。

首先,必须认识硬盘主引导记录MBR(Master Boot Record),一块硬盘的命根:



从上图可知,MBR包括三部分:引导程序(Bootloader)、分区表(Partition table)和Mageic Number三部分组成。其中分区表大小为64个字节,而每个分区信息需要16个字节,因此,以前的硬盘只能记录四个分区的信息,这在现实应用中是远远不够的,所以就出现了扩展分区和逻辑分区的概念。所谓扩展分区其实就是把先前MBR分区表里面的其中一个,但是用来作为逻辑分区(D盘、E盘等分区)的索引,存放逻辑分区的分区信息。相对而言,另外三个分区就被叫为主分区(当然一盘硬盘不一定三个主分区都同时存在的,通常只是一个主分区,一个扩展分区,然后n个逻辑分区)。再说下活动分区吧,活动分区仅仅是在分区表中,16个字节的最前面含有80标志的分区信息所定义的分区。因为扩展分区的格式已经变了,所以活动分区必须是基本磁盘上的主要分区。一块硬盘可以有多个主分区,但每一个时刻只能有一个活动分区。
再来看下引导部分,系统系统启动阶段依赖于引导 Linux 系统上的硬件。在嵌入式平台中,当系统加电或重置时,会使用一个启动环境。当系统启动时就会调用MBR里面的引导程序。引导程序会搜索当前的活动分区,并把控制权交给这个分区的引导区(此处不是MBR,每个分区都包含有自己分区的引导信息)。至于引导程序通常有ntload和Grub,而GRUB就要强大得多了,它不但可以完成ntload的动作(即引导windows),而且可以引导linux、Mac
OS,solaris,free BSD等等,而且可以在出错时报错,并提供简单的用户交互(命令行)。
因此,可以理解是引导程序先引导到活动分区的引导信息,再由活动分区的引导信息引导到相应的操作系统。所以说通常情况下的双系统(如C盘为活动分区,第二个系统装到逻辑分区的d盘),是指第二个系统的引导信息保存在第一个系统(活动分区上的系统)所在的分区引导信息上。于是就可以理解下面两个例子:
1.假设一块硬盘上有A,B,C三个主分区,它们都是能被激活为活动分区的。

现假设A为激活状态,然后在A,B,C三个分区上分别装1个系统。则三个分区都是系统分区,但由于安装时,只有A是活动分区,则三个系统的引导信息都只会写入分区A的PBR中。结果是你会发现启动电脑后,引导菜单中你可以随意地选择进入哪个分区。当然,如果B或C只是一个扩展分区,但由于引导信息依旧是在A分区中,所以也可以通过启动菜单引导。这时候,如果吧B或C激活,变为活动分区,重启系统后你就会发现找不到启动分区的提示。因为引导信息只记录在A分区PBR中,B和C分区没有引导信息,因此无法进入任何一个分区。

如果在安装系统的时候,在相应分区安装系统前,都把该分区激活(即A分区装系统前激活A分区,B分区装系统前激活B分区,C分区装系统前激活C分区)。这样,A,B,C三个分区的系统的引导信息,就会单独记录到各自的分区中。结果表现为:当A为活动分区时,启动电脑,只会引导到A分区的系统;把B分区激活,则只会引导到B分区的系统,C分区激活就只引导至C分区的系统。三者是相互独立的,通过激活分区的方式来选择进入不同的系统。
2.问题:情况是这样的,本人电脑硬盘的主分区是xp系统,其他的分区都是逻辑分区,尝试用用PM磁盘管理也无法划分任何一个逻辑分区成为主分区,这样一来我是否就不能安装win7系统了吗?假设win7装在逻辑分区里,xp下的c盘是否会存在win7的任何信息和文件吗?现在求win7安装在盘逻辑分区方法以及所有信息文件都保存在win7分区下的方法。请高手指教。

回答:如果只安装一个系统,必须安装到活动的主分区里面,如果安装两个系统,第一个系统也必须安装到活动的主分区里,第二个系统可以安装到逻辑分区,因为第二个系统的引导信息保存在了第一个系统所在的活动的主分区里面,这时候,第二个系统对分区类型就没有要求了

以上纯属个人理解,欢迎指正。(完)
参考资料:

1.Linux引导过程内幕:http://www.ibm.com/developerworks/cn/linux/l-linuxboot/

2.维基百科-主引导扇区:http://zh.wikipedia.org/wiki/%E4%B8%BB%E5%BC%95%E5%AF%BC%E6%89%87%E5%8C%BA

3.关于分区的区别与详解:http://bbs.pcbeta.com/thread-749335-1-1.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: