- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
汇编编程实现多引导.pdf
汇编编程实现多引导
疯狂代码 http://CrazyC/ ĵ http:/CrazyC/assembler/Article31859.html
如果你是个计算机用户相信你定安装过操作系统当你用久了个操作系统你可能会安装个新操作系统但你往往希
望保留现在操作系统比如当你有了个windows98你可以在上面再安装windows2K或是windowsXP这是
WindowsNTloader可以认识比自己更早操作系统所以能够给你保留先前操作系统但是如果你现在已经拥有了
个windows2K或是windowsXP你要在硬盘上再装个WINDOWS98甚至些怀旧派人士想在上面安装个
DOS6.22此时又该如何办呢?你往往会用到第 3方软件Software比如Vcommunications.incCommander系列
PowerQuestCorporrationBootMagic等等都是很好选择这些软件Software将硬盘分区设置为两个或是两个以
上主分区(也就是我们所说双“C”盘或是多“C”盘)把区别操作系统安装到区别主分区通过激活区别分区来实
现多重引导其优点是安全稳定旦个操作系统瘫痪点不影响其他操作系统个人认为值得推荐
本文不是篇多操作系统实现经验介绍因此有关BootMagic等第 3方软件Software使用我就不再浪费篇幅来介绍
我要给大家分析是此类软件Software实现原理
要了解其实现原理首先你必须对硬盘总体结构有定了解如果你对其结构不了解可参照表1
表1:
名称备注
1主引导扇区(Masterbootsector)占用个扇区
2第个主分区引导扇区(Bootsector)占用个扇区
3第个主分区FAT区占用空间由磁盘大小和FAT类型来定
4第个分区根目录区存放分区根目录
5第个分区数据区用来存放各种数据
6…
7扩展分区表占用个扇区
8第个扩展分区引导扇区占用个扇区
9第个扩展分区FAT区占用空间由磁盘大小和FAT类型来定
10第个扩展分区根目录区存放分区根目录
11第个扩展分区数据区用来存放各种数据
12…
注意:该表以空间顺序进行描述,个硬盘允许最多 4个主分区和多个扩展分区
我们还需要了解主引导扇区(Masterbootsector)结构它是硬盘第个扇区,由主引导(MasterBootRecord简称
MBR)硬盘分区表(DiskPartitionTable简称DPT)和结束标识 3部分组成其结构如表2
表2:
在主引导扇区中位置名称备注
1偏移00H~1BDH主引导占446个字节但实际可能并未用满
2偏移1BEH~1FDH硬盘主分区表占64个字节每个分区项占16个字节,最多可有4个分区项:1BEH~1CDH分区项
11CEH~1DDH分区项21DBH~1EDH分区项31EFH~1FDH分区项4
3偏移1FEH~1FFH结束标识占2个字节用来判断分区表有效性
主引导我在此就不分析了需要注意是在主引导中有些出错信息些引导型病毒往往会覆盖这些信息来将自己嵌入
到主引导中去并将主引导开始几个字节改为条跳转指令通过观察主引导变化往往可以让我们看出自己电脑是否
有引导型病毒旦发现异常我们可以用FDISK/MBR命令来覆盖原有MBR结束标识两个字节总是55HAAH该标识
只是用于判断这个扇区是否是有效主引导扇区如果主引导发现没有这个结束标识将会认为操作系统丢失并显示
“MissingOperating”
我们最后要了解是硬盘分区表,多重引导软件Software般都是通过修改分区表中特定字节达到多重引导目,在硬盘
主引导区中,从偏移1BEH~1FDH64个字节存放是硬盘分区表其中最多包含4个分区项每个分区项由16个字节构
成,我们来看看每个分区项详细含义假设我们个分区占用16个字节被标为00H~0FH其结构如表3:
表3:
偏移含义
00H引导标识字节其值只能为00H或80H为00H时表示该分区不可引导为80H时表示该分区可用于引导
01H分区起始磁头号
02H其高2位为分区起始柱面号高位底6位为分区起始扇区号
03H分区起始柱面号低位
04H分区系统标志当该值为00H时表示此分区为不可识别系统;为04H时该分区为FAT16分区;为05H或0FH该
分区为扩展分区;为0B时该分区为FAT32分区;为83H时表示该分区为Linux分区,为07时该分区为NTFS分区
[Page]
05H分区结束磁头
文档评论(0)