没想到几天没来看这个贴,已经有不少回复了
to athlon64fx:
用GCC写bootloader不用这么麻烦的,我个人认为不能按照libc manual中推荐的方法去做,那个FAQ有误导的嫌疑
其实只要把整个代码段重新定义到boot区的开始位置就行了,没必要再搞一个boot段.否则是很麻烦的.
直接更改代码段定位的好处是C代码里可以完全省略__attribute__((section(".boot")))这样的语句,另外也可以从根本上避免原来代码段的影响(我猜就是你贴的那段红色HEX代码出现的原因)