DragonOS/docs/kernel/boot/bootloader.md
login 9358ff0f6f
Add v0.1.3 changelog (#143)
* new: 0.1.3发行日志

* 新增输出指定时间范围内的贡献者名单的脚本

* 更新bootloader文档

* update: 简介文档

* new: 镜像站文档

* update: 功能特性文档
2023-01-08 15:06:52 +08:00

18 lines
959 B
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 引导加载程序
## 原理
  目前DragonOS支持Legacy BIOS以及UEFI两种方式进行启动引导。
  `head.S`的头部包含了Multiboot2引导头里面标志了一些Multiboot2相关的特定信息以及一些配置命令。
  在DragonOS的启动初期会存储由GRUB2传来的magic number以及multiboot2_boot_info_addr。当系统进入`Start_Kernel`函数之后将会把这两个信息保存到multiboot2驱动程序之中。信息的具体含义请参照Multiboot2 Specification进行理解该部分难度不大相信读者经过思考能理解其中的原理。
## 参考资料
- [Multiboot2 Specification](http://git.savannah.gnu.org/cgit/grub.git/tree/doc/multiboot.texi?h=multiboot2)
- [GNU GRUB Manual 2.06](https://www.gnu.org/software/grub/manual/grub/grub.html)
- [UEFI/Legacy启动 - yujianwu - DragonOS社区](https://bbs.dragonos.org/forum.php?mod=viewthread&tid=46)