多系统启动菜单的终结方案
前言
实现多重引导的工具很多,如System Commander,bootstar, Linux的lilo,和WindowsNT自带的OS Loader等等。其原理不外乎两种:一是修改MBR(Master Boot Record),在MBR的最后用jmp指令跳到自己的代码上来,从而控制引导过程;另一种方法是修改主分区里第一个扇区的引导代码,来实现多重引导。
MBR(即主引导记录),指的是硬盘的第0个柱面(cylinder)的第0磁道(track)的第0扇区(sector)。主分区,对于dos,windows等使用fat文件系统的操作系统来说,就是C盘; 在Linux下,则是指root文件系统所在的分区。
System Commander和lilo用的是修改MBR的方法;OS Loader则用后一种方法。修改MBR会造成严重的兼容问题,可能被某些杀毒软件误认为是病毒杀掉。我不喜欢乱改MBR,所以一般用OS Loader。下面以linux为例说说怎么利用OS Loader来实现多重引导:
一、安装OS Loader:
假如想在硬盘上同时装上Windows98,windowsNT和Redhat Linux,你可以先装Windows98,然后安装WindowsNT。WindowsNT装完以后,OS Loader也就自动装上了。如果这个顺序有错误,你需要用到附件里的程序和脚本,它可以为你安装上OS Loader,这时你的系统其实已经可以进行多重引导了。
二、获取各种OS的引导文件:
在OS Loader再加一些操作系统,需要在装完WindowsNT以后想办法把其它OS的引导代码读出来,存到文件里去,也就是要把主分区第一扇区的512字节读出来。在DOS下,这可以用debug或是norton diskedit来做,也可以自己写一个小程序来实现。
其实装完OS Loader以后系统就已经有了一个bootsect.dos,这个就是win9x的引导文件。下面用debug的方法通常不会用到。
debug
-R cx
cx 0000
200//设置读取长度CX为512字节
-L 100 2 0 1
顶(0)
踩(0)
- 最新评论