主引导扇区

主引导扇区位于整个硬盘的0磁头0柱面1扇区,包括硬盘主引导记录MBR(Master Boot Record)和分区表DPT(Disk Partition Table)。其中主引导记录的作用就是检查分区表是否正确以及确定哪个分区为引导分区,并在程序结束时把该分区的启动程序(也就是操作系统引导扇区)调入内存加以执行。

主引导扇区是硬盘的第一个物理扇区。它由两个部分组成:即主引导记录MBR(Main Boot Record)和硬盘分区表DPT(Disk Partition Table)。在总共512字节的主引导扇区中,其中MBR占446个字节(偏移0H~偏移1BDH),DPT占64个字节(偏移1BEH~偏移1FDH),最后两个字节“55H,AAH”(偏移1FEH~偏移1FFH)是分区的结束标志。

主引导记录中包含了硬盘的一系列参数和一段引导程序。引导程序主要是用来在系统硬件自检完后引导具有激活标志的分区上的操作系统。它执行到最后的是一条JMP指令跳到操作系统的引导程序去。这里往往是引导型病毒的注入点,也是各种多系统引导程序的注入点。但是由于引导程序本身完成的功能比较简单,所以我们可以完全地判断该引导程序的合法性(看JMP指令的合法性),因而也易于修复。象命令fdisk /mbr可以修复MBR和KV3000这类软件可以查杀任意类型的引导型病毒,就是这个原因。

接下来是64个字节的硬盘分区表,由4个16字节的分区信息表组成。每个信息表的结构如下:
第1字节:引导标志。若值为80H表示活动分区,若值为00H表示非活动分区。
第2、3、4字节:本分区的起始磁头号、扇区号、柱面号。其中:
磁头号——第2字节;
扇区号——第3字节的低6位;
柱面号——为第3字节高2位+第4字节8位。
第5字节:分区类型符。具体数值如下:
00H——表示该分区未用(即没有指定);
06H——FAT16基本分区;
0BH——FAT32基本分区;
05H——扩展分区;
07H——NTFS分区;
0FH——(LBA模式)扩展分区(83H为Linux分区等)。
第6、7、8字节:本分区的结束磁头号、扇区号、柱面号。其中:
磁头号——第6字节;
扇区号——第7字节的低6位;
柱面号——第7字节的高2位+第8字节。
第9、10、11、12字节:本分区之前已用了的扇区数。
第13、14、15、16字节:本分区的总扇区数。

最后的两个标志“55 AA”是分区表的结束标志,如果这两个标志被修改(有些病毒就会修改这两个标志),则系统引导时将报告找不到有效的分区表。

该页暂无评论

您可以在这里发布对本文的看法。

请输入您的评论,带 * 的为必填项目。

您的姓名: *
电子邮件: * 不会被泄露
您的网址:
图灵测试:
您的评论:

您可以在评论内容中使用如下XHTML标签:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

如果您需要输入代码,请用"&lt;"代替"<",用"&gt;"代替">"。
注意:"&lt;"和"&gt;"中的";"是不能省略的。