ELF 按书上的操作来,在现代操作平台编译链接默认生成elf64 格式的文件, 很显然程序头位置发生变化,因为定义elf 结构的类型中有64位,所以我们需要将编译链接出32位格式的 gcc -m32 -c -o main.o main.c ld -m elf_i386 main.o -Ttext 0xc0001500 -e main -o kernel.bin 现在符合loader程序中设置的各种参数了。 程序成功在0xc00150d出执行死循环。