系统引导过程及硬盘分区结构_第1页
系统引导过程及硬盘分区结构_第2页
系统引导过程及硬盘分区结构_第3页
系统引导过程及硬盘分区结构_第4页
系统引导过程及硬盘分区结构_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、、系统引导过程简介 系统引导过程主要由以下几个步骤组成(以硬盘启动为例)1、开机;2、 BIOS 加电自检(POST-Power On Self Test),内存地址为 0fff:0000;3、 将硬盘第一个扇区(0头0道1扇区,也就是Boot Sector)读入内存地址0000:7c00处;4、检查(WORD)0000:7dfe是否等于0 xaa55.若不等于则转去尝试其他介质;如果没有其他启动 介质,则显示”No ROM BASIC”,然后死机;5、跳转到0000:7c00处执行MBR中的程序;6、MBR先将自己复制到0000:0600处,然后继续执行;7、在主分区表中搜索标志为活动的分区

2、.如果发现没有活动分区或者不止一个活动分区,则停止;8、将活动分区的第一个扇区读入内存地址0000:7c00处;9、 检查(WORD)0000:7dfe 是否等于 0 xaa55,若不等于则显示 “Missing Operating System”,然 后停止,或尝试软盘启动;10、跳转到0000:7c00处继续执行特定系统的启动程序;11、启动系统.以上步骤中(2),(3),(4),(5)步由BIOS的引导程序完成;(6),(7),(,(9),(10)步由MBR中的引导程序 完成.一般多系统引导程序(如Smart Boot Manager, BootStar, PQBoot等)都是将标准主引

3、导记录替 换成自己的引导程序,在运行系统启动程序之前让用户选择想要启动的分区.而某些系统自带的 多系统引导程序(如LILO,NT Loader等)则可以将自己的引导程序放在系统所处分区的第一个扇 区中,在Linux中即为两个扇区的SuperBlock.注:以上步骤中使用的是标准的MBR,多系统引导程序的引导过程与此不同.二、硬盘结构及参数3D 参数(Disk Geometry):CHS(Cylinder/Head/Sector) C-Cylinder 柱面数表示硬盘每面盘片上有 几条磁道,最大为1024(用10个二进制位存储);H-Head磁头数表示硬盘总共有几个磁头,也就是 几面盘片,最大为

4、256(用8个二进制位存储);S-Sector扇区数表示每条磁道上有几个扇区,最大为 63(用6个二进制位存储).1、引导扇区Boot Sector 组成Boot Sector 也就是硬盘的第一个扇区,它由 MBR(Master Boot Record), DPT(Disk Partition Table)和Boot Record ID三部分组成.MBR又称为主引导记录,占用Boot Sector的前446个 字节(00 x1BD),存放系统主引导程序(它负责从活动分区中装载并且运行系统引导程序).DPT即 主分区表占用64个字节(0 x1BE0 x1FD),记录磁盘的基本分区信息.主分区表分

5、为四个分区项,每 项16个字节,分别记录每个主分区的信息(因此最多可以有四个主分区).Boot Record ID即引导 区标记占用两个字节(0 x1FE0 x1FF),对于合法引导区,它等于0 xaa55,这是判别引导区是否合法 的标志).Boot Secor具体结构如图:000001BD01BE01CD01CE01DD01DE01ED01EE01FDIvhster Boot Rjec ord主躯跻翎宇节J分区信息1(16字节)分区信息阳自字节)分区信息3字节)分区信息理脩字节)01 Fe01FF55aa2、分区表结构简介分区表由四个分区项构成,每一项结构如下:BYTE State:分区状态

6、,0=未激活,0 x80=激活(注意此项);BYTE StartHead:分区起始磁头号;WORD StartSC:分区起始扇区和柱面号,底字节的底6位为扇区号,高2位为柱面号的第9,10位, 高字节为柱面号的低8位;BYTE Type:分区类型,如0 x0B=FAT32,0 x83=Linux等,00表示此项未用;BYTE EndHead:分区结束磁头号;WORD EndSC:分区结束扇区和柱面号,定义同前;DWORD Relative:在线性寻址方式下的分区相对扇区地址(对于基本分区即为绝对地址);DWORD Sectors:分区大小(总扇区数).在DOS或Windows系统下,基本分区必

