问题描述
我正在尝试构建一个最小的内核。但是我不确定如何将自定义引导加载程序中的功能加载到内核中。谁能解决这个问题?
解决方法
我正在尝试构建一个最小的内核。但是我不确定如何将自定义引导加载程序中的功能加载到内核中。谁能解决这个问题?
通常每个引导加载程序的代码都针对不同的环境,因此,使用内核中任何引导加载程序的代码都是没有道理的。
在少数情况下不适用;您可能会从引导加载程序向内核传递函数指针(可能作为内核入口点的参数,但也可能传递给内核的某种表或其他数据结构中)。
但是,即使有可能,也可以更轻松地将函数“剪切并粘贴”到内核代码中(或使用#include
或..),而不是在引导加载程序中调用代码。如果内核在引导加载程序完成工作后释放/重用引导加载程序消耗的内存,则尤其如此。