以下是引用不点在2004-2-16 16:31:32的发言:
不同之处在于头部.
GRLDR 只有一个扇区的 header, 而 GRUB.EXE 有 8 个扇区的 header. 其余的部分都相同, 是 pre_stage2 文件.
GRLDR 不是一个普通的 EXE 文件, 也不能看成是一个 .com 文件. 不能通过重新命名为 .exe 而运行它.
Dear TinyBit,
I am sorry to put forward so many questions to you.
But I want to speak from GNU Grub's perspective.
Its aim, may be I am wrong, is to provide a bootloader that can be used independant
of another bootloader, especially MS's bootloader.
Your project may not have this goal. But with further development, it is possible.
For instance, your GRUB.EXE relies on DOS system and your GRLDR relies on bootsector of an active NT Boot Partition.
To speed up your GRUB.EXE and go independent of DOS, I suggest you try the way of Syslinux or BootProg by Alexei A. Frounze at http://alexfru.chat.ru/epm.html
I.e. have an MBR that boots up the Boot Sector and have the Boot Sector that loads
up GRUB.EXE
Syslinux provides the MBR for FAT12/16 for loading a com/exe file
and
BootProg provides the Boot Sector for FAT12/16 that loads up a com/exe file.
Both claims that they can be used in FAT16 HDD.
So to make your project perfect; you may wish to try:
1. make an MBR - your BootGrub already?
2. make your bootsector - for reading in either your GRUB.EXE or your GRLDR
for FAT12/16/32/NT partition
For FAT12/16 partition, BootProg can provide you some source code to model on.
For FAT32/NT partition, it may be a bit time-consuming.

精华I