7、须以柱面为单位划分(Sectors*Heads个扇区),如对于CHS 为 764/256/63 的硬盘,分区的最小尺寸为 256*63*512/1048576=7.875MB.由于硬盘的第一个扇区已经被引导扇区占用,所以一般来说,硬盘的第一个磁道(0头0道)的其余 62个扇区是不会被分区占用的.某些分区软件甚至将第一个柱面全部空出来.扩展分区结构如图:主i,展分区扩展:分E表剧Z项渔项N谡辑盘1(同沏临5)扩展分区2T扩展/ 项 1::泥项9-逻辑盘 英板血蝴)扩展分区3!扩展分区表渔项刽Z项9以上内容是一些概念性的说明,用我的简单的语言简化描述如下(只针对新手,不必计较是否严 谨准确)系统启

8、动过程是:加电先运行BIOS,BIOS随后把控制权交给MBR,MBR决定从哪个分区上 继续引导。引导分区的首扇区可能是另一个引导程序,这个程序可以更进一步决定如何引导系统 并且引导。通常我们只用Windows的时候,MBR按照标准的方式找到windows分区并且引导该分区将控 制权交给NTLdr (不包含win98及更早的windows,那时候的系统不用ntldr), NTLdr来引导 windowso如果你多个windows共存安装,安装程序会自动在ntldr配置中增加引导项。(建议第一个分区使用FAT32,可安装DOS/Windows各版本,不建议使用NTFS格式分区, 原因是一但系统出问

9、题NTFS的读写限制远比FAT32多,不利于解决问题)如果我们多系统共存安装,每一个操作系统都可能会安装引导程序。常见的是linux的GRUB, 其他系统概念上一样,都有自己的类似的引导程序,windows是ntldr。不同的是,安装windows 时windows总是/并且不提示、没有其他选择地覆盖MBR并将自己的分区设置成活动分区用 ntldr启动。一般linux或者bsd等系统可以选择安装引导程序到mbr /安装引导程序到自己分区的首扇区/不安装。基于以上原因,通常安装于MBR的引导程序只有一个,不同linux共存安装时GRUB可以选择 合并引导菜单的方式安装于MBR。所以,可以适当选择

10、安装顺序并且选择一个主引导程序。如 果你对以上内容有准确理解,那么安装顺序并不重要,只要最后选择一个你想用的引导程序并且 可以用这个引导程序配置引导所有系统就可以。通常我们可以选择的有两种方式:1。用ntldr引导。这种方式可以先安装windows在第一个主分区,然后在后面的主分区或逻辑 分区安装其他的linux/unix系统(注意BSD/Solaris等UNIX系统只能安装在主分区,而linux 可以安装在逻辑分区),安装的时候记住不要把引导程序安装到MBR。安装完成后用一些磁盘 工具(可读取磁盘特定扇区的二进制数据的)找到该系统的分区的首扇区并写成一个二进制文件(该起始扇区的位置可以用分区

11、工具例如PM查看到),把这个文件放到C:下,然后在boot.ini 中添加一项:Cxx文件(你获得的那个扇区文件名字)=你要引导的系统,即可。可用的磁 盘工具如dos下的diskgen等。在linux/unix下可用dd if=/dev/xxx of=来获取该文件,是等效 的方式用ntldr引导的时候,可能出现其他分区被设置成激活启动,这个时候可能会无法启动ntldr,看 不到ntldr的启动菜单而直接启动该分区的操作系统,这样就可能无法引导windows。这种情况 只要用分区工具重新激活windows的分区就可以。2。使用GRUB引导。这种方式一般选择一个linux最后安装,并且选择将GRU

12、B安装到MBR。 通常GRUB可以自动辨识并添加windows的引导。对于BSD/Solaris等系统可以手动添加启动 项。我的一般做法是使用SuSE10.0的GRUB来作主引导程序,因为SuSE有个图形化的很直观简 单的GRUB配置界面。通常在后来又重新安装系统的时候有可能覆盖掉MBR (主要是windows会必然地重新占领 MBR,linux/unix系统安装引导程序一般是可选择的),这种情况下,1)可以采用上面方式一 配置用ntldr引导;2)找一张linux的启动光盘,重新安装一下grub; 3)备份原来的MBR。我的实践实例:160G硬盘,安装5个操作系统,依次如下:Win2003

