QEMU无法完整加载kernel.img内核数据的问题求助
QEMU下自制Bootloader加载ELF内核段失败的解决方法求助
问题概述
我在QEMU中运行自制的Bootloader程序,该Bootloader负责将sysloader和内核数据读取到内存0x8000地址处。通过GDB调试发现:
- sysloader已成功加载到0x8000位置
- 紧随其后的ELF段数据未能正确加载到0x8600位置,该地址及之后的内存区域全为0
我已用xxd工具检查kernel.img,确认镜像中存在对应的ELF数据;且该镜像在Bochs模拟器中可完整加载所有数据,无异常情况。
相关代码与运行命令
bootloader.S 代码
# 此处粘贴bootloader.S的具体代码内容
Makefile 代码
# 此处粘贴Makefile的具体代码内容
当前使用的QEMU启动命令
qemu-system-x86_64 -drive file=kernel.img,index=0,media=disk,format=raw -s -S
现寻求让QEMU正确运行kernel.img的可行方法。
内容的提问来源于stack exchange,提问作者m123
相关产品推荐
相关产品推荐

