问题标签 [multiboot]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
27 浏览

assembly - 在用 NASM 编写的简单内核中启用分页时遇到问题

我正在编写一个基本内核来学习并且在启用分页时遇到了困难,因此我可以在长模式下工作。

为了简单起见,我精简了我的代码。

boot.asm

header.asm

multiboot2.inc

_start,mov word [0xb8000], 0x0247似乎永远无法到达。

感谢所有帮助!

我使用 CMake,但为读者整理了一个快速脚本:

以上假设你有一个grub.cfgin iso/boot/grub。我的看起来像:

并且linker.ld

然后在 QEmu 中运行:qemu-system-x86_64 -cdrom dist/kernel.iso.

这是我的构建环境的 Dockerfile:

更新#1:

我注意到检查 Multiboot2 失败: