我一直在按照“Mike OS 指南”制作我自己的内核,并且我得到了它的工作。但后来我查阅了互联网上的许多指南,用于制作从编译对象NASM
加载函数的引导扇区。我尝试编译和链接各种 GCC 安装:main
C
x86_64-pc-linux-
arm-uclinux-elf-
arm-agb-elf-
arm-elf-
arm-apple-darwin10-
powerpc-apple-darwin10-
i686-apple-darwin10-
i586-pc-linux-
i386-elf-
一旦我像使用MikeOS
引导程序一样将它们放到软盘上,它们都会失败。我在http://www.osdever.net/上尝试过各种教程,就像这里的教程一样,我也尝试过http://wiki.osdev.org/Bare_Bones,但是在 Mac 上编译时没有任何效果,但是我还没有厌倦真正的 Linux 机器。但我想知道如何在组装调用C
函数时获得引导程序,并将它们放在一个工作内核文件中,然后将其加载到软盘文件上,然后像MikeOS
教程中一样加载到 ISO 上。或者我应该只制作kernel.bin
并加载它syslinux
? 谁能给我一个关于如何使这一切在 Mac 开发环境中工作的提示?我通过 macports 和 homebrew 收费,所以这会有所帮助。有人先后做过吗?
编辑 到目前为止,这是我的引导区。
我只想知道如何从 跳转到一个extern
函数C
并链接它。