13、Server(主分区一)、FreeBSD6 (主分区 二)、Solaris 10 (主分区三)、Debian Linux和SuSE Linux (扩展分区里的逻辑分区,共用 swap,后安装SuSE并使用SuSE的GRUB),再后面的逻辑分区用FAT32格式作为各系统 可以共用的数据存储区。让您更深入的了解PC硬盘及分区结构一、了解硬盘的物理结构PC机所使用的硬盘驱动器,从物理结构上看,都是属于“温彻斯特(Winchester)硬盘,都具有“温彻 斯特硬盘的技术结构特点,即部件全部密封、内部磁片固定并高速旋转、磁片表面光滑、使用时磁头不与 磁片直接接触等等。至于详细的技术结构,是技术工程师们要

14、了解的范筹,挺复杂的。但对于我等使用者 来说,并不需要了解得太详细,知道一点物理结构的常识就行啦,因为如果硬盘物理损坏,我等作为使用 者,只有将硬盘拿去修,自己恐怕是处理不了的。磁片:硬盘由多个磁盘片叠在一起构成盘体。磁头:每张磁盘片的正反两面各有一个磁头。主轴:所有磁片都由主轴电机带动旋转。控制集成电路板:复杂!上面还ROM (内有软件系统)、Cache等。二、了解硬盘通用分区结构 硬盘分区被破坏,硬盘无法启动,分区丢失,为什么?那是因为硬盘的主引导扇区中的信息被破坏。 主引导扇区又是什么呢?我们先来了解一下:硬盘的第一个物理扇区即0磁头、0柱面、1扇区的512字节保存的信息,是硬盘中最主要

15、的主引 导扇区。计算机(PC机)上电后,主板基本输入输出系统(BIOS)检测完硬件后,首先要干的事就是读 硬盘的主引导扇区。可想而知,如主引导扇区被破坏,系统(BIOS)的任务受阻,PC机当然无法启动硬 盘中的操作系统1、主引导扇区组成硬盘主引导扇区512字节依次由4个部分组成(表1)主引导程序:是一段程序代码,起到引导系统的关键作用;出错信息存放区:引导出错时显示错误信息,主引导程序和出错信息共占446字节,使用各种不同 操作系统的分区工具软件或其它分区工具软件所写入的主引导纪录,该部分代码不相同但功能一样;主分区表:硬盘的4个主分区的分区信息都存放在这里,仅仅有64个字节,分为4个分区项(

16、表 2);结束标志55AA:主引导记录结束标志,仅为2个字节,是主引导记录是否合法的标志,没有它不 行。表1:主引导扇区主 引 导 扇 区主引导程序和出错信息(由FDISK或其它分区软件建立)446字节分区项116字节分区项216字节分区项316字节分区项416字节结束字55AA2字节表2:分区项(16字节)字节数含义及内容1引导标志。80表示活动分区,00表示非活动分区3本分区起始磁头号、扇区号、柱面号1文件系统标识。00为没有指定,01为FAT表项长12位,04表示FAT表项长16位, 05表示DOS的扩展分区。3本分区结束磁头号,扇区号,柱面号4本分区之前和扇区数4本分区总扇区数2、主分区表和扩展分区表上面说到在硬盘0磁头、0柱面、1扇区有64个字节就是硬盘的主分区表,共4个分区表项,每个 分区表项为16个字节。也就是说一个硬盘中最多只能有4个主分区,这是由PC机硬盘的这种通用分区结 构所决定的,这种通用分区结构不管你的电脑中使用的是哪种操作系统:MSDOS、PCDOS、DRDOS、 Windows95/98/ME、Windows NT/2000/XP、Linux、Unix、Novell 等等,都不能改变这种分区结构(苹果机 分区结构不在此列)。自从1985年12月微软公司发布MS-DOS3.20版以后,上述PC硬盘的分区结构增加了扩展分区的 功能,可以

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论