启动时切换到1024x768x24bpp(裸机操作系统)

问题描述 投票:1回答:1

我一直对学习裸金属操作系统感兴趣,并发现Eugene Obrezkov的这个奇妙的GitHub提供了一个在QEMU中工作的基本文本shell。我无法让它在VirtualBox中运行。

https://github.com/ghaiklor/ghaiklor-os-gcc

我想扩展它并添加一个简单的启动启动屏幕,运行在1024x768x24bpp。在现代计算机上这样做的标准方法是什么?

这个问题就像问了几个问题。 :(

我应该读一下VBE3吗?我有一份文件,我正在这里阅读:

https://pdos.csail.mit.edu/6.828/2011/readings/hardware/vbe3.pdf

我还看了一下SE,它说不使用VBE3,它涵盖了UEFI中的图形模式,它是否适用于我将在QEMU或VirtualBox中测试的裸机操作系统?

Assembly - How to set graphics mode in UEFI (No VGA, No BIOS, Nothing deprecated)

如果基于Eugene的初始源的答案是要么使用VBE3还是UEFI,那么我需要在真实,受保护还是长的模式中使用哪种模式?这是我在模式之间切换时发现的:

https://www.codeproject.com/Articles/45788/The-Real-Protected-Long-mode-assembly-tutorial-for

assembly x86 64bit vesa
1个回答
1
投票

在现代计算机上这样做的标准方法是什么?

Windows使用直接访问图形卡的驱动程序。但是,这假设您有不同的驱动程序用于不同的图形卡。没有特定显卡的特殊驱动程序,最大值为640x480x16。

更新的Linux版本可以使用特殊驱动程序或VESA BIOS。很长一段时间,VESA BIOS都是默认设置。

© www.soinside.com 2019 - 2024. All rights reserved.