我正在编写内核;在写这么复杂的东西之前,我认为对内核、引导加载程序、寄存器、BIOS 等进行一些理论阅读不仅会有所帮助,而且很有必要。
这篇文章说(我引用):
The boot sector loader.
This loads the first 512-byte sector from the boot disk into RAM and jumps to it.
然后它继续说:
The first sector of a diskette can be loaded at address 0000:7C00.
因此,引导扇区加载程序将位于内存地址 0x7C00(如果我是对的)的软盘的 512 字节数据加载到 RAM 中;现在,我的问题是:
- 由于机器正在启动,RAM必须是空的,所以它加载在 RAM 的 0x0000 处的引导加载程序?
- (与此上下文无关)有没有办法获得 GRUB Legacy (v .9x) 引导加载程序的源代码解释?
- 最后,我应该阅读任何文章/书籍以熟悉内核等?
我有 6 年的编程经验,但他们都使用内核使之成为可能的系统上的高级语言。
任何帮助表示赞赏。谢谢!:)