为 VGA 文本控制台构建自定义内核

为 VGA 文本控制台构建自定义内核

我正在 Ubuntu 20.04 中创建一个自定义最小内核,该内核旨在从 x86 PC 平台上的 USB 记忆棒运行以测试显卡硬件。要求是在 VGA 文本模式下运行的 PC-BIOS(不是 UEFI)。

我在内核配置中关闭了“对帧缓冲设备的支持”。现在我遇到了以下情况:当我在 grub 中使用“set gfxpayload=text”时,我得到了一个“彩色虚拟设备 80x25 控制台”。但是,当我使用“vga=normal”时,我得到了一个“彩色 VGA+ 80x25”控制台,这正是我想要的。

但是,设置 vga=normal 已被弃用,而应改为设置 gfxpayload=text。我想我可以忽略该消息并使用 vga=normal,但这到底是怎么回事呢?

答案1

我想我找到了答案。vga=normal 在 Grub 2 下已弃用,但仍是有效的 Linux 内核命令参数。至于 PC-BIOS VGA 模式和 Grub 2,将“linux”命令行替换为“linux16”,将“initrd”替换为“initrd16”会产生很大的不同。确保更改这两行,您也可以使用例如 vga=ask。您仍然可以从 btrfs 卷上的 /boot 启动系统。

https://www.gnu.org/software/grub/manual/grub/html_node/linux16.html

相关内容