最小的可引导内核示例是什么?

时间:2021-05-15 12:58:01

标签: kernel bios uefi

"Hello World" 程序可以看作是给定语言的最小用户空间程序示例,即

#include <stdio.h>
int main() {
   printf("Hello, World!");
   return 0;
}

对于 C。它的目的是展示如何编写可调用程序(main() 函数)和使用 printf() 进行一些文本打印所需的最小接口。

是否可以为 BIOS/EFI 可引导内核创建这样一个最小的“Hello World”示例?这样一个可启动的界面和可能的打印操作会是什么样子?

1 个答案:

答案 0 :(得分:1)

这是一个基于 EDK2 的 HelloWorld,可以从 EFI shell 提示符运行。

#include <Uefi.h>
#include <Library/UefiLib.h>
#include <Library/ShellCEntryLib.h>

INTN
EFIAPI
ShellAppMain( UINTN Argc, CHAR16 **Argv)
{
    Print(L"Hello World!\n");

    return(0);
}