如何写一个boot loader?
akyca 2004-10-11 04:48:13 想写一个boot loader,能引导Linux和Windows就可以了。
lilo和grub的代码太多太多,看起来没有头绪。
又很多问题没有解决,。
1、对loader的位置有些模糊
loader的代码位置应该在0磁道,0磁头,1扇区,但在安装loader之前,这里存放的是内核的代码,对于Linux系统是bootsect.S。安装loader之后,这里是loader的代码,那么loader把bootsect.S的代码转移到哪里去了呢?
在loader中选中linux系统后,是否还是按照linux正常的启动顺序呢?(bootsect.S-->setup.S-->head.S)
2、loader需要加载并识别内核的能力。
这是否意味着loader需要从FAT32和ext2文件系统中读取内核代码。个人觉得一个简单的loader是不需要的,只要把指令从磁盘上读到内存的指定位置就可以了,而不用关心文件系统,这种想法正确吗?
谢谢大家,欢迎讨论